diff --git a/.github/workflows/tagbot.py b/.github/workflows/tagbot.py new file mode 100644 index 00000000000..26472f8bcbd --- /dev/null +++ b/.github/workflows/tagbot.py @@ -0,0 +1,182 @@ +# NOTE: In order to write comment and edit labels, this script requires workflows with write permissions. +# It should not use any untrusted third party code, or any code checked into the repository itself +# as that could indirectly grant PRs the ability to edit labels and comments on PRs. + +import os +import git +import requests +import json +from pathlib import Path + + +def get_first_commit_date(repo, file_path): + commits = list(repo.iter_commits(paths=file_path)) + if commits: + return commits[-1].committed_date + else: + raise ValueError(f'{file_path} has no commit info, this should not happen') + + +def sort_by_added_date(repo, file_paths): + files_with_dates = [(get_first_commit_date(repo, file_path), file_path) for file_path in file_paths] + sorted_files = sorted(files_with_dates, reverse=True) + return [file for date, file in sorted_files] + + +def similar_easyconfigs(repo, new_file): + possible_neighbours = [x for x in new_file.parent.glob('*.eb') if x != new_file] + return sort_by_added_date(repo, possible_neighbours) + + +def pr_ecs(pr_diff): + new_ecs = [] + changed_ecs = [] + for item in pr_diff: + if item.a_path.endswith('.eb'): + if item.change_type == 'A': + new_ecs.append(Path(item.a_path)) + else: + changed_ecs.append(Path(item.a_path)) + return new_ecs, changed_ecs + + +GITHUB_API_URL = 'https://api.github.com' +event_path = os.getenv('GITHUB_EVENT_PATH') +token = os.getenv('GH_TOKEN') +repo = os.getenv('GITHUB_REPOSITORY') +base_branch_name = os.getenv('GITHUB_BASE_REF') + +with open(event_path) as f: + data = json.load(f) + +pr_number = data['pull_request']['number'] +# Can't rely on merge_commit_sha for pull_request_target as it might be outdated +# merge_commit_sha = data['pull_request']['merge_commit_sha'] + +print("PR number:", pr_number) +print("Base branch name:", base_branch_name) + +# Change into "pr" checkout directory to allow diffs and glob to work on the same content +os.chdir('pr') +gitrepo = git.Repo('.') + +target_commit = gitrepo.commit('origin/' + base_branch_name) +print("Target commit ref:", target_commit) +merge_commit = gitrepo.head.commit +print("Merge commit:", merge_commit) +pr_diff = target_commit.diff(merge_commit) + +new_ecs, changed_ecs = pr_ecs(pr_diff) +modified_workflow = any(item.a_path.startswith('.github/workflows/') for item in pr_diff) + + +print("Changed ECs:", ', '.join(str(p) for p in changed_ecs)) +print("Newly added ECs:", ', '.join(str(p) for p in new_ecs)) +print("Modified workflow:", modified_workflow) + +new_software = 0 +updated_software = 0 +to_diff = dict() +for new_file in new_ecs: + neighbours = similar_easyconfigs(gitrepo, new_file) + print(f"Found {len(neighbours)} neighbours for {new_file}") + if neighbours: + updated_software += 1 + to_diff[new_file] = neighbours + else: + new_software += 1 + +print(f"Generating comment for {len(to_diff)} updates softwares") +# Limit comment size for large PRs: +if len(to_diff) > 20: # Too much, either bad PR or some broad change. Not diffing. + max_diffs_per_software = 0 +elif len(to_diff) > 10: + max_diffs_per_software = 1 +elif len(to_diff) > 5: + max_diffs_per_software = 2 +else: + max_diffs_per_software = 3 + +comment = '' +if max_diffs_per_software > 0: + for new_file, neighbours in to_diff.items(): + compare_neighbours = neighbours[:max_diffs_per_software] + if compare_neighbours: + print(f"Diffs for {new_file}") + comment += f'#### Updated software `{new_file.name}`\n\n' + + for neighbour in compare_neighbours: + print(f"against {neighbour}") + comment += '
\n' + comment += f'Diff against {neighbour.name}\n\n' + comment += f'[{neighbour}](https://github.com/{repo}/blob/{base_branch_name}/{neighbour})\n\n' + comment += '```diff\n' + comment += gitrepo.git.diff(f'HEAD:{neighbour}', f'HEAD:{new_file}') + comment += '\n```\n
\n\n' + +print("Adjusting labels") +current_labels = [label['name'] for label in data['pull_request']['labels']] + +label_checks = [(changed_ecs, 'change'), + (new_software, 'new'), + (updated_software, 'update'), + (modified_workflow, 'workflow')] + +labels_add = [] +labels_del = [] +for condition, label in label_checks: + if condition and label not in current_labels: + labels_add.append(label) + elif not condition and label in current_labels: + labels_del.append(label) + +url = f"{GITHUB_API_URL}/repos/{repo}/issues/{pr_number}/labels" + +headers = { + "Accept": "application/vnd.github+json", + "Authorization": f"Bearer {token}", + "X-GitHub-Api-Version": "2022-11-28", +} + +if labels_add: + print(f"Setting labels: {labels_add} at {url}") + response = requests.post(url, headers=headers, json={"labels": labels_add}) + if response.status_code == 200: + print(f"Labels {labels_add} added successfully.") + else: + print(f"Failed to add labels: {response.status_code}, {response.text}") + +for label in labels_del: + print(f"Removing label: {label} at {url}") + response = requests.delete(f'{url}/{label}', headers=headers) + if response.status_code == 200: + print(f"Label {label} removed successfully.") + else: + print(f"Failed to delete label: {response.status_code}, {response.text}") + +# Write comment with diff +if updated_software: + # Search for comment by bot to potentially replace + url = f"{GITHUB_API_URL}/repos/{repo}/issues/{pr_number}/comments" + response = requests.get(url, headers=headers) + comment_id = None + for existing_comment in response.json(): + if existing_comment["user"]["login"] == "github-actions[bot]": # Bot username in GitHub Actions + comment_id = existing_comment["id"] + + if comment_id: + # Update existing comment + url = f"{GITHUB_API_URL}/repos/{repo}/issues/comments/{comment_id}" + response = requests.patch(url, headers=headers, json={"body": comment}) + if response.status_code == 200: + print("Comment updated successfully.") + else: + print(f"Failed to update comment: {response.status_code}, {response.text}") + else: + # Post a new comment + url = f"{GITHUB_API_URL}/repos/{repo}/issues/{pr_number}/comments" + response = requests.post(url, headers=headers, json={"body": comment}) + if response.status_code == 201: + print("Comment posted successfully.") + else: + print(f"Failed to post comment: {response.status_code}, {response.text}") diff --git a/.github/workflows/tagbot.yml b/.github/workflows/tagbot.yml new file mode 100644 index 00000000000..8c0fa06294b --- /dev/null +++ b/.github/workflows/tagbot.yml @@ -0,0 +1,54 @@ +name: Tagbot +on: [pull_request_target] + +concurrency: + group: "${{ github.workflow }}-${{ github.event.pull_request.number }}" + cancel-in-progress: true + +jobs: + tagbot: + # Note: can't rely on github.event.pull_request.merge_commit_sha because pull_request_target + # does not wait for github mergability check, and the value is outdated. + # Instead we merge manually in a temporary subdir "pr" + runs-on: ubuntu-24.04 + permissions: + pull-requests: write + steps: + - name: Checkout base branch for workflow scripts + uses: actions/checkout@v4 + + - name: Checkout PR for computing diff into "pr" subdirectory + uses: actions/checkout@v4 + with: + ref: "${{ github.event.pull_request.head.sha }}" + path: 'pr' + fetch-depth: 0 + + - name: Attempt test merge + id: merge + run: | + git config user.name "github-workflow" + git config user.email "github-workflow@github.com" + git merge --no-edit --no-ff origin/${{ github.event.pull_request.base.ref }} + continue-on-error: true + working-directory: pr + + - name: Abort if merge failed + if: steps.merge.outcome == 'failure' + run: | + echo "Merge conflict detected, failing job." + exit 1 + + - name: set up Python + uses: actions/setup-python@v5 + with: + python-version: 3.12 + + - name: Get packages + run: pip install gitpython requests + + - name: Tag and comment + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: python .github/workflows/tagbot.py + diff --git a/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023b.eb b/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023b.eb new file mode 100644 index 00000000000..3e980962ec8 --- /dev/null +++ b/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023b.eb @@ -0,0 +1,41 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'Tarball' + +name = 'ABRicate' +version = '1.0.0' + +homepage = 'https://github.com/tseemann/abricate' +description = "Mass screening of contigs for antimicrobial and virulence genes" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +# https://github.com/tseemann/abricate +github_account = 'tseemann' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.zip'] +checksums = ['e7e2af45e47b887c4dba754af87a24014dcb5552eb3fe2a3fd66bb5359a0daf9'] + +dependencies = [ + ('Perl', '5.38.0'), + ('any2fasta', '0.4.2'), + ('BioPerl', '1.7.8'), + ('BLAST+', '2.16.0'), +] + +postinstallcmds = ['%(installdir)s/bin/abricate --setupdb'] + +sanity_check_paths = { + 'files': ['bin/abricate', 'bin/abricate-get_db'], + 'dirs': ['db'], +} + +sanity_check_commands = [ + "abricate --help", + "abricate --list", +] + +modloadmsg = "abricate databases are located in $EBROOTABRICATE/db\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb new file mode 100644 index 00000000000..333a0374279 --- /dev/null +++ b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'ANTLR' +version = '2.7.7' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.antlr2.org/' +description = """ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) + is a language tool that provides a framework for constructing recognizers, + compilers, and translators from grammatical descriptions containing + Java, C#, C++, or Python actions.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.antlr2.org/download/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_includes.patch'] +checksums = [ + '853aeb021aef7586bda29e74a6b03006bcb565a755c86b66032d8ec31b67dbb9', # antlr-2.7.7.tar.gz + 'd167d3248a03301bc93efcb37d5df959aae6794968e42231af0b0dd26d6a2e66', # ANTLR-2.7.7_includes.patch +] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Java', '21.0.2', '', SYSTEM)] + +configopts = '--disable-examples --disable-csharp --disable-python' + +sanity_check_paths = { + 'files': ['bin/antlr', 'bin/antlr-config'], + 'dirs': ['include'], +} + +sanity_check_commands = ["antlr --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2023b.eb b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2023b.eb new file mode 100644 index 00000000000..5d7ef877395 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2023b.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'ASE' +version = '3.23.0' + +homepage = 'https://wiki.fysik.dtu.dk/ase' +description = """ASE is a python package providing an open source Atomic Simulation Environment + in the Python scripting language. + +From version 3.20.1 we also include the ase-ext package, it contains optional reimplementations +in C of functions in ASE. ASE uses it automatically when installed.""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('Flask', '3.0.0'), + ('matplotlib', '3.8.2'), + ('Tkinter', '%(pyver)s'), # Needed by GUI of ASE + ('spglib-python', '2.5.0'), # optional +] + +exts_list = [ + ('pytest-mock', '3.14.0', { + 'checksums': ['2719255a1efeceadbc056d6bf3df3d1c5015530fb40cf347c0f9afac88410bd0'], + }), + ('ase', version, { + 'checksums': ['91a2aa31d89bd90b0efdfe4a7e84264f32828b2abfc9f38e65e041ad76fec8ae'], + }), + ('ase-ext', '20.9.0', { + 'checksums': ['a348b0e42cf9fdd11f04b3df002b0bf150002c8df2698ff08d3c8fc7a1223aed'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ase'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +# make sure Tkinter is available, otherwise 'ase gui' will not work +sanity_check_commands = ["python -c 'import tkinter' "] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2024a.eb b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2024a.eb new file mode 100644 index 00000000000..701b0d33c31 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2024a.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'ASE' +version = '3.23.0' + +homepage = 'https://wiki.fysik.dtu.dk/ase' +description = """ASE is a python package providing an open source Atomic Simulation Environment + in the Python scripting language. + +From version 3.20.1 we also include the ase-ext package, it contains optional reimplementations +in C of functions in ASE. ASE uses it automatically when installed.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('Flask', '3.0.3'), + ('matplotlib', '3.9.2'), + ('Tkinter', '%(pyver)s'), # Needed by GUI of ASE + ('spglib-python', '2.5.0'), # optional +] + +exts_list = [ + ('pytest-mock', '3.14.0', { + 'checksums': ['2719255a1efeceadbc056d6bf3df3d1c5015530fb40cf347c0f9afac88410bd0'], + }), + ('ase', version, { + 'checksums': ['91a2aa31d89bd90b0efdfe4a7e84264f32828b2abfc9f38e65e041ad76fec8ae'], + }), + ('ase-ext', '20.9.0', { + 'checksums': ['a348b0e42cf9fdd11f04b3df002b0bf150002c8df2698ff08d3c8fc7a1223aed'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ase'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +# make sure Tkinter is available, otherwise 'ase gui' will not work +sanity_check_commands = ["python -c 'import tkinter' "] + +moduleclass = 'chem' 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/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..73033bb8215 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,119 @@ +# created by Denis Kristak (Inuits) +# update: Thomas Hoffmann, EMBL +easyblock = 'PythonBundle' + +name = 'AlphaPulldown' +version = '2.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/KosinskiLab/AlphaPulldown' +description = """AlphaPulldown is a Python package that streamlines protein-protein +interaction screens and high-throughput modelling of higher-order oligomers using AlphaFold-Multimer""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('OpenMM', '8.0.0', versionsuffix), + ('Kalign', '3.4.0'), + ('PyYAML', '6.0'), + ('jax', '0.4.25', versionsuffix), # also provides absl-py + ('Biopython', '1.83'), + ('h5py', '3.9.0'), + ('IPython', '8.14.0'), + ('matplotlib', '3.7.2'), + # ('TensorFlow', '2.15.1', versionsuffix), + ('TensorFlow', '2.13.0'), # to be consistent with AF2 ? + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), + ('dm-tree', '0.1.8'), + ('py3Dmol', '2.1.0'), + ('HMMER', '3.4'), + ('HH-suite', '3.3.0'), + ('dm-haiku', '0.0.12', versionsuffix), + ('Uni-Core', '0.0.3', versionsuffix), + ('JupyterLab', '4.0.5'), +] +local_commit = 'cc4b0af60518c078305bbe4c584691d1ed9ade31' + +local_tests = [ + 'custom_db', + 'remove_clashes_low_plddt', + 'modelcif', + 'features_with_templates', + 'post_prediction', + # require pyrosetta, analysis aptainer image, and AlphaFold2 data: + # 'pdb_analyser', + # 'get_good_inter_pae', +] +local_testinstall_PATH = """ PATH=$(echo $PYTHONPATH|awk -F ':' '{print $1}')/../../../bin:$PATH """ +exts_list = [ + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + ('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'], + }), + ('ihm', '1.3', { + 'checksums': ['09f69809fd81509cc26b60253c55b02ce79fc01fc8f4a068bca2953a7dfd33be'], + }), + ('modelcif', '1.0', { + 'checksums': ['e8375bc502a73dcfab0b7fbdd454d67d393bbb8969981eb52199d77192a3de56'], + }), + ('looseversion', '1.1.2', { + 'checksums': ['94d80bdbd0b6d57c11b886147ba1601f7d1531571621b81933b34537cbe469ad'], + }), + ('mmtf-python', '1.1.3', { + 'modulename': 'mmtf', + 'checksums': ['12a02fe1b7131f0a2b8ce45b46f1e0cdd28b9818fe4499554c26884987ea0c32'], + }), + ('biopandas', '0.5.1.dev0', { + 'checksums': ['6dc9de631babf8221c1ac60230133717039e08911f15e8ac48498c787022de12'], + }), + ('immutabledict', '4.1.0', { + 'checksums': ['93d100ccd2cd09a1fd3f136b9328c6e59529ba341de8bb499437f6819159fe8a'], + }), + (name, version, { + 'preinstallopts': "sed -i 's/[>=]=.*//g;s/tensorflow-cpu/tensorflow/g' setup.cfg && ", + 'runtest': '%s pytest -s %s ' % (local_testinstall_PATH, " ".join('test/test_%s.py' % x for x in local_tests)), + 'sources': [{ + 'filename': '%(name)s-%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/KosinskiLab', + 'repo_name': 'AlphaPulldown', + 'tag': version, 'recursive': True + } + }], + 'testinstall': True, + # This needs to be [None], at least until EB v5 is out + # 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4'], + 'checksums': [None], + }), +] + +fix_python_shebang_for = ['bin/*.py'] + +sanity_check_paths = { + 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py', + 'lib/python%(pyshortver)s/site-packages/alphafold/common/stereo_chemical_props.txt'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], +} + +sanity_check_commands = [ + "run_multimer_jobs.py --help | grep 'A script to perform structure prediction'", + "create_individual_features.py --helpfull|grep 'Additional allowance for hydrogen bonding'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/Anaconda3/Anaconda3-2024.06-1.eb b/easybuild/easyconfigs/a/Anaconda3/Anaconda3-2024.06-1.eb new file mode 100644 index 00000000000..a505f00e275 --- /dev/null +++ b/easybuild/easyconfigs/a/Anaconda3/Anaconda3-2024.06-1.eb @@ -0,0 +1,33 @@ +# author: Jillian Rowe +# config upgrade to v5.1.0 by Adam Huffman +# config upgrade to v5.0.1, v5.3.0, 2018.12, 2019.07, +# 2019.10, 2020.2, 2020.11, 2022.05, +# 2022.10, 2024.2-1 by J. Hein +# config upgrade to 2019.03 by Davide Vanzo +# config upgrade to 2023.09 by Sarah Walters + +# no support for power architecture in 2024.02-1 on https://repo.anaconda.com/archive/, as off 13 Feb 2024 +easyblock = 'EB_Anaconda' + +name = 'Anaconda3' +version = '2024.06-1' + +homepage = 'https://www.anaconda.com' +description = """Built to complement the rich, open source Python community, +the Anaconda platform provides an enterprise-ready data analytics platform +that empowers companies to adopt a modern open data science analytics architecture. +""" + +toolchain = SYSTEM + +source_urls = ['https://repo.anaconda.com/archive/'] +local_arch = {'arm64': 'aarch64'}.get(ARCH, ARCH) +sources = ['%%(name)s-%%(version)s-Linux-%s.sh' % local_arch] +checksums = [ + { + '%(name)s-%(version)s-Linux-x86_64.sh': '539bb43d9a52d758d0fdfa1b1b049920ec6f8c6d15ee9fe4a423355fe551a8f7', + '%(name)s-%(version)s-Linux-aarch64.sh': 'b4be0ad2052236882402902a31d32cd37635d3db194a42f977be0d68a8ff1a31', + } +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-12.3.0.eb b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..2ecc296bdf1 --- /dev/null +++ b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PerlModule' + +name = 'Archive-Zip' +version = '1.68' + +homepage = 'https://metacpan.org/pod/Archive::Zip' +description = "Provide an interface to ZIP archive files." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/P/PH/PHRED/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Perl', '5.36.1'), + ('UnZip', '6.0'), + ('Zip', '3.0'), +] + +options = {'modulename': 'Archive::Zip'} + +sanity_check_paths = { + 'files': ['bin/crc32'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/Archive/Zip'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..389e96b3d06 --- /dev/null +++ b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'Archive-Zip' +version = '1.68' + +homepage = 'https://metacpan.org/pod/Archive::Zip' +description = "Provide an interface to ZIP archive files." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/P/PH/PHRED/'] +sources = [SOURCE_TAR_GZ] +checksums = ['984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Perl', '5.38.0'), + ('UnZip', '6.0'), + ('Zip', '3.0'), +] + +options = {'modulename': 'Archive::Zip'} + +sanity_check_paths = { + 'files': ['bin/crc32'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/Archive/Zip'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9656cf84761 --- /dev/null +++ b/easybuild/easyconfigs/a/Archive-Zip/Archive-Zip-1.68-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'Archive-Zip' +version = '1.68' + +homepage = 'https://metacpan.org/pod/Archive::Zip' +description = "Provide an interface to ZIP archive files." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/P/PH/PHRED/'] +sources = [SOURCE_TAR_GZ] +checksums = ['984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Perl', '5.38.2'), + ('UnZip', '6.0'), + ('Zip', '3.0'), +] + +options = {'modulename': 'Archive::Zip'} + +sanity_check_paths = { + 'files': ['bin/crc32'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/Archive/Zip'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/Armadillo/Armadillo-14.0.3-foss-2024a.eb b/easybuild/easyconfigs/a/Armadillo/Armadillo-14.0.3-foss-2024a.eb new file mode 100644 index 00000000000..68036ea413e --- /dev/null +++ b/easybuild/easyconfigs/a/Armadillo/Armadillo-14.0.3-foss-2024a.eb @@ -0,0 +1,25 @@ +name = 'Armadillo' +version = '14.0.3' + +homepage = 'https://arma.sourceforge.net/' +description = """Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards + a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, + as well as a subset of trigonometric and statistics functions.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +source_urls = ['https://sourceforge.net/projects/arma/files'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ebd6215eeb01ee412fed078c8a9f7f87d4e1f6187ebcdc1bc09f46095a4f4003'] + +builddependencies = [ + ('CMake', '3.29.3'), +] +dependencies = [ + ('Boost', '1.85.0'), + ('HDF5', '1.14.5'), + ('arpack-ng', '3.9.1'), +] + + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb new file mode 100644 index 00000000000..24c042d16cf --- /dev/null +++ b/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb @@ -0,0 +1,91 @@ +easyblock = 'CMakeMake' + +name = 'Arrow' +version = '17.0.0' + +homepage = 'https://arrow.apache.org' +description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform + for in-memory data.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s'] +sources = ['apache-arrow-%(version)s.tar.gz'] +checksums = ['9d280d8042e7cf526f8c28d170d93bfab65e50f94569f6a790982a878d8d898d'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Cython', '3.0.10'), + ('Autotools', '20231222'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('pkgconf', '2.2.0'), +] + +# Arrow strongly prefers included jemalloc, so not including it as a dependency +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), # for numpy + ('Boost', '1.85.0'), + ('lz4', '1.9.4'), + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.6'), + ('snappy', '1.1.10'), + ('RapidJSON', '1.1.0-20240815'), + ('RE2', '2024-07-02'), + ('utf8proc', '2.9.0'), +] + +start_dir = 'cpp' + +# see https://arrow.apache.org/docs/developers/python.html +configopts = "-DARROW_DATASET=on -DARROW_PARQUET=ON -DARROW_ORC=ON " +configopts += "-DARROW_PYTHON=on -DPython3_ROOT_DIR=$EBROOTPYTHON " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_LZ4=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DARROW_WITH_ZSTD=ON -DZSTD_ROOT=$EBROOTZSTD " + +# install Python bindings +_pyarrow_preinstall_opts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +_pyarrow_preinstall_opts += "export Arrow_DIR=%(installdir)s && export ArrowDataset_DIR=%(installdir)s && " +_pyarrow_preinstall_opts += "export ArrowAcero_DIR=%(installdir)s && export Parquet_DIR=%(installdir)s && " +_pyarrow_preinstall_opts += "export XDG_CACHE_HOME=$TMPDIR && " +_pyarrow_preinstall_opts += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " +_pyarrow_preinstall_opts += "Python3_ROOT_DIR=$EBROOTPYTHON " +_pyarrow_preinstall_opts += "PYARROW_CMAKE_OPTIONS='-DZSTD_LIB=$EBROOTZSTD/lib/libzstd.%s ' " % SHLIB_EXT +_pyarrow_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " + +exts_defaultclass = 'PythonPackage' +exts_default_options = { +} +exts_list = [ + ('pyarrow', version, { + 'preinstallopts': ( + "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH" + " && export Arrow_DIR=%(installdir)s && export ArrowDataset_DIR=%(installdir)s" + " && export ArrowAcero_DIR=%(installdir)s && export Parquet_DIR=%(installdir)s" + " && export XDG_CACHE_HOME=$TMPDIR && sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml" + " && Python3_ROOT_DIR=$EBROOTPYTHON PYARROW_CMAKE_OPTIONS='-DZSTD_LIB=$EBROOTZSTD/lib/libzstd.so" + " ' PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " + ), + 'sources': ['apache-arrow-%(version)s.tar.gz'], + 'start_dir': '%(builddir)s/apache-arrow-%(version)s/python', + 'checksums': ['9d280d8042e7cf526f8c28d170d93bfab65e50f94569f6a790982a878d8d898d'], + }), +] + +sanity_check_paths = { + 'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT, + 'lib/python%%(pyshortver)s/site-packages/pyarrow/libarrow_python.%s' % SHLIB_EXT], + 'dirs': ['include/arrow', 'lib/cmake/Arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import pyarrow'", + "python -c 'import pyarrow.dataset'", + "python -c 'import pyarrow.parquet'", + "python -c 'import pyarrow.orc'", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/Austin/Austin-3.2.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/a/Austin/Austin-3.2.0-GCCcore-11.2.0.eb index 886a6997c48..a0dbe7757ba 100644 --- a/easybuild/easyconfigs/a/Austin/Austin-3.2.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/a/Austin/Austin-3.2.0-GCCcore-11.2.0.eb @@ -51,7 +51,7 @@ sanity_check_paths = { sanity_check_commands = [ "austin --help", "austin-tui --help", - "pip check", + "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check", ] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb b/easybuild/easyconfigs/a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..fe4b4d3a0de --- /dev/null +++ b/easybuild/easyconfigs/a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb @@ -0,0 +1,48 @@ +easyblock = 'ConfigureMake' + +name = 'Autoconf' +version = '2.72' + +homepage = 'https://www.gnu.org/software/autoconf/' + +description = """ + Autoconf is an extensible package of M4 macros that produce shell scripts + to automatically configure software source code packages. These scripts can + adapt the packages to many kinds of UNIX-like systems without manual user + intervention. Autoconf creates a configuration script for a package from a + template file that lists the operating system features that the package can + use, in the form of M4 macro calls. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('M4', '1.4.19'), + # non-standard Perl modules are required, + # see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822 + ('Perl', '5.40.0'), +] + +preconfigopts = "export PERL='/usr/bin/env perl' && " + +sanity_check_paths = { + 'files': ["bin/%s" % x + for x in ["autoconf", "autoheader", "autom4te", "autoreconf", + "autoscan", "autoupdate", "ifnames"]], + 'dirs': [], +} + +sanity_check_commands = [ + "autoconf --help", + "autom4te --help", +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/a/Automake/Automake-1.17-GCCcore-14.2.0.eb b/easybuild/easyconfigs/a/Automake/Automake-1.17-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..289fab45a9c --- /dev/null +++ b/easybuild/easyconfigs/a/Automake/Automake-1.17-GCCcore-14.2.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'Automake' +version = '1.17' + +homepage = 'https://www.gnu.org/software/automake/automake.html' + +description = "Automake: GNU Standards-compliant Makefile generator" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = ['Automake-%(version)s_perl_env_space.patch'] +checksums = [ + {'automake-1.17.tar.gz': '397767d4db3018dd4440825b60c64258b636eaf6bf99ac8b0897f06c89310acd'}, + {'Automake-1.17_perl_env_space.patch': 'a416eeb854df009f0cdec0484282a3cf7ff6b2637a59e1188932d946625196ab'}, +] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Autoconf', '2.72'), + # non-standard Perl modules are required, + # see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822 + ('Perl', '5.40.0'), +] + +preconfigopts = "export PERL='/usr/bin/env perl' && " + +sanity_check_paths = { + 'files': ['bin/aclocal', 'bin/automake'], + 'dirs': [] +} + +sanity_check_commands = [ + "aclocal --help", + "automake --help", +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/a/Automake/Automake-1.17_perl_env_space.patch b/easybuild/easyconfigs/a/Automake/Automake-1.17_perl_env_space.patch new file mode 100644 index 00000000000..45b96bee3e1 --- /dev/null +++ b/easybuild/easyconfigs/a/Automake/Automake-1.17_perl_env_space.patch @@ -0,0 +1,19 @@ +Removes the incorrect assumption that the shebang must not have spaces, +since we correctly use "/usr/bin/env perl" + +author: micketeer@gmail.com + +--- configure.orig 2024-12-08 14:41:01.243852603 +0000 ++++ configure 2024-12-08 14:41:51.837762787 +0000 +@@ -3513,11 +3513,6 @@ + '') + as_fn_error $? "perl not found" "$LINENO" 5 + ;; +- *' '* | *' '*) +- as_fn_error $? "The path to your Perl contains spaces or tabs. +-This would cause build failures later or unusable programs. +-Please use a path without spaces and try again." "$LINENO" 5 +- ;; + esac + + # Save details about the selected perl interpreter in config.log. diff --git a/easybuild/easyconfigs/a/Autotools/Autotools-20240712-GCCcore-14.2.0.eb b/easybuild/easyconfigs/a/Autotools/Autotools-20240712-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..cd7cab79455 --- /dev/null +++ b/easybuild/easyconfigs/a/Autotools/Autotools-20240712-GCCcore-14.2.0.eb @@ -0,0 +1,24 @@ +easyblock = 'Bundle' + +name = 'Autotools' +version = '20240712' # date of the most recent change + +homepage = 'https://autotools.io' + +description = """ + This bundle collect the standard GNU build tools: Autoconf, Automake + and libtool +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +dependencies = [ + ('Autoconf', '2.72'), # 20240712 + ('Automake', '1.17'), # 20211003 + ('libtool', '2.5.4'), # 20220317 +] + +# Pure bundle -- no need to specify 'binutils' used when building GCCcore +# toolchain as build dependency + +moduleclass = 'devel' 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..c94fdbd4900 --- /dev/null +++ b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +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')] + +exts_list = [ + ('absl-py', version, { + 'modulename': 'absl', + 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/aiohttp/aiohttp-3.10.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/aiohttp/aiohttp-3.10.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a7377c37ee6 --- /dev/null +++ b/easybuild/easyconfigs/a/aiohttp/aiohttp-3.10.10-GCCcore-13.3.0.eb @@ -0,0 +1,68 @@ +easyblock = 'PythonBundle' + +name = 'aiohttp' +version = '3.10.10' + +homepage = 'https://github.com/aio-libs/aiohttp' +description = "Asynchronous HTTP client/server framework for asyncio and Python." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +# aioredis and aiosignal do not depend on aiohttp, but are commonly used together and share dependencies +exts_list = [ + ('botocore', '1.35.36', { + 'checksums': ['354ec1b766f0029b5d6ff0c45d1a0f9e5007b7d2f3ec89bcdd755b208c5bc797'], + }), + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('multidict', '6.1.0', { + 'checksums': ['22ae2ebf9b0c69d206c003e2f6a914ea33f0a932d4aa16f236afc049d9958f4a'], + }), + ('expandvars', '0.12.0', { + 'checksums': ['7d1adfa55728cf4b5d812ece3d087703faea953e0c0a1a78415de9df5024d844'], + }), + ('propcache', '0.2.0', { + 'checksums': ['df81779732feb9d01e5d513fad0122efb3d53bbc75f61b2a4f29a020bc985e70'], + }), + ('yarl', '1.15.4', { + 'checksums': ['a0c5e271058d148d730219ca4f33c5d841c6bd46e05b0da60fea7b516906ccd3'], + }), + ('frozenlist', '1.4.1', { + 'checksums': ['c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b'], + }), + ('async-timeout', '4.0.3', { + 'checksums': ['4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f'], + }), + ('aiosignal', '1.3.1', { + 'checksums': ['54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc'], + }), + ('aiohappyeyeballs', '2.4.3', { + 'checksums': ['75cf88a15106a5002a8eb1dab212525c00d1f4c0fa96e551c9fbe6f09a621586'], + }), + (name, version, { + 'checksums': ['0631dd7c9f0822cc61c88586ca76d5b5ada26538097d0f1df510b082bad3411a'], + }), + ('aioitertools', '0.12.0', { + 'checksums': ['c2a9055b4fbb7705f561b9d86053e8af5d10cc845d22c32008c43490b2d8dd6b'], + }), + ('wrapt', '1.16.0', { + 'checksums': ['5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d'], + }), + ('aiobotocore', '2.15.2', { + 'checksums': ['9ac1cfcaccccc80602968174aa032bf978abe36bd4e55e6781d6500909af1375'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb new file mode 100644 index 00000000000..c03367afd75 --- /dev/null +++ b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonBundle' + +name = 'anndata' +version = '0.11.1' + +homepage = 'https://github.com/scverse/anndata' +description = """anndata is a Python package for handling annotated data matrices in memory and on disk, + positioned between pandas and xarray""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('h5py', '3.11.0'), +] + +exts_list = [ + ('array_api_compat', '1.9.1', { + 'checksums': ['17bab828c93c79a5bb8b867145b71fcb889686607c5672b060aef437e0359ea8'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + (name, version, { + 'checksums': ['36bff9a85276fc5f1b9fd01f15aff9aa49408129985f42e0fca4e2c5b7fa909f'], + }), +] + +sanity_check_paths = { + 'files': ['bin/natsort'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["natsort --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/any2fasta/any2fasta-0.4.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/any2fasta/any2fasta-0.4.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..91034a25be8 --- /dev/null +++ b/easybuild/easyconfigs/a/any2fasta/any2fasta-0.4.2-GCCcore-13.2.0.eb @@ -0,0 +1,35 @@ +# Author: Pavel Grochal (INUITS) +# Updated by: Denis Kristak (INUITS) +# License: GPLv2 + +easyblock = 'Tarball' + +name = 'any2fasta' +version = '0.4.2' + +homepage = 'https://github.com/tseemann/any2fasta' +description = "Convert various sequence formats to FASTA" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +# https://github.com/tseemann/any2fasta +github_account = 'tseemann' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.zip'] +checksums = ['3faa738ab409c7073afe3769e9d32dd5b28a2c12e72c2e4ac6f4e9946ee9a22f'] + +dependencies = [('Perl', '5.38.0')] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['any2fasta'], + 'dirs': [], +} + +sanity_check_commands = [ + 'any2fasta -h', + 'any2fasta -q %(builddir)s/%(name)s-%(version)s/test.fq', +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.1-foss-2024a.eb b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.1-foss-2024a.eb new file mode 100644 index 00000000000..29d5a002190 --- /dev/null +++ b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.1-foss-2024a.eb @@ -0,0 +1,36 @@ +# Author: Robert Mijakovic + +easyblock = 'ConfigureMake' + +name = 'arpack-ng' +version = '3.9.1' + +homepage = 'https://github.com/opencollab/arpack-ng' +description = "ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems." + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['f6641deb07fa69165b7815de9008af3ea47eb39b2bb97521fbf74c97aba6e844'] + +builddependencies = [ + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('Eigen', '3.4.0'), +] + +preconfigopts = "sh bootstrap && " +configopts = '--enable-mpi --with-pic --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' + +github_account = 'opencollab' + +sanity_check_paths = { + 'files': ['lib64/libarpack.la', 'lib64/libarpack.so', 'lib64/libparpack.la', 'lib64/libparpack.so'], + 'dirs': [], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/a/assimp/assimp-5.4.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/assimp/assimp-5.4.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..3f0dfef4b64 --- /dev/null +++ b/easybuild/easyconfigs/a/assimp/assimp-5.4.3-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +# Authors:: Richard Lawrence - TAMU HPRC - https://hprc.tamu.edu + +easyblock = 'CMakeMake' + +name = 'assimp' +version = '5.4.3' + +homepage = 'https://github.com/assimp/assimp' +description = """ + Open Asset Import Library (assimp) is a library to import and export various + 3d-model-formats including scene-post-processing to generate missing render data. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(name)s/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['66dfbaee288f2bc43172440a55d0235dfc7bf885dda6435c038e8000e79582cb'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), + ('zlib', '1.3.1'), +] + +# workaround bug with GCC13 https://github.com/assimp/assimp/issues/5315 +configopts = "-DASSIMP_WARNINGS_AS_ERRORS=OFF " + + +sanity_check_paths = { + 'files': ['include/%(name)s/types.h', 'lib/libassimp.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..6efc7996fd0 --- /dev/null +++ b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MesonNinja' + +name = 'at-spi2-atk' +version = '2.38.0' + +homepage = 'https://wiki.gnome.org/Accessibility' +description = "AT-SPI 2 toolkit bridge" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['cfa008a5af822b36ae6287f18182c40c91dd699c55faa38605881ed175ca464f'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('DBus', '1.15.8'), + ('at-spi2-core', '2.54.0'), + ('libxml2', '2.12.7'), + ('ATK', '2.38.0'), +] + +configopts = "--libdir lib " + +sanity_check_paths = { + 'files': ['lib/libatk-bridge-2.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.54.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.54.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b1a1a4c863f --- /dev/null +++ b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.54.0-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'MesonNinja' + +name = 'at-spi2-core' +version = '2.54.0' + +homepage = 'https://wiki.gnome.org/Accessibility' +description = """ + Assistive Technology Service Provider Interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['d7eee7e75beddcc272cedc2b60535600f3aae6e481589ebc667afc437c0a6079'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('GObject-Introspection', '1.80.1'), + ('gettext', '0.22.5'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('DBus', '1.15.8'), + ('X11', '20240607'), +] + +# Hard disable Dbus broker detection and (potential) use of systemd +configopts = "--libdir lib -Duse_systemd=false -Ddefault_bus=dbus-daemon" + +sanity_check_paths = { + 'files': ['lib/libatspi.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/b/BCFtools/BCFtools-1.21-GCC-13.3.0.eb b/easybuild/easyconfigs/b/BCFtools/BCFtools-1.21-GCC-13.3.0.eb new file mode 100644 index 00000000000..ad508758ba5 --- /dev/null +++ b/easybuild/easyconfigs/b/BCFtools/BCFtools-1.21-GCC-13.3.0.eb @@ -0,0 +1,40 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Author: Jonas Demeulemeester +# The Francis Crick Insitute, London, UK +# Updated to 1.21 jpecar / EMBL + +easyblock = 'ConfigureMake' + +name = 'BCFtools' +version = '1.21' + +homepage = 'https://www.htslib.org/' +description = """Samtools is a suite of programs for interacting with high-throughput sequencing data. + BCFtools - Reading/writing BCF2/VCF/gVCF files and calling/filtering/summarising SNP and short indel sequence + variants""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/samtools/%(namelower)s/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['528a4cc1d3555368db75a700b22a3c95da893fd1827f6d304716dfd45ea4e282'] + +dependencies = [ + ('zlib', '1.3.1'), + ('HTSlib', '1.21'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.5'), + ('GSL', '2.8'), +] + +configopts = "--with-htslib=$EBROOTHTSLIB --enable-libgsl" + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'bin/plot-vcfstats', 'bin/vcfutils.pl'], + 'dirs': ['libexec/%(namelower)s'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BEDOPS/BEDOPS-2.4.41-foss-2023b.eb b/easybuild/easyconfigs/b/BEDOPS/BEDOPS-2.4.41-foss-2023b.eb new file mode 100644 index 00000000000..d6a87743c86 --- /dev/null +++ b/easybuild/easyconfigs/b/BEDOPS/BEDOPS-2.4.41-foss-2023b.eb @@ -0,0 +1,41 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# updated: Denis Kristak (INUITS) +# Update: Petr Král (INUITS) + +easyblock = 'MakeCp' + +name = 'BEDOPS' +version = '2.4.41' + +homepage = 'http://%(namelower)s.readthedocs.io/en/latest/index.html' +description = """BEDOPS is an open-source command-line toolkit that performs highly efficient and + scalable Boolean and other set operations, statistical calculations, archiving, conversion and + other management of genomic data of arbitrary scale. Tasks can be easily split by chromosome for + distributing whole-genome analyses across a computational cluster.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['3b868c820d59dd38372417efc31e9be3fbdca8cf0a6b39f13fb2b822607d6194'] + +# else build of jansson library fails with: 'configure: error: C compiler cannot create executables' +prebuildopts = 'unset LIBS && ' +# builds all variants and copies executables to bin directory +buildopts = ' all && make install' +# actually used variant is linked to via symlinks +keepsymlinks = True + +files_to_copy = ['bin'] + +sanity_check_paths = { + 'files': [ + 'bin/%s' % x for x in ['bam2bed', '%(namelower)s', 'convert2bed', 'unstarch'] + ], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb new file mode 100644 index 00000000000..ee6ee7885ea --- /dev/null +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb @@ -0,0 +1,46 @@ +# Author: Maxime Schmitt, University of Luxembourg +# Author: Adam Huffman, The Francis Crick Institute +# +# Based on the work of: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics (SIB) +# Biozentrum - University of Basel + +easyblock = 'MakeCp' + +name = 'BEDTools' +version = '2.31.1' + +homepage = 'https://bedtools.readthedocs.io/' +description = """BEDTools: a powerful toolset for genome arithmetic. +The BEDTools utilities allow one to address common genomics tasks such as finding feature overlaps and +computing coverage. +The utilities are largely based on four widely-used file formats: BED, GFF/GTF, VCF, and SAM/BAM.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/arq5x/bedtools2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['79a1ba318d309f4e74bfa74258b73ef578dccb1045e270998d7fe9da9f43a50e'] + +builddependencies = [ + ('Python', '3.11.5'), +] +dependencies = [ + ('XZ', '5.4.4'), + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('BamTools', '2.5.2'), +] + +buildopts = 'CXX="$CXX"' + +files_to_copy = ['bin', 'docs', 'data', 'genomes', 'scripts', 'test'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bedtools', 'pairToBed', 'mergeBed', 'bedToBam', 'fastaFromBed']], + 'dirs': files_to_copy, +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.3.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..8503277b570 --- /dev/null +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.3.0.eb @@ -0,0 +1,53 @@ +# Author: Maxime Schmitt, University of Luxembourg +# Author: Adam Huffman, The Francis Crick Institute +# +# Based on the work of: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics (SIB) +# Biozentrum - University of Basel + +easyblock = 'MakeCp' + +name = 'BEDTools' +version = '2.31.1' + +homepage = 'https://bedtools.readthedocs.io/' +description = """BEDTools: a powerful toolset for genome arithmetic. +The BEDTools utilities allow one to address common genomics tasks such as finding feature overlaps and +computing coverage. +The utilities are largely based on four widely-used file formats: BED, GFF/GTF, VCF, and SAM/BAM.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/arq5x/bedtools2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['79a1ba318d309f4e74bfa74258b73ef578dccb1045e270998d7fe9da9f43a50e'] + +builddependencies = [ + ('Python', '3.12.3'), +] +dependencies = [ + ('XZ', '5.4.5'), + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('BamTools', '2.5.2'), +] + +buildopts = 'CXX="$CXX"' + +files_to_copy = [ + 'bin', + 'docs', + 'data', + 'genomes', + 'scripts', + 'test', +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bedtools', 'pairToBed', 'mergeBed', 'bedToBam', 'fastaFromBed']], + 'dirs': files_to_copy, +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'bio' 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..671efd80e77 --- /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/BLAST+/BLAST+-2.16.0-gompi-2023b.eb b/easybuild/easyconfigs/b/BLAST+/BLAST+-2.16.0-gompi-2023b.eb new file mode 100644 index 00000000000..d43cb118efd --- /dev/null +++ b/easybuild/easyconfigs/b/BLAST+/BLAST+-2.16.0-gompi-2023b.eb @@ -0,0 +1,58 @@ +# # +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos , Kenneth Hoste (UGent) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of +# the policy: https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# # + +easyblock = 'ConfigureMake' + +name = 'BLAST+' +version = '2.16.0' + +homepage = 'https://blast.ncbi.nlm.nih.gov/' +description = """Basic Local Alignment Search Tool, or BLAST, is an algorithm + for comparing primary biological sequence information, such as the amino-acid + sequences of different proteins or the nucleotides of DNA sequences.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/%(namelower)s/%(version)s/'] +sources = ['ncbi-blast-%(version)s+-src.tar.gz'] +checksums = ['17c93cf009721023e5aecf5753f9c6a255d157561638b91b3ad7276fd6950c2b'] + +builddependencies = [('cpio', '2.15')] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.5'), + ('PCRE', '8.45'), + ('Boost', '1.83.0'), + ('GMP', '6.3.0'), + ('libpng', '1.6.40'), + ('libjpeg-turbo', '3.0.1'), + ('LMDB', '0.9.31'), + ('SQLite', '3.43.1'), +] + +# remove line that prepends system paths to $PATH from configure script +preconfigopts = r'sed -i "s|^PATH=\(.*\)$|#PATH=\1 |" %(start_dir)s/src/build-system/configure && ' + +configopts = "--with-z=$EBROOTZLIB --with-bz2=$EBROOTBZIP2 " +configopts += "--with-pcre=$EBROOTPCRE --with-boost=$EBROOTBOOST " +configopts += "--with-gmp=$EBROOTGMP --with-png=$EBROOTLIBPNG " +configopts += "--with-jpeg=$EBROOTLIBJPEGMINTURBO --with-lmdb=$EBROOTLMDB" + +sanity_check_paths = { + 'files': ['bin/blastn', 'bin/blastp', 'bin/blastx'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BRAKER/BRAKER-3.0.8-foss-2023a.eb b/easybuild/easyconfigs/b/BRAKER/BRAKER-3.0.8-foss-2023a.eb new file mode 100644 index 00000000000..7a87a70ddb1 --- /dev/null +++ b/easybuild/easyconfigs/b/BRAKER/BRAKER-3.0.8-foss-2023a.eb @@ -0,0 +1,55 @@ +# updated: Denis Kristak (INUITS) +# Update: Petr Král (INUITS) +easyblock = 'Tarball' + +name = 'BRAKER' +version = '3.0.8' + +homepage = 'https://github.com/Gaius-Augustus/BRAKER' +description = """BRAKER is a pipeline for fully automated prediction of protein coding genes with GeneMark-ES/ET + and AUGUSTUS in novel eukaryotic genomes.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/Gaius-Augustus/BRAKER/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f2623290c3007a3e42719a0bb2713bec7226db222bfef742895a9d5d0b4ee526'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Python', '3.11.3'), + ('AUGUSTUS', '3.5.0'), + ('GeneMark-ET', '4.72'), + ('BamTools', '2.5.2'), + ('SAMtools', '1.18'), + ('GenomeThreader', '1.7.3', '-Linux_x86_64-64bit', SYSTEM), + ('spaln', '3.0.6b'), + ('Exonerate', '2.4.0'), + ('BLAST+', '2.14.1'), + ('Biopython', '1.83'), + ('DIAMOND', '2.1.8'), + ('CDBtools', '0.99'), +] + +fix_perl_shebang_for = ['scripts/*.pl'] +fix_python_shebang_for = ['scripts/*.py'] + +sanity_check_paths = { + 'files': [ + 'scripts/braker.pl', + 'scripts/compare_intervals_exact.pl', + 'scripts/compute_accuracies.sh', + 'scripts/compute_accuracies.sh', + 'scripts/filterGenemark.pl', + 'scripts/findGenesInIntrons.pl', + 'scripts/gatech_pmp2hints.pl', + 'scripts/sortGeneMark.py', + ], + 'dirs': ['docs', 'example'], +} + +sanity_check_commands = ["braker.pl --help"] + +modextrapaths = {'PATH': 'scripts'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BWA/BWA-0.7.18-GCCcore-13.2.0.eb b/easybuild/easyconfigs/b/BWA/BWA-0.7.18-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d65b73e57e9 --- /dev/null +++ b/easybuild/easyconfigs/b/BWA/BWA-0.7.18-GCCcore-13.2.0.eb @@ -0,0 +1,52 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Cyprus Institute / CaSToRC, Uni.Lu/LCSB, NTUA +# Authors:: George Tsouloupas , Fotis Georgatos +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# +# Version >= 0.7.15 +# Author: Adam Huffman +# The Francis Crick Institute +# +# Note that upstream development is mainly at: https://github.com/lh3/bwa +# +# 0.7.18 +# Erica Bianco (HPCNow!) +## + +name = 'BWA' +version = '0.7.18' + +homepage = 'http://bio-bwa.sourceforge.net/' +description = """ + Burrows-Wheeler Aligner (BWA) is an efficient program that aligns relatively + short nucleotide sequences against a long reference sequence such as the human + genome. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/lh3/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['194788087f7b9a77c0114aa481b2ef21439f6abab72488c83917302e8d0e7870'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('zlib', '1.2.13'), + ('Perl', '5.38.0'), +] + +# Allow use of x86 intrinsics on PPC +prebuildopts = 'export CFLAGS="$CFLAGS -fcommon -DNO_WARN_X86_INTRINSICS" && ' +prebuildopts += "sed -i 's|^CC=|#CC=|g' Makefile && " +prebuildopts += "sed -i 's|^CFLAGS=|#CFLAGS=|g' Makefile && " +prebuildopts += "sed -i 's|^LIBS=|LIBS= $(LDFLAGS) |g' Makefile && " + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.3.0.eb b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.3.0.eb new file mode 100644 index 00000000000..3bf5f58b9df --- /dev/null +++ b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.3.0.eb @@ -0,0 +1,30 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +easyblock = 'CMakeMake' + +name = 'BamTools' +version = '2.5.2' + +homepage = 'https://github.com/pezmaster31/bamtools' +description = "BamTools provides both a programmer's API and an end-user's toolkit for handling BAM files." + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +# https://github.com/pezmaster31/bamtools +github_account = 'pezmaster31' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['4d8b84bd07b673d0ed41031348f10ca98dd6fa6a4460f9b9668d6f1d4084dfc8'] + +builddependencies = [ + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['bin/bamtools', 'include/bamtools/shared/bamtools_global.h', 'lib/libbamtools.a'], + 'dirs': ['include/bamtools/api', 'lib/pkgconfig'], +} + +sanity_check_commands = ["bamtools --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-CUDA-12.1.1.eb b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..516b87a169f --- /dev/null +++ b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,88 @@ +easyblock = 'Tarball' + +name = 'BindCraft' +version = '1.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +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'] + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Seaborn', '0.13.2'), + ('tqdm', '4.66.1'), + ('OpenMM', '8.0.0', versionsuffix), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('PyRosetta', '4.release-387'), + ('jax', '0.4.25', versionsuffix), + ('dm-haiku', '0.0.12', versionsuffix), + ('dm-tree', '0.1.8'), + ('ml-collections', '0.1.1'), + ('Optax', '0.2.2', versionsuffix), + ('py3Dmol', '2.1.0'), + ('JupyterLab', '4.0.5'), + ('Flax', '0.8.4', versionsuffix), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], +} +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': ''} + +sanity_check_paths = { + 'files': ['bindcraft.py'], + 'dirs': [], +} + +sanity_check_commands = ["bindcraft.py --help"] + +moduleclass = 'bio' 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..5f052a99aeb --- /dev/null +++ b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a.eb @@ -0,0 +1,86 @@ +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'] + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +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'), + ('Flax', '0.8.4'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], +} +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': ''} + +sanity_check_paths = { + 'files': ['bindcraft.py'], + 'dirs': [], +} + +sanity_check_commands = ["bindcraft.py --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-12.3.0.eb b/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-12.3.0.eb new file mode 100644 index 00000000000..1714b928bbc --- /dev/null +++ b/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PerlModule' + +name = 'Bio-DB-HTS' +version = '3.01' + +homepage = 'https://metacpan.org/release/Bio-DB-HTS' +description = "Read files using HTSlib including BAM/CRAM, Tabix and BCF database files" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/A/AV/AVULLO/'] +sources = ['Bio-DB-HTS-%(version)s.tar.gz'] +checksums = ['12a6bc1f579513cac8b9167cce4e363655cc8eba26b7d9fe1170dfe95e044f42'] + +builddependencies = [('pkgconf', '1.9.5')] + +dependencies = [ + ('Perl', '5.36.1'), + ('BioPerl', '1.7.8'), + ('HTSlib', '1.18'), +] + +preconfigopts = "env HTSLIB_DIR=$EBROOTHTSLIB" + +options = {'modulename': 'Bio::DB::HTS'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s', 'man/man3'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-13.3.0.eb b/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-13.3.0.eb new file mode 100644 index 00000000000..490e86bfb7a --- /dev/null +++ b/easybuild/easyconfigs/b/Bio-DB-HTS/Bio-DB-HTS-3.01-GCC-13.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PerlModule' + +name = 'Bio-DB-HTS' +version = '3.01' + +homepage = 'https://metacpan.org/release/Bio-DB-HTS' +description = "Read files using HTSlib including BAM/CRAM, Tabix and BCF database files" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/A/AV/AVULLO/'] +sources = ['Bio-DB-HTS-%(version)s.tar.gz'] +checksums = ['12a6bc1f579513cac8b9167cce4e363655cc8eba26b7d9fe1170dfe95e044f42'] + +builddependencies = [('pkgconf', '2.2.0')] + +dependencies = [ + ('Perl', '5.38.2'), + ('BioPerl', '1.7.8'), + ('HTSlib', '1.21'), +] + +preconfigopts = "env HTSLIB_DIR=$EBROOTHTSLIB" + +options = {'modulename': 'Bio::DB::HTS'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s', 'man/man3'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-12.3.0.eb b/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-12.3.0.eb new file mode 100644 index 00000000000..8c8af50568f --- /dev/null +++ b/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-12.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PerlModule' + +name = 'Bio-SearchIO-hmmer' +version = '1.7.3' + +homepage = 'https://metacpan.org/pod/Bio::SearchIO::hmmer3' +description = """Code to parse output from hmmsearch, hmmscan, phmmer and nhmmer, compatible +with both version 2 and version 3 of the HMMER package from http://hmmer.org.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/'] +sources = [SOURCE_TAR_GZ] +checksums = ['686152f8ce7c611d27ee35ac002ecc309f6270e289a482993796a23bb5388246'] + +dependencies = [ + ('Perl', '5.36.1'), + ('BioPerl', '1.7.8'), +] + +options = {'modulename': 'Bio::SearchIO::hmmer3'} + +sanity_check_paths = { + 'files': ['bin/bp_%s.pl' % x for x in ['hmmer_to_table', 'parse_hmmsearch']], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-13.2.0.eb b/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-13.2.0.eb new file mode 100644 index 00000000000..b26850e9d30 --- /dev/null +++ b/easybuild/easyconfigs/b/Bio-SearchIO-hmmer/Bio-SearchIO-hmmer-1.7.3-GCC-13.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PerlModule' + +name = 'Bio-SearchIO-hmmer' +version = '1.7.3' + +homepage = 'https://metacpan.org/pod/Bio::SearchIO::hmmer3' +description = """Code to parse output from hmmsearch, hmmscan, phmmer and nhmmer, compatible +with both version 2 and version 3 of the HMMER package from http://hmmer.org.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/'] +sources = [SOURCE_TAR_GZ] +checksums = ['686152f8ce7c611d27ee35ac002ecc309f6270e289a482993796a23bb5388246'] + +dependencies = [ + ('Perl', '5.38.0'), + ('BioPerl', '1.7.8'), +] + +options = {'modulename': 'Bio::SearchIO::hmmer3'} + +sanity_check_paths = { + 'files': ['bin/bp_%s.pl' % x for x in ['hmmer_to_table', 'parse_hmmsearch']], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BioPerl/BioPerl-1.7.8-GCCcore-13.2.0.eb b/easybuild/easyconfigs/b/BioPerl/BioPerl-1.7.8-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d6c4944be67 --- /dev/null +++ b/easybuild/easyconfigs/b/BioPerl/BioPerl-1.7.8-GCCcore-13.2.0.eb @@ -0,0 +1,58 @@ +# easybuild easyconfig +# +# John Dey jfdey@fredhutch.org +# +# Fred Hutchinson Cancer Research Center +# Thomas Eylenbosch - Gluo NV + +easyblock = 'Bundle' + +name = 'BioPerl' +version = '1.7.8' + +homepage = 'https://bioperl.org/' +description = """Bioperl is the product of a community effort to produce Perl code which is useful in biology. + Examples include Sequence objects, Alignment objects and database searching objects.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Perl', '5.38.0'), + ('Perl-bundle-CPAN', '5.38.0'), + ('XML-LibXML', '2.0210'), + ('DB_File', '1.859'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perldoc -lm %(ext_name)s ", "") + +exts_list = [ + ('XML::Writer', '0.900', { + 'source_tmpl': 'XML-Writer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JO/JOSEPHW'], + 'checksums': ['73c8f5bd3ecf2b350f4adae6d6676d52e08ecc2d7df4a9f089fa68360d400d1f'], + }), + (name, version, { + 'source_tmpl': '%(name)s-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/'], + 'checksums': ['c490a3be7715ea6e4305efd9710e5edab82dabc55fd786b6505b550a30d71738'], + }), + ('Bio::Procedural', '1.7.4', { + 'source_tmpl': 'Bio-Procedural-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/'], + 'checksums': ['d2bd9cfbb091eee2d80ed6cf812ac3813b1c8a1aaca20671037f5f225d31d1da'], + }), +] + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', +} + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin', 'lib/perl5/site_perl/%(perlver)s/Bio'], +} + +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/Boost/Boost-1.85.0-GCC-13.3.0.eb b/easybuild/easyconfigs/b/Boost/Boost-1.85.0-GCC-13.3.0.eb index 10518dc36a3..d1a8434d8e4 100644 --- a/easybuild/easyconfigs/b/Boost/Boost-1.85.0-GCC-13.3.0.eb +++ b/easybuild/easyconfigs/b/Boost/Boost-1.85.0-GCC-13.3.0.eb @@ -12,7 +12,11 @@ toolchainopts = {'pic': True} source_urls = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/'] sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] -checksums = ['be0d91732d5b0cc6fbb275c7939974457e79b54d6f07ce2e3dfdd68bef883b0b'] +patches = ['Boost-1.85.0_fix-ppc-charconv.patch'] +checksums = [ + 'be0d91732d5b0cc6fbb275c7939974457e79b54d6f07ce2e3dfdd68bef883b0b', + {'Boost-1.85.0_fix-ppc-charconv.patch': 'bb392cc087fe4951e2c427731020b541c3258ec75f113524303dfb44624f98bc'}, +] dependencies = [ ('bzip2', '1.0.8'), diff --git a/easybuild/easyconfigs/b/Boost/Boost-1.85.0_fix-ppc-charconv.patch b/easybuild/easyconfigs/b/Boost/Boost-1.85.0_fix-ppc-charconv.patch new file mode 100644 index 00000000000..d82089cf5cc --- /dev/null +++ b/easybuild/easyconfigs/b/Boost/Boost-1.85.0_fix-ppc-charconv.patch @@ -0,0 +1,1160 @@ +Avoid compile errors on ppc64le like +> libs/charconv/build/../src/from_chars.cpp: In function 'boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char*, const char*, __ieee128&, chars_format)': +> libs/charconv/build/../src/from_chars.cpp:120:48: error: 'compute_float128' is not a member of 'boost::charconv::detail'; did you mean 'compute_float32'? +> 120 | auto return_val = boost::charconv::detail::compute_float128(exponent, significand, sign, success); +> | ^~~~~~~~~~~~~~~~ +> | compute_float32 +> libs/charconv/build/../src/from_chars.cpp: In function 'boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char*, const char*, long double&, chars_format)': +> libs/charconv/build/../src/from_chars.cpp:258:48: error: 'compute_float80' is not a member of 'boost::charconv::detail'; did you mean 'compute_float64'? +> 258 | auto return_val = boost::charconv::detail::compute_float80(exponent, significand, sign, success); +> | ^~~~~~~~~~~~~~~ +> | compute_float64 + +Combined https://github.com/boostorg/charconv/pull/177, https://github.com/boostorg/charconv/pull/183, https://github.com/boostorg/charconv/pull/222 +Author: Matt Borland + +Patch-file Author: Alexander Grund (TU Dresden) + +diff --git a/libs/charconv/CMakeLists.txt b/libs/charconv/CMakeLists.txt +index 8120419..b5f468e 100644 +--- a/libs/charconv/CMakeLists.txt ++++ b/libs/charconv/CMakeLists.txt +@@ -22,24 +22,20 @@ target_include_directories(boost_charconv PUBLIC include) + include(CheckCXXSourceCompiles) + check_cxx_source_compiles(config/has_float128.cpp QUADMATH_FOUND) + ++target_link_libraries(boost_charconv ++ PUBLIC ++ Boost::config ++ Boost::assert ++ Boost::core ++) ++ + if(NOT QUADMATH_FOUND) + message(STATUS "Boost.Charconv: quadmath support OFF") + target_compile_definitions(boost_charconv PUBLIC BOOST_CHARCONV_NO_QUADMATH) +- target_link_libraries(boost_charconv +- PUBLIC +- Boost::config +- Boost::assert +- Boost::core +- ) + else() + message(STATUS "Boost.Charconv: quadmath support ON") +- target_link_libraries(boost_charconv +- PUBLIC +- Boost::config +- Boost::assert +- Boost::core +- quadmath +- ) ++ target_compile_definitions(boost_charconv PUBLIC BOOST_CHARCONV_HAS_QUADMATH) ++ target_link_libraries(boost_charconv PUBLIC quadmath) + endif() + + target_compile_features(boost_charconv PUBLIC cxx_std_11) +diff --git a/libs/charconv/build/Jamfile b/libs/charconv/build/Jamfile +index 09802d5..695f1b2 100644 +--- a/libs/charconv/build/Jamfile ++++ b/libs/charconv/build/Jamfile +@@ -21,7 +21,7 @@ lib boost_charconv + BOOST_CHARCONV_SOURCE=1 + + [ requires cxx11_variadic_templates cxx11_decltype ] +- [ check-target-builds ../config//has_float128 "GCC libquadmath and __float128 support" : "quadmath" ] ++ [ check-target-builds ../config//has_float128 "GCC libquadmath and __float128 support" : "quadmath" BOOST_CHARCONV_HAS_QUADMATH ] + + # default-build + : +diff --git a/libs/charconv/doc/charconv/build.adoc b/libs/charconv/doc/charconv/build.adoc +index db17732..f7da7fa 100644 +--- a/libs/charconv/doc/charconv/build.adoc ++++ b/libs/charconv/doc/charconv/build.adoc +@@ -68,6 +68,13 @@ For example, using a `conanfile.txt`: + boost_charconv/1.0.0 + ---- + ++== `__float128` and `std::float128_t` Support ++ ++If using B2 or CMake the build system will automatically define `BOOST_CHARCONV_HAS_QUADMATH` and link against it if the build system can successfully run a small test case. ++If you are using another build system and you want support for these types you will have to define `BOOST_CHARCONV_HAS_QUADMATH`, and link against https://gcc.gnu.org/onlinedocs/libquadmath/[libquadmath]. ++ ++IMPORTANT: libquadmath is only available on supported platforms (e.g. Linux with x86, x86_64, PPC64, and IA64). ++ + == Dependencies + +-This library depends on: Boost.Assert, Boost.Config, Boost.Core, and https://gcc.gnu.org/onlinedocs/libquadmath/[libquadmath] on supported platforms (e.g. Linux with x86, x86_64, PPC64, and IA64). ++This library depends on: Boost.Assert, Boost.Config, Boost.Core, and optionally libquadmath (see above). +diff --git a/boost/charconv/detail/compute_float80.hpp b/boost/charconv/detail/compute_float80.hpp +index c12a4f5..ad1e514 100644 +--- a/boost/charconv/detail/compute_float80.hpp ++++ b/boost/charconv/detail/compute_float80.hpp +@@ -37,19 +37,6 @@ static constexpr long double powers_of_ten_ld[] = { + 1e49L, 1e50L, 1e51L, 1e52L, 1e53L, 1e54L, 1e55L + }; + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 +-static constexpr __float128 powers_of_tenq[] = { +- 1e0Q, 1e1Q, 1e2Q, 1e3Q, 1e4Q, 1e5Q, 1e6Q, +- 1e7Q, 1e8Q, 1e9Q, 1e10Q, 1e11Q, 1e12Q, 1e13Q, +- 1e14Q, 1e15Q, 1e16Q, 1e17Q, 1e18Q, 1e19Q, 1e20Q, +- 1e21Q, 1e22Q, 1e23Q, 1e24Q, 1e25Q, 1e26Q, 1e27Q, +- 1e28Q, 1e29Q, 1e30Q, 1e31Q, 1e32Q, 1e33Q, 1e34Q, +- 1e35Q, 1e36Q, 1e37Q, 1e38Q, 1e39Q, 1e40Q, 1e41Q, +- 1e42Q, 1e43Q, 1e44Q, 1e45Q, 1e46Q, 1e47Q, 1e48Q, +- 1e49Q, 1e50Q, 1e51Q, 1e52Q, 1e53Q, 1e54Q, 1e55Q +-}; +-#endif +- + template + inline ResultType fast_path(std::int64_t q, Unsigned_Integer w, bool negative, ArrayPtr table) noexcept + { +@@ -78,42 +65,6 @@ inline ResultType fast_path(std::int64_t q, Unsigned_Integer w, bool negative, A + return ld; + } + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 +-template +-inline __float128 compute_float128(std::int64_t q, Unsigned_Integer w, bool negative, std::errc& success) noexcept +-{ +- // GLIBC uses 2^-16444 but MPFR uses 2^-16445 as the smallest subnormal value for 80 bit +- // 39 is the max number of digits in an uint128_t +- static constexpr auto smallest_power = -4951 - 39; +- static constexpr auto largest_power = 4932; +- +- if (-55 <= q && q <= 48 && w <= static_cast(1) << 113) +- { +- success = std::errc(); +- return fast_path<__float128>(q, w, negative, powers_of_tenq); +- } +- +- if (w == 0) +- { +- success = std::errc(); +- return negative ? -0.0Q : 0.0Q; +- } +- else if (q > largest_power) +- { +- success = std::errc::result_out_of_range; +- return negative ? -HUGE_VALQ : HUGE_VALQ; +- } +- else if (q < smallest_power) +- { +- success = std::errc::result_out_of_range; +- return negative ? -0.0Q : 0.0Q; +- } +- +- success = std::errc::not_supported; +- return 0; +-} +-#endif +- + template + inline ResultType compute_float80(std::int64_t q, Unsigned_Integer w, bool negative, std::errc& success) noexcept + { +diff --git a/boost/charconv/detail/config.hpp b/boost/charconv/detail/config.hpp +index 714d4a8..e0e2500 100644 +--- a/boost/charconv/detail/config.hpp ++++ b/boost/charconv/detail/config.hpp +@@ -27,11 +27,6 @@ + # define BOOST_CHARCONV_UINT128_MAX (2 * static_cast(BOOST_CHARCONV_INT128_MAX) + 1) + #endif + +-#if defined(BOOST_HAS_FLOAT128) && !defined(__STRICT_ANSI__) && !defined(BOOST_CHARCONV_NO_QUADMATH) +-# define BOOST_CHARCONV_HAS_FLOAT128 +-# include +-#endif +- + #ifndef BOOST_NO_CXX14_CONSTEXPR + # define BOOST_CHARCONV_CXX14_CONSTEXPR BOOST_CXX14_CONSTEXPR + # define BOOST_CHARCONV_CXX14_CONSTEXPR_NO_INLINE BOOST_CXX14_CONSTEXPR +diff --git a/boost/charconv/detail/emulated128.hpp b/boost/charconv/detail/emulated128.hpp +index 5e12930..e77133d 100644 +--- a/boost/charconv/detail/emulated128.hpp ++++ b/boost/charconv/detail/emulated128.hpp +@@ -136,10 +136,6 @@ struct uint128 + explicit constexpr operator boost::uint128_type() const noexcept { return (static_cast(high) << 64) + low; } + #endif + +- #ifdef BOOST_CHARCONV_HAS_FLOAT128 +- explicit operator __float128() const noexcept { return ldexpq(static_cast<__float128>(high), 64) + static_cast<__float128>(low); } +- #endif +- + FLOAT_CONVERSION_OPERATOR(float) // NOLINT + FLOAT_CONVERSION_OPERATOR(double) // NOLINT + FLOAT_CONVERSION_OPERATOR(long double) // NOLINT +diff --git a/boost/charconv/detail/fallback_routines.hpp b/boost/charconv/detail/fallback_routines.hpp +index d2349c7..681aef5 100644 +--- a/boost/charconv/detail/fallback_routines.hpp ++++ b/boost/charconv/detail/fallback_routines.hpp +@@ -21,13 +21,6 @@ namespace boost { + namespace charconv { + namespace detail { + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 +-inline int print_val(char* first, std::size_t size, char* format, __float128 value) noexcept +-{ +- return quadmath_snprintf(first, size, format, value); +-} +-#endif +- + template + inline int print_val(char* first, std::size_t size, char* format, T value) noexcept + { +@@ -73,19 +66,11 @@ to_chars_result to_chars_printf_impl(char* first, char* last, T value, chars_for + } + + // Add the type identifier +- #ifdef BOOST_CHARCONV_HAS_FLOAT128 +- BOOST_CHARCONV_IF_CONSTEXPR (std::is_same::value || std::is_same::value) +- { +- format[pos] = std::is_same::value ? 'Q' : 'L'; +- ++pos; +- } +- #else + BOOST_CHARCONV_IF_CONSTEXPR (std::is_same::value) + { + format[pos] = 'L'; + ++pos; + } +- #endif + + // Add the format character + switch (fmt) +@@ -205,18 +190,7 @@ from_chars_result from_chars_strtod_impl(const char* first, const char* last, T& + r = {last, std::errc::result_out_of_range}; + } + } +- #ifdef BOOST_CHARCONV_HAS_FLOAT128 +- else +- { +- return_value = strtoflt128(buffer, &str_end); +- +- if (return_value == HUGE_VALQ) +- { +- r = {last, std::errc::result_out_of_range}; +- } +- } +- #endif +- ++ + // Since this is a fallback routine we are safe to check for 0 + if (return_value == 0 && str_end == last) + { +diff --git a/boost/charconv/detail/generate_nan.hpp b/boost/charconv/detail/generate_nan.hpp +deleted file mode 100644 +index e527ade..0000000 +--- a/boost/charconv/detail/generate_nan.hpp ++++ /dev/null +@@ -1,56 +0,0 @@ +-// Copyright 2024 Matt Borland +-// Distributed under the Boost Software License, Version 1.0. +-// https://www.boost.org/LICENSE_1_0.txt +- +-#ifndef BOOST_GENERATE_NAN_HPP +-#define BOOST_GENERATE_NAN_HPP +- +-#include +-#include +- +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 +- +-namespace boost { +-namespace charconv { +-namespace detail { +- +-struct words +-{ +-#if BOOST_CHARCONV_ENDIAN_LITTLE_BYTE +- std::uint64_t lo; +- std::uint64_t hi; +-#else +- std::uint64_t hi; +- std::uint64_t lo; +-#endif +-}; +- +-inline __float128 nans BOOST_PREVENT_MACRO_SUBSTITUTION () noexcept +-{ +- words bits; +- bits.hi = UINT64_C(0x7FFF400000000000); +- bits.lo = UINT64_C(0); +- +- __float128 return_val; +- std::memcpy(&return_val, &bits, sizeof(__float128)); +- return return_val; +-} +- +-inline __float128 nanq BOOST_PREVENT_MACRO_SUBSTITUTION () noexcept +-{ +- words bits; +- bits.hi = UINT64_C(0x7FFF800000000000); +- bits.lo = UINT64_C(0); +- +- __float128 return_val; +- std::memcpy(&return_val, &bits, sizeof(__float128)); +- return return_val; +-} +- +-} //namespace detail +-} //namespace charconv +-} //namespace boost +- +-#endif +- +-#endif //BOOST_GENERATE_NAN_HPP +diff --git a/boost/charconv/detail/issignaling.hpp b/boost/charconv/detail/issignaling.hpp +index 5ff8a5d..865460e 100644 +--- a/boost/charconv/detail/issignaling.hpp ++++ b/boost/charconv/detail/issignaling.hpp +@@ -15,7 +15,7 @@ namespace boost { namespace charconv { namespace detail { + template + inline bool issignaling BOOST_PREVENT_MACRO_SUBSTITUTION (T x) noexcept; + +-#if BOOST_CHARCONV_LDBL_BITS == 128 || defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if BOOST_CHARCONV_LDBL_BITS == 128 + + struct words128 + { +diff --git a/boost/charconv/detail/ryu/ryu_generic_128.hpp b/boost/charconv/detail/ryu/ryu_generic_128.hpp +index ad69202..9a04ef2 100644 +--- a/boost/charconv/detail/ryu/ryu_generic_128.hpp ++++ b/boost/charconv/detail/ryu/ryu_generic_128.hpp +@@ -662,7 +662,7 @@ static inline struct floating_decimal_128 long_double_to_fd128(long double d) no + return generic_binary_to_decimal(bits, 64, 15, true); + } + +-#else ++#elif BOOST_CHARCONV_LDBL_BITS == 128 + + static inline struct floating_decimal_128 long_double_to_fd128(long double d) noexcept + { +@@ -682,42 +682,6 @@ static inline struct floating_decimal_128 long_double_to_fd128(long double d) no + + #endif + +-#ifdef BOOST_HAS_FLOAT128 +- +-static inline struct floating_decimal_128 float128_to_fd128(__float128 d) noexcept +-{ +- #ifdef BOOST_CHARCONV_HAS_INT128 +- unsigned_128_type bits = 0; +- std::memcpy(&bits, &d, sizeof(__float128)); +- #else +- trivial_uint128 trivial_bits; +- std::memcpy(&trivial_bits, &d, sizeof(__float128)); +- unsigned_128_type bits {trivial_bits}; +- #endif +- +- return generic_binary_to_decimal(bits, 112, 15, false); +-} +- +-#endif +- +-#ifdef BOOST_CHARCONV_HAS_STDFLOAT128 +- +-static inline struct floating_decimal_128 stdfloat128_to_fd128(std::float128_t d) noexcept +-{ +- #ifdef BOOST_CHARCONV_HAS_INT128 +- unsigned_128_type bits = 0; +- std::memcpy(&bits, &d, sizeof(std::float128_t)); +- #else +- trivial_uint128 trivial_bits; +- std::memcpy(&trivial_bits, &d, sizeof(std::float128_t)); +- unsigned_128_type bits {trivial_bits}; +- #endif +- +- return generic_binary_to_decimal(bits, 112, 15, false); +-} +- +-#endif +- + }}}} // Namespaces + + #endif //BOOST_RYU_GENERIC_128_HPP +diff --git a/boost/charconv/from_chars.hpp b/boost/charconv/from_chars.hpp +index 459d4c8..50f911a 100644 +--- a/boost/charconv/from_chars.hpp ++++ b/boost/charconv/from_chars.hpp +@@ -141,7 +141,7 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, __float128& value, chars_format fmt = chars_format::general) noexcept; + #endif + +@@ -155,7 +155,7 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const + #ifdef BOOST_CHARCONV_HAS_FLOAT64 + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, std::float64_t& value, chars_format fmt = chars_format::general) noexcept; + #endif +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, std::float128_t& value, chars_format fmt = chars_format::general) noexcept; + #endif + #ifdef BOOST_CHARCONV_HAS_BRAINFLOAT16 +diff --git a/boost/charconv/limits.hpp b/boost/charconv/limits.hpp +index beac057..f62809f 100644 +--- a/boost/charconv/limits.hpp ++++ b/boost/charconv/limits.hpp +@@ -72,7 +72,7 @@ template struct limits + std::numeric_limits::max_digits10 + 3 + 2 + detail::exp_digits( std::numeric_limits::max_exponent10 ); // as above + }; + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#if defined(BOOST_CHARCONV_HAS_QUADMATH) + + template <> struct limits<__float128> + { +diff --git a/boost/charconv/to_chars.hpp b/boost/charconv/to_chars.hpp +index 3946e46..53f0c56 100644 +--- a/boost/charconv/to_chars.hpp ++++ b/boost/charconv/to_chars.hpp +@@ -91,7 +91,7 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double val + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, + chars_format fmt, int precision) noexcept; + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, __float128 value, + chars_format fmt = chars_format::general) noexcept; + +@@ -120,7 +120,7 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, std::float + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, std::float64_t value, + chars_format fmt, int precision) noexcept; + #endif +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, std::float128_t value, + chars_format fmt = chars_format::general) noexcept; + +diff --git a/libs/charconv/src/from_chars.cpp b/libs/charconv/src/from_chars.cpp +index 4fe8829..ec8d741 100644 +--- a/libs/charconv/src/from_chars.cpp ++++ b/libs/charconv/src/from_chars.cpp +@@ -11,11 +11,11 @@ + # define NO_WARN_MBCS_MFC_DEPRECATION + #endif + ++#include "float128_impl.hpp" + #include "from_chars_float_impl.hpp" + #include + #include + #include +-#include + #include + #include + #include +@@ -50,7 +50,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char + return boost::charconv::detail::from_chars_float_impl(first, last, value, fmt); + } + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char* first, const char* last, __float128& value, boost::charconv::chars_format fmt) noexcept + { + bool sign {}; +@@ -271,7 +271,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char + return r; + } + +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char* first, const char* last, std::float128_t& value, boost::charconv::chars_format fmt) noexcept + { + static_assert(sizeof(__float128) == sizeof(std::float128_t)); +@@ -304,7 +304,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::cor + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); + } + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept + { + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); +@@ -330,7 +330,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::cor + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); + } + #endif +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, std::float128_t& value, boost::charconv::chars_format fmt) noexcept + { + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); +@@ -377,7 +377,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(const char* first + return from_chars_strict_impl(first, last, value, fmt); + } + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, __float128& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(first, last, value, fmt); +@@ -405,7 +405,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(const char* first + } + #endif + +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, std::float128_t& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(first, last, value, fmt); +@@ -434,7 +434,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::stri + return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); + } + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); +@@ -462,7 +462,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::stri + } + #endif + +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, std::float128_t& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); +diff --git a/libs/charconv/src/to_chars.cpp b/libs/charconv/src/to_chars.cpp +index 0293126..38ccf19 100644 +--- a/libs/charconv/src/to_chars.cpp ++++ b/libs/charconv/src/to_chars.cpp +@@ -4,6 +4,7 @@ + // Distributed under the Boost Software License, Version 1.0. + // https://www.boost.org/LICENSE_1_0.txt + ++#include "float128_impl.hpp" + #include "to_chars_float_impl.hpp" + #include + #include +@@ -660,7 +661,7 @@ boost::charconv::to_chars_result boost::charconv::to_chars( char* first, char* l + + #endif + +-#ifdef BOOST_CHARCONV_HAS_FLOAT128 ++#ifdef BOOST_CHARCONV_HAS_QUADMATH + + boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* last, __float128 value, boost::charconv::chars_format fmt) noexcept + { +@@ -747,7 +748,7 @@ boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* la + } + #endif + +-#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if defined(BOOST_CHARCONV_HAS_STDFLOAT128) && defined(BOOST_CHARCONV_HAS_QUADMATH) + + boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* last, std::float128_t value, + boost::charconv::chars_format fmt) noexcept +diff --git a/libs/charconv/src/to_chars_float_impl.hpp b/libs/charconv/src/to_chars_float_impl.hpp +index 3db4567..2ae90bf 100644 +--- a/libs/charconv/src/to_chars_float_impl.hpp ++++ b/libs/charconv/src/to_chars_float_impl.hpp +@@ -7,6 +7,7 @@ + #ifndef BOOST_CHARCONV_DETAIL_TO_CHARS_FLOAT_IMPL_HPP + #define BOOST_CHARCONV_DETAIL_TO_CHARS_FLOAT_IMPL_HPP + ++#include "float128_impl.hpp" + #include + #include + #include +@@ -38,7 +39,7 @@ + #include + #endif + +-#if (BOOST_CHARCONV_LDBL_BITS == 80 || BOOST_CHARCONV_LDBL_BITS == 128) || defined(BOOST_CHARCONV_HAS_FLOAT128) ++#if (BOOST_CHARCONV_LDBL_BITS == 80 || BOOST_CHARCONV_LDBL_BITS == 128) + # include + # include + #endif +@@ -274,13 +274,17 @@ to_chars_result to_chars_hex(char* first, char* last, Real value, int precision) + typename std::conditional::value, ieee754_binary32, + typename std::conditional::value, ieee754_binary64, + #ifdef BOOST_CHARCONV_HAS_FLOAT128 +- typename std::conditional::value || BOOST_CHARCONV_LDBL_BITS == 128, ieee754_binary128, ieee754_binary80>::type +- #elif BOOST_CHARCONV_LDBL_BITS == 128 +- ieee754_binary128 +- #elif BOOST_CHARCONV_LDBL_BITS == 80 +- ieee754_binary80 +- #else +- ieee754_binary64 ++ typename std::conditional::value, ieee754_binary128, ++ #endif ++ #if BOOST_CHARCONV_LDBL_BITS == 128 ++ ieee754_binary128 ++ #elif BOOST_CHARCONV_LDBL_BITS == 80 ++ ieee754_binary80 ++ #else ++ ieee754_binary64 ++ #endif ++ #ifdef BOOST_CHARCONV_HAS_FLOAT128 ++ >::type + #endif + >::type>::type + #ifdef BOOST_CHARCONV_HAS_FLOAT16 + +diff --git a/libs/charconv/src/float128_impl.hpp b/libs/charconv/src/float128_impl.hpp +new file mode 100644 +index 0000000..e6b2261 +--- /dev/null ++++ b/libs/charconv/src/float128_impl.hpp +@@ -0,0 +1,359 @@ ++// Copyright 2024 Matt Borland ++// Distributed under the Boost Software License, Version 1.0. ++// https://www.boost.org/LICENSE_1_0.txt ++ ++#ifndef BOOST_CHARCONV_FLOAT128_IMPL_HPP ++#define BOOST_CHARCONV_FLOAT128_IMPL_HPP ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++// Only add in float128 support if the build system says it can ++#ifdef BOOST_CHARCONV_HAS_QUADMATH ++ ++#include ++ ++#define BOOST_CHARCONV_HAS_FLOAT128 ++ ++namespace boost { ++namespace charconv { ++ ++namespace detail { ++ ++// -------------------------------------------------------------------------------------------------------------------- ++// Ryu ++// -------------------------------------------------------------------------------------------------------------------- ++ ++ ++namespace ryu { ++ ++inline struct floating_decimal_128 float128_to_fd128(__float128 d) noexcept ++{ ++#ifdef BOOST_CHARCONV_HAS_INT128 ++ unsigned_128_type bits = 0; ++ std::memcpy(&bits, &d, sizeof(__float128)); ++#else ++ trivial_uint128 trivial_bits; ++ std::memcpy(&trivial_bits, &d, sizeof(__float128)); ++ unsigned_128_type bits {trivial_bits}; ++#endif ++ ++ return generic_binary_to_decimal(bits, 112, 15, false); ++} ++ ++# ifdef BOOST_CHARCONV_HAS_STDFLOAT128 ++ ++inline struct floating_decimal_128 stdfloat128_to_fd128(std::float128_t d) noexcept ++{ ++#ifdef BOOST_CHARCONV_HAS_INT128 ++ unsigned_128_type bits = 0; ++ std::memcpy(&bits, &d, sizeof(std::float128_t)); ++#else ++ trivial_uint128 trivial_bits; ++ std::memcpy(&trivial_bits, &d, sizeof(std::float128_t)); ++ unsigned_128_type bits {trivial_bits}; ++#endif ++ ++ return generic_binary_to_decimal(bits, 112, 15, false); ++} ++ ++# endif ++ ++} // namespace ryu ++ ++// -------------------------------------------------------------------------------------------------------------------- ++// fast_float ++// -------------------------------------------------------------------------------------------------------------------- ++ ++static constexpr __float128 powers_of_tenq[] = { ++ 1e0Q, 1e1Q, 1e2Q, 1e3Q, 1e4Q, 1e5Q, 1e6Q, ++ 1e7Q, 1e8Q, 1e9Q, 1e10Q, 1e11Q, 1e12Q, 1e13Q, ++ 1e14Q, 1e15Q, 1e16Q, 1e17Q, 1e18Q, 1e19Q, 1e20Q, ++ 1e21Q, 1e22Q, 1e23Q, 1e24Q, 1e25Q, 1e26Q, 1e27Q, ++ 1e28Q, 1e29Q, 1e30Q, 1e31Q, 1e32Q, 1e33Q, 1e34Q, ++ 1e35Q, 1e36Q, 1e37Q, 1e38Q, 1e39Q, 1e40Q, 1e41Q, ++ 1e42Q, 1e43Q, 1e44Q, 1e45Q, 1e46Q, 1e47Q, 1e48Q, ++ 1e49Q, 1e50Q, 1e51Q, 1e52Q, 1e53Q, 1e54Q, 1e55Q ++}; ++ ++template ++inline __float128 to_float128(Unsigned_Integer w) noexcept ++{ ++ return static_cast<__float128>(w); ++} ++ ++template <> ++inline __float128 to_float128(uint128 w) noexcept ++{ ++ return ldexp(static_cast<__float128>(w.high), 64) + static_cast<__float128>(w.low); ++} ++ ++template ++inline __float128 fast_path_float128(std::int64_t q, Unsigned_Integer w, bool negative, ArrayPtr table) noexcept ++{ ++ // The general idea is as follows. ++ // if 0 <= s <= 2^64 and if 10^0 <= p <= 10^27 ++ // Both s and p can be represented exactly ++ // because of this s*p and s/p will produce ++ // correctly rounded values ++ ++ auto ld = to_float128(w); ++ ++ if (q < 0) ++ { ++ ld /= table[-q]; ++ } ++ else ++ { ++ ld *= table[q]; ++ } ++ ++ if (negative) ++ { ++ ld = -ld; ++ } ++ ++ return ld; ++} ++ ++template ++inline __float128 compute_float128(std::int64_t q, Unsigned_Integer w, bool negative, std::errc& success) noexcept ++{ ++ // GLIBC uses 2^-16444 but MPFR uses 2^-16445 as the smallest subnormal value for 80 bit ++ // 39 is the max number of digits in an uint128_t ++ static constexpr auto smallest_power = -4951 - 39; ++ static constexpr auto largest_power = 4932; ++ ++ if (-55 <= q && q <= 48 && w <= static_cast(1) << 113) ++ { ++ success = std::errc(); ++ return fast_path_float128(q, w, negative, powers_of_tenq); ++ } ++ ++ if (w == 0) ++ { ++ success = std::errc(); ++ return negative ? -0.0Q : 0.0Q; ++ } ++ else if (q > largest_power) ++ { ++ success = std::errc::result_out_of_range; ++ return negative ? -HUGE_VALQ : HUGE_VALQ; ++ } ++ else if (q < smallest_power) ++ { ++ success = std::errc::result_out_of_range; ++ return negative ? -0.0Q : 0.0Q; ++ } ++ ++ success = std::errc::not_supported; ++ return 0; ++} ++ ++// -------------------------------------------------------------------------------------------------------------------- ++// fallback printf ++// -------------------------------------------------------------------------------------------------------------------- ++ ++template <> ++inline to_chars_result to_chars_printf_impl<__float128>(char* first, char* last, __float128 value, chars_format fmt, int precision) ++{ ++ // v % + . + num_digits(INT_MAX) + specifier + null terminator ++ // 1 + 1 + 10 + 1 + 1 ++ char format[14] {}; ++ std::memcpy(format, "%", 1); // NOLINT : No null terminator is purposeful ++ std::size_t pos = 1; ++ ++ // precision of -1 is unspecified ++ if (precision != -1 && fmt != chars_format::fixed) ++ { ++ format[pos] = '.'; ++ ++pos; ++ const auto unsigned_precision = static_cast(precision); ++ if (unsigned_precision < 10) ++ { ++ boost::charconv::detail::print_1_digit(unsigned_precision, format + pos); ++ ++pos; ++ } ++ else if (unsigned_precision < 100) ++ { ++ boost::charconv::detail::print_2_digits(unsigned_precision, format + pos); ++ pos += 2; ++ } ++ else ++ { ++ boost::charconv::detail::to_chars_int(format + pos, format + sizeof(format), precision); ++ pos = std::strlen(format); ++ } ++ } ++ else if (fmt == chars_format::fixed) ++ { ++ // Force 0 decimal places ++ std::memcpy(format + pos, ".0", 2); // NOLINT : No null terminator is purposeful ++ pos += 2; ++ } ++ ++ // Add the type identifier ++ format[pos] = 'Q'; ++ ++pos; ++ ++ // Add the format character ++ switch (fmt) ++ { ++ case boost::charconv::chars_format::general: ++ format[pos] = 'g'; ++ break; ++ ++ case boost::charconv::chars_format::scientific: ++ format[pos] = 'e'; ++ break; ++ ++ case boost::charconv::chars_format::fixed: ++ format[pos] = 'f'; ++ break; ++ ++ case boost::charconv::chars_format::hex: ++ format[pos] = 'a'; ++ break; ++ } ++ ++ const auto rv = quadmath_snprintf(first, static_cast(last - first), format, value); ++ ++ if (rv <= 0) ++ { ++ return {last, static_cast(errno)}; ++ } ++ ++ return {first + rv, std::errc()}; ++} ++ ++// -------------------------------------------------------------------------------------------------------------------- ++// fallback strtod ++// -------------------------------------------------------------------------------------------------------------------- ++ ++template <> ++inline from_chars_result from_chars_strtod_impl<__float128>(const char* first, const char* last, __float128& value, char* buffer) noexcept ++{ ++ // For strto(f/d) ++ // Floating point value corresponding to the contents of str on success. ++ // If the converted value falls out of range of corresponding return type, range error occurs and HUGE_VAL, HUGE_VALF or HUGE_VALL is returned. ++ // If no conversion can be performed, 0 is returned and *str_end is set to str. ++ ++ std::memcpy(buffer, first, static_cast(last - first)); ++ buffer[last - first] = '\0'; ++ convert_string_locale(buffer); ++ ++ char* str_end; ++ __float128 return_value {}; ++ from_chars_result r {nullptr, std::errc()}; ++ ++ return_value = strtoflt128(buffer, &str_end); ++ ++ if (return_value == HUGE_VALQ) ++ { ++ r = {last, std::errc::result_out_of_range}; ++ } ++ ++ // Since this is a fallback routine we are safe to check for 0 ++ if (return_value == 0 && str_end == last) ++ { ++ r = {first, std::errc::result_out_of_range}; ++ } ++ ++ if (r) ++ { ++ value = return_value; ++ r = {first + (str_end - buffer), std::errc()}; ++ } ++ ++ return r; ++} ++ ++template <> ++inline from_chars_result from_chars_strtod<__float128>(const char* first, const char* last, __float128& value) noexcept ++{ ++ if (last - first < 1024) ++ { ++ char buffer[1024]; ++ return from_chars_strtod_impl(first, last, value, buffer); ++ } ++ ++ // If the string to be parsed does not fit into the 1024 byte static buffer than we have to allocate a buffer. ++ // malloc is used here because it does not throw on allocation failure. ++ ++ char* buffer = static_cast(std::malloc(static_cast(last - first + 1))); ++ if (buffer == nullptr) ++ { ++ return {first, std::errc::not_enough_memory}; ++ } ++ ++ auto r = from_chars_strtod_impl(first, last, value, buffer); ++ std::free(buffer); ++ ++ return r; ++} ++ ++// -------------------------------------------------------------------------------------------------------------------- ++// nans ++// -------------------------------------------------------------------------------------------------------------------- ++ ++struct words ++{ ++#if BOOST_CHARCONV_ENDIAN_LITTLE_BYTE ++ std::uint64_t lo; ++ std::uint64_t hi; ++#else ++ std::uint64_t hi; ++ std::uint64_t lo; ++#endif ++}; ++ ++inline __float128 nans BOOST_PREVENT_MACRO_SUBSTITUTION () noexcept ++{ ++ words bits; ++ bits.hi = UINT64_C(0x7FFF400000000000); ++ bits.lo = UINT64_C(0); ++ ++ __float128 return_val; ++ std::memcpy(&return_val, &bits, sizeof(__float128)); ++ return return_val; ++} ++ ++inline __float128 nanq BOOST_PREVENT_MACRO_SUBSTITUTION () noexcept ++{ ++ words bits; ++ bits.hi = UINT64_C(0x7FFF800000000000); ++ bits.lo = UINT64_C(0); ++ ++ __float128 return_val; ++ std::memcpy(&return_val, &bits, sizeof(__float128)); ++ return return_val; ++} ++ ++template <> ++inline bool issignaling<__float128> BOOST_PREVENT_MACRO_SUBSTITUTION (__float128 x) noexcept ++{ ++ words bits; ++ std::memcpy(&bits, &x, sizeof(__float128)); ++ ++ std::uint64_t hi_word = bits.hi; ++ std::uint64_t lo_word = bits.lo; ++ ++ hi_word ^= UINT64_C(0x0000800000000000); ++ hi_word |= (lo_word | -lo_word) >> 63; ++ return ((hi_word & INT64_MAX) > UINT64_C(0x7FFF800000000000)); ++} ++ ++} //namespace detail ++} //namespace charconv ++} //namespace boost ++ ++#endif //BOOST_CHARCONV_HAS_FLOAT128 ++ ++#endif //BOOST_CHARCONV_FLOAT128_IMPL_HPP +diff --git a/boost/charconv/detail/bit_layouts.hpp b/boost/charconv/detail/bit_layouts.hpp +index 498b5bb8..c163ce06 100644 +--- a/boost/charconv/detail/bit_layouts.hpp ++++ b/boost/charconv/detail/bit_layouts.hpp +@@ -126,7 +126,8 @@ struct IEEEl2bits + #define BOOST_CHARCONV_LDBL_BITS 64 + + #else // Unsupported long double representation +-# define BOOST_MATH_UNSUPPORTED_LONG_DOUBLE ++# define BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE ++# define BOOST_CHARCONV_LDBL_BITS -1 + #endif + + struct IEEEbinary128 +diff --git a/boost/charconv/from_chars.hpp b/boost/charconv/from_chars.hpp +index 50f911ae..10e4cb4a 100644 +--- a/boost/charconv/from_chars.hpp ++++ b/boost/charconv/from_chars.hpp +@@ -139,7 +139,10 @@ BOOST_CHARCONV_GCC5_CONSTEXPR from_chars_result from_chars(boost::core::string_v + + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; ++#endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, __float128& value, chars_format fmt = chars_format::general) noexcept; +@@ -164,7 +167,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const + + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; ++#endif + + #ifdef BOOST_CHARCONV_HAS_FLOAT128 + BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, __float128& value, chars_format fmt = chars_format::general) noexcept; +@@ -193,7 +199,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view + + BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; ++#endif + + #ifdef BOOST_CHARCONV_HAS_FLOAT128 + BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, __float128& value, chars_format fmt = chars_format::general) noexcept; +@@ -216,7 +225,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* + + BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; ++#endif + + #ifdef BOOST_CHARCONV_HAS_FLOAT128 + BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, __float128& value, chars_format fmt = chars_format::general) noexcept; +diff --git a/boost/charconv/to_chars.hpp b/boost/charconv/to_chars.hpp +index 53f0c56e..7192fda5 100644 +--- a/boost/charconv/to_chars.hpp ++++ b/boost/charconv/to_chars.hpp +@@ -81,15 +81,21 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float valu + chars_format fmt = chars_format::general) noexcept; + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, + chars_format fmt = chars_format::general) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, + chars_format fmt = chars_format::general) noexcept; ++#endif + + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float value, + chars_format fmt, int precision) noexcept; + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, + chars_format fmt, int precision) noexcept; ++ ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, + chars_format fmt, int precision) noexcept; ++#endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH + BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, __float128 value, +diff --git a/libs/charconv/src/from_chars.cpp b/libs/charconv/src/from_chars.cpp +index bbfaff29..2c01e73c 100644 +--- a/libs/charconv/src/from_chars.cpp ++++ b/libs/charconv/src/from_chars.cpp +@@ -229,7 +229,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char + return r; + } + +-#else ++#elif !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) + + boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept + { +@@ -323,10 +323,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::cor + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); + } + ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept + { + return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); + } ++#endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept +@@ -396,10 +398,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars(const char* first + return from_chars_strict_impl(first, last, value, fmt); + } + ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(first, last, value, fmt); + } ++#endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, __float128& value, boost::charconv::chars_format fmt) noexcept +@@ -453,10 +457,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::stri + return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); + } + ++#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE + boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept + { + return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); + } ++#endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH + boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept +diff --git a/libs/charconv/src/to_chars.cpp b/libs/charconv/src/to_chars.cpp +index 06be7e46..035a44a5 100644 +--- a/libs/charconv/src/to_chars.cpp ++++ b/libs/charconv/src/to_chars.cpp +@@ -602,7 +602,7 @@ boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* la + return boost::charconv::detail::to_chars_float_impl(first, last, static_cast(value), fmt, precision); + } + +-#elif (BOOST_CHARCONV_LDBL_BITS == 80 || BOOST_CHARCONV_LDBL_BITS == 128) ++#elif !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) + + boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* last, long double value, + boost::charconv::chars_format fmt) noexcept +@@ -621,44 +621,6 @@ boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* la + return boost::charconv::detail::to_chars_float_impl(first, last, value, fmt, precision); + } + +-#else +- +-boost::charconv::to_chars_result boost::charconv::to_chars( char* first, char* last, long double value, +- boost::charconv::chars_format fmt, int precision) noexcept +-{ +- if (std::isnan(value)) +- { +- bool is_negative = false; +- if (std::signbit(value)) +- { +- is_negative = true; +- *first++ = '-'; +- } +- +- if (issignaling(value)) +- { +- std::memcpy(first, "nan(snan)", 9); +- return { first + 9 + static_cast(is_negative), std::errc() }; +- } +- else +- { +- if (is_negative) +- { +- std::memcpy(first, "nan(ind)", 8); +- return { first + 9, std::errc() }; +- } +- else +- { +- std::memcpy(first, "nan", 3); +- return { first + 3, std::errc() }; +- } +- } +- } +- +- // Fallback to printf +- return boost::charconv::detail::to_chars_printf_impl(first, last, value, fmt, precision); +-} +- + #endif + + #ifdef BOOST_CHARCONV_HAS_QUADMATH diff --git a/easybuild/easyconfigs/b/bakta/bakta-1.10.1-foss-2023b.eb b/easybuild/easyconfigs/b/bakta/bakta-1.10.1-foss-2023b.eb new file mode 100644 index 00000000000..dc0cd1cd1be --- /dev/null +++ b/easybuild/easyconfigs/b/bakta/bakta-1.10.1-foss-2023b.eb @@ -0,0 +1,66 @@ +easyblock = 'PythonBundle' + +name = 'bakta' +version = '1.10.1' + +homepage = "https://github.com/oschwengers/bakta" +description = """Bakta is a tool for the rapid & standardized annotation of bacterial genomes and plasmids + from both isolates and MAGs. It provides dbxref-rich, sORF-including and taxon-independent annotations + in machine-readable JSON & bioinformatics standard file formats for automated downstream analysis.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Biopython', '1.84'), + ('PyYAML', '6.0.1'), + ('PyHMMER', '0.10.15'), + ('matplotlib', '3.8.2'), + ('python-isal', '1.6.1'), + ('zlib-ng', '2.2.2'), + ('archspec', '0.2.2'), +] + +exts_list = [ + ('about_time', '4.2.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8bbf4c75fe13cbd3d72f49a03b02c5c7dca32169b6d49117c257e7eb3eaee341'], + }), + ('grapheme', '0.6.0', { + 'checksums': ['44c2b9f21bbe77cfb05835fec230bd435954275267fea1858013b102f8603cca'], + }), + ('alive_progress', '3.2.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0677929f8d3202572e9d142f08170b34dbbe256cc6d2afbf75ef187c7da964a8'], + }), + ('pyCirclize', '1.7.1', { + 'source_tmpl': SOURCELOWER_PY3_WHL, + 'checksums': ['e0c049877b1ee47245866cc9968f2aded5fe3ead8a3333841536dc29fd14bc90'], + }), + ('pyrodigal', '3.6.3', { + 'checksums': ['3e226f743c960d4d30c46ae6868aff7e2a6b98f8d837cfbd2637568569b21f78'], + }), + ('xopen', '2.0.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['74e7f7fb7e7f42bd843c798595fa5a52086d7d1bf3de0e8513c6615516431313'], + }), + (name, version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['82967b4eefd2a1084743211fe955fa394972c2d2c878c6682e00b13dabc5a445'], + }), +] + +local_bins = ['bakta', 'bakta_db', 'bakta_io', 'bakta_plot', 'bakta_proteins'] + +sanity_check_paths = { + 'files': ['bin/%s' % bin for bin in local_bins], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['%s --help' % bin for bin in local_bins] + +moduleclass = 'tools' 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/b/bin2cell/bin2cell-0.3.2-foss-2023a.eb b/easybuild/easyconfigs/b/bin2cell/bin2cell-0.3.2-foss-2023a.eb new file mode 100644 index 00000000000..9a4c757900f --- /dev/null +++ b/easybuild/easyconfigs/b/bin2cell/bin2cell-0.3.2-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'bin2cell' +version = '0.3.2' + +homepage = 'https://github.com/Teichlab/bin2cell' +description = """Bin2cell proposes 2um bin to cell groupings based on segmentation, +which can be done on the morphology image and/or a visualisation of the gene expression.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('scanpy', '1.9.8'), + ('OpenCV', '4.8.1', '-contrib'), + ('stardist', '0.8.5'), + ('fastparquet', '2024.11.0'), +] + +exts_list = [ + ('flit_core', '3.9.0', { + 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], + }), + (name, version, { + # opencv-python is installed via OpenCV, python module name is 'cv2' + 'preinstallopts': "sed -i '/opencv-python/d' pyproject.toml &&", + 'checksums': ['6529a8260b75c8c0237938f4ea389dfe055aea0909a31315f8fec32d44b2c531'], + }), +] + +sanity_check_commands = ['python -c "import cv2"'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/bokeh/bokeh-3.6.0-gfbf-2024a.eb b/easybuild/easyconfigs/b/bokeh/bokeh-3.6.0-gfbf-2024a.eb new file mode 100644 index 00000000000..f74619f52af --- /dev/null +++ b/easybuild/easyconfigs/b/bokeh/bokeh-3.6.0-gfbf-2024a.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'bokeh' +version = '3.6.0' + +homepage = 'https://github.com/bokeh/bokeh' +description = "Statistical and novel interactive HTML plots for Python" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [ + ('meson-python', '0.16.0'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('matplotlib', '3.9.2'), + ('PyYAML', '6.0.2'), + ('Pillow', '10.4.0'), + ('tornado', '6.4.1'), +] + +exts_list = [ + ('contourpy', '1.2.1', { + 'checksums': ['4d8908b3bee1c889e547867ca4cdc54e5ab6be6d3e078556814a22457f49423c'], + }), + ('xyzservices', '2024.4.0', { + 'checksums': ['6a04f11487a6fb77d92a98984cd107fbd9157fd5e65f929add9c3d6e604ee88c'], + }), + (name, version, { + 'preinstallopts': """sed -i 's/setup(/setup(version="%(version)s",/g' setup.py && """, + 'checksums': ['0032dc1e76ad097b07626e51584685ff48c65481fbaaad105663b1046165867a'], + }), +] + +sanity_check_paths = { + 'files': ['bin/bokeh'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["bokeh --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/boto3/boto3-1.35.36-GCCcore-13.3.0.eb b/easybuild/easyconfigs/b/boto3/boto3-1.35.36-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..28ecd8bf663 --- /dev/null +++ b/easybuild/easyconfigs/b/boto3/boto3-1.35.36-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'boto3' +version = '1.35.36' + +homepage = 'https://github.com/boto/boto3' +description = """Boto3 is the Amazon Web Services (AWS) Software Development Kit +(SDK) for Python, which allows Python developers to write software that makes +use of services like Amazon S3 and Amazon EC2.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +exts_list = [ + ('botocore', version, { + 'checksums': ['354ec1b766f0029b5d6ff0c45d1a0f9e5007b7d2f3ec89bcdd755b208c5bc797'], + }), + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('s3transfer', '0.10.3', { + 'checksums': ['4f50ed74ab84d474ce614475e0b8d5047ff080810aac5d01ea25231cfc944b0c'], + }), + (name, version, { + 'checksums': ['586524b623e4fbbebe28b604c6205eb12f263cc4746bccb011562d07e217a4cb'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2023b-CUDA-12.4.0.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2023b-CUDA-12.4.0.eb new file mode 100644 index 00000000000..2a58e5fbb42 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2023b-CUDA-12.4.0.eb @@ -0,0 +1,20 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', versionsuffix), + ('UCC-CUDA', '1.2.0', versionsuffix), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a-CUDA-12.6.0.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a-CUDA-12.6.0.eb new file mode 100644 index 00000000000..a43fd7490d8 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a-CUDA-12.6.0.eb @@ -0,0 +1,20 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'foss', 'version': '2024a'} + +dependencies = [ + ('CUDA', '12.6.0', '', SYSTEM), + ('UCX-CUDA', '1.16.0', versionsuffix), + ('UCC-CUDA', '1.3.0', versionsuffix), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a.eb new file mode 100644 index 00000000000..d5909cd1320 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2024a.eb @@ -0,0 +1,13 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'foss', 'version': '2024a'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2024a.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2024a.eb new file mode 100644 index 00000000000..ed6366787d8 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2024a.eb @@ -0,0 +1,13 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'intel', 'version': '2024a'} + +moduleclass = 'devel' 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/CIRCE/CIRCE-0.3.4-foss-2023a.eb b/easybuild/easyconfigs/c/CIRCE/CIRCE-0.3.4-foss-2023a.eb new file mode 100644 index 00000000000..d1bc5f7522e --- /dev/null +++ b/easybuild/easyconfigs/c/CIRCE/CIRCE-0.3.4-foss-2023a.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'CIRCE' +version = '0.3.4' + +homepage = 'https://github.com/cantinilab/Circe' +description = """This repo contains a python package for inferring co-accessibility networks + from single-cell ATAC-seq data, using skggm for the graphical lasso and scanpy for data processing.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('scikit-learn', '1.3.1'), + ('scanpy', '1.9.8'), +] + +# Some requirements are too strict. +local_preinstallopts = """sed -i 's/pandas = "[^"]*"/pandas = "*"/g' pyproject.toml && """ +local_preinstallopts += """sed -i "s/'pandas>=[^']*'/'pandas'/g" setup.py && """ + +# build the C components linking `flexiblas` instead of `lapack` and `blas` +local_preinstallopts += """sed -i "s/lapack/flexiblas/g;s/, 'blas'//g" setup.py && """ +local_preinstallopts += """sed -i "s/lapack/flexiblas/g;/blas/d" pyquic_ext/pyquic.cpp && """ + +exts_list = [ + ('joblib', '1.4.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6'], + }), + ('rich', '13.9.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8c82a3d3f8dcfe9e734771313e606b39d8247bb6b826e196f4914b333b743cf1'], + }), + ('circe_py', version, { + 'preinstallopts': local_preinstallopts, + 'modulename': 'circe', + 'checksums': ['279004948dff84816361e857ee3fb383cdb17587f376c6f10f82a66810cba16c'], + }), +] + +# NOTE This has been tested manually using the following script: +# https://github.com/cantinilab/Circe/blob/a70e031f9de4760739eb3c7571277678d5e80c8a/Examples/Minimal_example.ipynb +# with a small modification: +# https://github.com/cantinilab/Circe/issues/5#issuecomment-2419821380 + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.3.0.290.eb b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.3.0.290.eb new file mode 100644 index 00000000000..93151afcf5e --- /dev/null +++ b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.3.0.290.eb @@ -0,0 +1,24 @@ +name = 'COMSOL' +version = '6.3.0.290' + +homepage = 'https://www.comsol.com' +description = """ +COMSOL Multiphysics is a general-purpose software platform, based on +advanced numerical methods, for modeling and simulating physics-based +problems. +""" + +toolchain = SYSTEM + +# Note: sources from COMSOL are often named poorly. You can view the exact version in the "ver" file inside the iso: +# 7z x COMSOL-*.iso ver; cat ver +sources = ['COMSOL-%(version)s.iso'] +checksums = ['0b27e68052c9a6c209b50ba22a07667c0d57b86ba5a4daf2282413a63a375c22'] + +download_instructions = 'Obtain from comsol.com' + +osdependencies = [('p7zip-plugins', 'p7zip-full'), 'csh'] # for extracting iso-files + +# license_file = 'license.dat' # or EB_COMSOL_LICENSE_FILE or LMCOMSOL_LICENSE_FILE or LM_LICENSE_FILE + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/c/CPPE/CPPE-0.3.1-GCC-12.3.0.eb b/easybuild/easyconfigs/c/CPPE/CPPE-0.3.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..9fb0165f43b --- /dev/null +++ b/easybuild/easyconfigs/c/CPPE/CPPE-0.3.1-GCC-12.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'CMakeMake' + +name = 'CPPE' +version = '0.3.1' + +homepage = 'https://github.com/maxscheurer/cppe' +description = """CPPE is an open-source, light-weight C++ and Python library for Polarizable +Embedding (PE)1,2 calculations. It provides an easy-to-use API to implement PE +for ground-state self-consistent field (SCF) calculations and post-SCF methods. +A convenient Python interface is also available.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'maxscheurer' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['38d4230ba3ace78936049c23ad4b1fe9e704fd250ec57cc9733cb3904b62cf7c'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('pybind11', '2.11.1'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], +} + +exts_list = [ + ('cppe', version, { + 'checksums': ['b0aef578d6919f8c103d4d4a9fcd3db481bd73c59c157985f52bf62477425d6c'], + }), +] + +sanity_check_paths = { + 'files': ['lib/libcppe.%s' % SHLIB_EXT], + 'dirs': ['include/cppe', 'lib/python%(pyshortver)s/site-packages', 'share/cmake'], +} + +moduleclass = 'chem' 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..e99e7848246 --- /dev/null +++ b/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb @@ -0,0 +1,45 @@ +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'), +] + +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/Cbc/Cbc-2.10.11-foss-2023b.eb b/easybuild/easyconfigs/c/Cbc/Cbc-2.10.11-foss-2023b.eb new file mode 100644 index 00000000000..39ee2bbd8f2 --- /dev/null +++ b/easybuild/easyconfigs/c/Cbc/Cbc-2.10.11-foss-2023b.eb @@ -0,0 +1,63 @@ +easyblock = "ConfigureMake" + +name = 'Cbc' +version = '2.10.11' + +homepage = "https://github.com/coin-or/Cbc" +description = """Cbc (Coin-or branch and cut) is an open-source mixed integer linear programming +solver written in C++. It can be used as a callable library or using a +stand-alone executable.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/coin-or/Cbc/archive/refs/tags/releases'] +sources = ['%(version)s.tar.gz'] +checksums = ['1fb591dd88336fdaf096b8e42e46111e41671a5eb85d4ee36e45baff1678bd33'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.8'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('METIS', '5.1.0'), + ('MUMPS', '5.6.1', '-metis'), + ('CoinUtils', '2.11.10'), + ('Osi', '0.108.9'), + ('Clp', '1.17.9'), + ('Cgl', '0.60.8'), + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +# Use BLAS/LAPACK from toolchain +configopts = '--with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK" ' +# Use METIS AND MUMPS from EB +configopts += '--with-metis-lib="-lmetis" ' +configopts += '--with-mumps-lib="-lcmumps -ldmumps -lsmumps -lzmumps -lmumps_common -lpord" ' +# Disable GLPK, dependencies have to be built with it as well +configopts += '--without-glpk ' +# Use CoinUtils from EB +configopts += '--with-coinutils-lib="-lCoinUtils" ' +configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data ' +# Use Clp from EB +configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" ' +configopts += '--with-clp-datadir=$EBROOTCLP/share/coin/Data ' +# Use Osi from EB (also needs links to Clp due to OsiClpSolver) +configopts += '--with-osi-lib="-lOsiClp -lClpSolver -lClp -lOsi" ' +configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' +# Use Cgl from EB +configopts += '--with-cgl-lib="-lCgl" ' +configopts += '--with-cgl-datadir=$EBROOTCGL/share/coin/Data ' + +sanity_check_paths = { + 'files': ['bin/cbc'] + ['lib/lib%s.%s' % (x, SHLIB_EXT) for x in ['Cbc', 'CbcSolver', 'OsiCbc']], + 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] +} + +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + +moduleclass = "math" diff --git a/easybuild/easyconfigs/c/CellRanger/CellRanger-9.0.0.eb b/easybuild/easyconfigs/c/CellRanger/CellRanger-9.0.0.eb new file mode 100644 index 00000000000..b25f6cc0d72 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRanger/CellRanger-9.0.0.eb @@ -0,0 +1,31 @@ +# The STAR binary included in this version has been vectorized with AVX +# hence it is not recommended for systems that do not support it. + +easyblock = 'Tarball' + +name = 'CellRanger' +version = '9.0.0' + +homepage = 'https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/what-is-cell-ranger' +description = """Cell Ranger is a set of analysis pipelines that process Chromium + single-cell RNA-seq output to align reads, generate gene-cell matrices and perform + clustering and gene expression analysis.""" + +toolchain = SYSTEM + +download_instructions = """ +Download manually from https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest +""" +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d57e574630bc0871299ba0e3e3b9a770b572cd35a819c52bfd58403ccd72035d'] + +keepsymlinks = True + +sanity_check_paths = { + 'files': ['bin/cellranger'], + 'dirs': ['bin/rna', 'bin/tenkit'], +} + +sanity_check_commands = ['cellranger testrun --id=tiny'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cellformer/Cellformer-20240917-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/c/Cellformer/Cellformer-20240917-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..7cf1b554f0d --- /dev/null +++ b/easybuild/easyconfigs/c/Cellformer/Cellformer-20240917-foss-2023a-R-4.3.2.eb @@ -0,0 +1,180 @@ +easyblock = 'Tarball' + +name = 'Cellformer' +version = '20240917' +versionsuffix = '-R-%(rver)s' +local_commit = '99a1165' + +homepage = 'https://github.com/elo-nsrb/Cellformer' +description = '''An implementation of Cellformer from our publication: Berson et al. + "Whole genome deconvolution unveils Alzheimer’s resilient epigenetic signature"''' + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/elo-nsrb/Cellformer/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['7cbddad75a4d47dfc0a39cd660ef20fe4e3cb755631b1b96136c1c3d5226c914'] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('PyTorch-bundle', '2.1.2'), + ('scikit-learn', '1.3.1'), + ('PyTorch-Lightning', '2.2.1'), + ('anndata', '0.10.5.post1'), + ('h5py', '3.9.0'), + ('SciPy-bundle', '2023.07'), + ('Seaborn', '0.13.2'), + ('tensorboard', '2.15.1'), + ('tensorboardX', '2.6.2.2'), + ('torchvision', '0.16.0'), + ('tqdm', '4.66.1'), + ('scanpy', '1.9.8'), + ('pretty-yaml', '24.7.0'), + ('Arrow', '14.0.1'), + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('R-bundle-Bioconductor', '3.18', versionsuffix), + ('ArchR', '1.0.2', versionsuffix), + ('typing-extensions', '4.9.0'), + ('einops', '0.7.0'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'installopts': '', +} + +exts_list = [ + ('asteroid_filterbanks', '0.4.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['4932ac8b6acc6e08fb87cbe8ece84215b5a74eee284fe83acf3540a72a02eaf5'], + }), + ('huggingface_hub', '0.25.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['1897caf88ce7f97fe0110603d8f66ac264e3ba6accdf30cd66cc0fed5282ad25'], + }), + ('julius', '0.2.7', { + 'checksums': ['3c0f5f5306d7d6016fcc95196b274cae6f07e2c9596eed314e4e7641554fbb08'], + }), + ('cached_property', '1.5.2', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['df4f613cf7ad9a588cc381aaf4a512d26265ecebd5eb9e1ba12f1319eb85a6a0'], + }), + ('mir_eval', '0.7', { + 'checksums': ['e1febaa5766c65a7545c2a170b241490f47a98987370b1e06742424c5debe65e'], + }), + ('pesq', '0.0.4', { + 'checksums': ['b724b28f73fb638522982bd68e8c3c0957e2f45210639a460233b17aa7fc890b'], + }), + ('pb_bss_eval', '0.0.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['a72c2fd04c9f4a4e734cf615029c3877e6e4536225eeaaae05bb0cf014b3af1b'], + }), + ('soundfile', '0.12.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['828a79c2e75abab5359f780c81dccd4953c45a2c4cd4f05ba3e233ddf984b882'], + }), + ('pytorch_ranger', '0.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['1e69156c9cc8439185cb8ba4725b18c91947fbe72743e25aca937da8aeb0c8ec'], + }), + ('torch_optimizer', '0.1.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['b7adaed38b66a5c5105a59b30a71c4ab7c9954baf0acabd969fee3dac954657d'], + }), + ('pystoi', '0.4.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['e277b671663d26d35a2416c9c8010a74084e6c3970354506398051a554896939'], + }), + ('torch_stoi', '0.2.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['6eee85e33b42fe843a2150de46000f72e7b87cbeb19ae6ab9bbd94b6ec6b3cd2'], + }), + ('torchmetrics', '1.4.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['76e67490231acef7f70cf36ab129df72fb2b0256dada7051001ab3b9f8699bf4'], + }), + ('asteroid', '0.7.0', { + # requirement too strict + 'preinstallopts': "sed -i 's/torchmetrics<=0.11.4/torchmetrics/g' setup.py && ", + 'checksums': ['0326f28c5342495cb08ba0520efd0e21e39435dfd78854837fdd5a6c9c9ca410'], + }), + ('everett', '3.1.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['db13891b849e45e54faea93ee79881d12458c5378f5b9b7f806eeff03ce1de3c'], + }), + ('configobj', '5.0.9', { + 'checksums': ['03c881bbf23aa07bccf1b837005975993c4ab4427ba57f959afdd9d1a2386848'], + }), + ('python_box', '6.1.0', { + 'modulename': 'box', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['bdec0a5f5a17b01fc538d292602a077aa8c641fb121e1900dff0591791af80e8'], + }), + ('sentry_sdk', '2.15.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['8fb0d1a4e1a640172f31502e4503543765a1fe8a9209779134a4ac52d4677303'], + }), + ('wurlitzer', '3.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0b2749c2cde3ef640bf314a9f94b24d929fe1ca476974719a6909dfc568c3aac'], + }), + ('comet_ml', '3.47.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['81062bbef2d0758c8e77d8a469824d2c20ec13b09855c78b51b078203628b8c2'], + }), + ('fast_histogram', '0.14', { + 'checksums': ['390973b98af22bda85c29dcf6f008ba0d626321e9bd3f5a9d7a43e5690ea69ea'], + }), + ('mpl_scatter_density', '0.7', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['721b4efeafcbc0ba4a5c1ecd8f401dc2d1aa6a372445c5b49e1da34e70a95ead'], + }), + ('tensorboard_data_server', '0.7.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['753d4214799b31da7b6d93837959abebbc6afa86e69eacf1e9a317a48daa31eb'], + }), + ('tensorboard_plugin_wit', '1.8.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['ff26bdd583d155aa951ee3b152b3d0cffae8005dc697f72b44a8e8c2a77a8cbe'], + }), + ('torchmetrics', '1.4.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['87b9eca51ff6f93985a0f9db509f646cb45425b016f4d2f383d8c28d40dde5b6'], + }), + ('torchmetrics', '0.11.4', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['45f892f3534e91f3ad9e2488d1b05a93b7cb76b7d037969435a41a1f24750d9a'], + }), +] + +modextrapaths = {'PATH': ''} + +fix_python_shebang_for = [ + 'src/*/*.py', + 'src/*/*/*.py', + 'src/*/*/*/*.py', +] + +local_scripts = [ + 'createPeakMatrix.sh', + 'createDataset.sh', + 'deconvolution.sh', + 'trainModel.sh', + 'validation.sh', +] + +postinstallcmds = [ + "sed -i 's|python |python %(installdir)s/|g' %(installdir)s/*.sh" +] + ['chmod a+rx %%(installdir)s/%s' % script for script in local_scripts] + +sanity_check_paths = { + 'files': local_scripts, + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["%s --help | grep '^Usage:'" % script for script in local_scripts] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cgl/Cgl-0.60.8-foss-2023b.eb b/easybuild/easyconfigs/c/Cgl/Cgl-0.60.8-foss-2023b.eb new file mode 100644 index 00000000000..275169c6992 --- /dev/null +++ b/easybuild/easyconfigs/c/Cgl/Cgl-0.60.8-foss-2023b.eb @@ -0,0 +1,50 @@ +easyblock = "ConfigureMake" + +name = 'Cgl' +version = '0.60.8' + +homepage = "https://github.com/coin-or/Cgl" +description = """The COIN-OR Cut Generation Library (Cgl) is a collection of cut generators that +can be used with other COIN-OR packages that make use of cuts, such as, among +others, the linear solver Clp or the mixed integer linear programming solvers +Cbc or BCP. Cgl uses the abstract class OsiSolverInterface (see Osi) to use or +communicate with a solver. It does not directly call a solver.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/coin-or/Cgl/archive/refs/tags/releases/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1482ba38afb783d124df8d5392337f79fdd507716e9f1fb6b98fc090acd1ad96'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.8'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('CoinUtils', '2.11.10'), + ('Osi', '0.108.9'), + ('Clp', '1.17.9'), +] + +# Use CoinUtils from EB +configopts = '--with-coinutils-lib="-lCoinUtils" ' +configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data ' +# Use Clp from EB +configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" ' +configopts += '--with-clp-datadir=$EBROOTCLP/share/coin/Data ' +# Use Osi from EB (also needs links to Clp due to OsiClpSolver) +configopts += '--with-osi-lib="-lOsiClp -lClpSolver -lClp -lOsi" ' +configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' + +sanity_check_paths = { + 'files': ['lib/libCgl.%s' % SHLIB_EXT], + 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] +} + +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + +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/Clp/Clp-1.17.9-foss-2023b.eb b/easybuild/easyconfigs/c/Clp/Clp-1.17.9-foss-2023b.eb new file mode 100644 index 00000000000..115ff64223e --- /dev/null +++ b/easybuild/easyconfigs/c/Clp/Clp-1.17.9-foss-2023b.eb @@ -0,0 +1,61 @@ +easyblock = 'ConfigureMake' + +name = 'Clp' +version = '1.17.9' + +homepage = "https://github.com/coin-or/Clp" +description = """Clp (Coin-or linear programming) is an open-source linear programming solver. +It is primarily meant to be used as a callable library, but a basic, +stand-alone executable version is also available.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/coin-or/Clp/archive/refs/tags/releases/'] +sources = ['%(version)s.tar.gz'] +checksums = ['b02109be54e2c9c6babc9480c242b2c3c7499368cfca8c0430f74782a694a49f'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.8'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('METIS', '5.1.0'), + ('MUMPS', '5.6.1', '-metis'), + ('CoinUtils', '2.11.10'), + ('Osi', '0.108.9'), + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +# Use BLAS/LAPACK from toolchain +configopts = '--with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK" ' + +# Use METIS AND MUMPS from EB +# --with-metis-lib is ignored +configopts += '--with-metis-lib="-lmetis" ' +configopts += '--with-mumps-lib="-lesmumps -lcmumps -ldmumps -lsmumps -lzmumps -lmumps_common -lpord -lmpi_mpifh ' +configopts += '-lmetis -lscotch -lptscotch -lptscotcherr -lscotcherrexit -lscotcherr $LIBSCALAPACK" ' + +# Disable GLPK because Clp requires headers from its sources +configopts += '--without-glpk ' + +# Use CoinUtils from EB +configopts += '--with-coinutils-lib="-lCoinUtils" ' +configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data ' + +# Use Osi from EB +configopts += '--with-osi-lib="-lOsi" ' +configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' + +sanity_check_paths = { + 'files': ['bin/clp'] + ['lib/lib%s.%s' % (x, SHLIB_EXT) for x in ['Clp', 'ClpSolver', 'OsiClp']], + 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] +} + +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + +moduleclass = "math" diff --git a/easybuild/easyconfigs/c/Cluster-Buster/Cluster-Buster-20240927-GCC-12.3.0.eb b/easybuild/easyconfigs/c/Cluster-Buster/Cluster-Buster-20240927-GCC-12.3.0.eb new file mode 100644 index 00000000000..752cc55bb94 --- /dev/null +++ b/easybuild/easyconfigs/c/Cluster-Buster/Cluster-Buster-20240927-GCC-12.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'MakeCp' + +name = 'Cluster-Buster' +version = '20240927' +local_commit = '06fee8b' + +homepage = 'https://github.com/weng-lab/cluster-buster' +description = """Cluster-Buster is a program for finding interesting functional regions, + such as transcriptional enhancers, in DNA sequences.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/weng-lab/cluster-buster/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCELOWER_TAR_GZ}] +checksums = ['a77583ae1f38cc08af551932e5f6b35185fde78db330270bb2eb32ecb4d926cc'] + +files_to_copy = [(['cbust'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/cbust'], + 'dirs': [], +} + +sanity_check_commands = ['cbust -h'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CodingQuarry/CodingQuarry-2.0-foss-2023a.eb b/easybuild/easyconfigs/c/CodingQuarry/CodingQuarry-2.0-foss-2023a.eb new file mode 100644 index 00000000000..4757b9125f2 --- /dev/null +++ b/easybuild/easyconfigs/c/CodingQuarry/CodingQuarry-2.0-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'MakeCp' + +name = 'CodingQuarry' +version = '2.0' + +homepage = 'https://sourceforge.net/p/codingquarry' +description = "Highly accurate hidden Markov model gene prediction in fungal genomes using RNA-seq transcripts" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['CodingQuarry_v%(version)s.tar.gz'] +patches = ['CodingQuarry-2.0_python3.patch'] +checksums = [ + {'CodingQuarry_v2.0.tar.gz': '1198afbf7cebcf0975c5b20d92b7a2dd6d956072fcde6e86fdce6aeae4842504'}, + {'CodingQuarry-2.0_python3.patch': '8e1b117431d8b104f2114875d8f751aa91c1c3c1b0ddd5a4f85251605c2ab9df'}, +] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), +] + +buildopts = 'CFLAGS="$CFLAGS"' + +files_to_copy = [ + (['CodingQuarry', 'CufflinksGTF_to_CodingQuarryGFF3.py'], 'bin'), + 'QuarryFiles', + 'TESTING', +] + +fix_python_shebang_for = [ + 'bin/CufflinksGTF_to_CodingQuarryGFF3.py', + 'QuarryFiles/scripts/*.py', +] + +sanity_check_paths = { + 'files': ['bin/CodingQuarry', 'bin/CufflinksGTF_to_CodingQuarryGFF3.py'], + 'dirs': ['QuarryFiles/scripts', 'QuarryFiles/self_train', 'QuarryFiles/species', 'TESTING'], +} + +sanity_check_commands = [ + "CodingQuarry --help | grep '^CodingQuarry v. %(version)s'", + "mkdir -p %(builddir)s && cp -a %(installdir)s/TESTING %(builddir)s/TESTING", + "cd %(builddir)s/TESTING && CufflinksGTF_to_CodingQuarryGFF3.py Sp_transcripts.gtf > test.gff3", +] + +modextravars = {'QUARRY_PATH': '%(installdir)s/QuarryFiles'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.10-GCC-13.2.0.eb b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.10-GCC-13.2.0.eb new file mode 100644 index 00000000000..8d9e9c2a4f7 --- /dev/null +++ b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.10-GCC-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'CoinUtils' +version = '2.11.10' + +homepage = "https://github.com/coin-or/CoinUtils" +description = """CoinUtils (Coin-OR Utilities) is an open-source collection of classes and +functions that are generally useful to more than one COIN-OR project.""" + +source_urls = ['https://github.com/coin-or/CoinUtils/archive/refs/tags/releases/'] +sources = ['%(version)s.tar.gz'] +checksums = ['80c7c215262df8d6bd2ba171617c5df844445871e9891ec6372df12ccbe5bcfd'] + +# NOTE: this esyconfig for CoinUtils provides a minimal build not using BLAS/LAPACK or MPI +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.8'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['lib/libCoinUtils.%s' % SHLIB_EXT], + 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] +} + +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + +moduleclass = "math" diff --git a/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..d483a1964f4 --- /dev/null +++ b/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'Compress-Raw-Zlib' +version = '2.213' + +homepage = 'https://metacpan.org/pod/Compress::Raw::Zlib' +description = "Low-Level Interface to zlib or zlib-ng compression library" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/P/PM/PMQS/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['56b21c99cb3a3a7f7876a74dd05daa3f41fc9143ddd4dc98f8e46710a106af45'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Perl', '5.36.1'), + ('zlib', '1.2.13'), +] + +options = {'modulename': 'Compress::Raw::Zlib'} + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/Compress/Raw/Zlib.pm'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..13ea1eaab8d --- /dev/null +++ b/easybuild/easyconfigs/c/Compress-Raw-Zlib/Compress-Raw-Zlib-2.213-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'Compress-Raw-Zlib' +version = '2.213' + +homepage = 'https://metacpan.org/pod/Compress::Raw::Zlib' +description = "Low-Level Interface to zlib or zlib-ng compression library" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/P/PM/PMQS/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['56b21c99cb3a3a7f7876a74dd05daa3f41fc9143ddd4dc98f8e46710a106af45'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Perl', '5.38.2'), + ('zlib', '1.3.1'), +] + +options = {'modulename': 'Compress::Raw::Zlib'} + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/Compress/Raw/Zlib.pm'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..5d28ebcf501 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +# Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeLib' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube general purpose C++ library component and + command-line tools. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d6fdef57b1bc9594f1450ba46cf08f431dd0d4ae595c47e2f3454e17e4ae74f4'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubelib-config', + 'lib/libcube4.a', 'lib/libcube4.%s' % SHLIB_EXT], + 'dirs': ['include/cubelib'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..3039dd547d5 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +# Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeLib' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube general purpose C++ library component and + command-line tools. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d6fdef57b1bc9594f1450ba46cf08f431dd0d4ae595c47e2f3454e17e4ae74f4'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubelib-config', + 'lib/libcube4.a', 'lib/libcube4.%s' % SHLIB_EXT], + 'dirs': ['include/cubelib'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..17faeb9292b --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeWriter' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube high-performance C writer library component. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = ['cubew-%(version)s.tar.gz'] +checksums = ['4f3bcf0622c2429b8972b5eb3f14d79ec89b8161e3c1cc5862ceda417d7975d2'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubew-config', + 'lib/libcube4w.a', 'lib/libcube4w.%s' % SHLIB_EXT], + 'dirs': ['include/cubew'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ccb04669874 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeWriter' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube high-performance C writer library component. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = ['cubew-%(version)s.tar.gz'] +checksums = ['4f3bcf0622c2429b8972b5eb3f14d79ec89b8161e3c1cc5862ceda417d7975d2'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubew-config', + 'lib/libcube4w.a', 'lib/libcube4w.%s' % SHLIB_EXT], + 'dirs': ['include/cubew'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/cisDIVERSITY/cisDIVERSITY-1.1-foss-2023a-Python-2.7.18.eb b/easybuild/easyconfigs/c/cisDIVERSITY/cisDIVERSITY-1.1-foss-2023a-Python-2.7.18.eb new file mode 100644 index 00000000000..bdfa8d0aa77 --- /dev/null +++ b/easybuild/easyconfigs/c/cisDIVERSITY/cisDIVERSITY-1.1-foss-2023a-Python-2.7.18.eb @@ -0,0 +1,56 @@ +easyblock = 'MakeCp' + +name = 'cisDIVERSITY' +version = '1.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/NarlikarLab/cisDIVERSITY/' +description = """A module discovery tool used for finding diverse sequence architectures, +each one characterized by presence or absence of de novo motifs.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/NarlikarLab/cisDIVERSITY/releases/download/v%(version)s/'] +sources = [{ + 'download_filename': '%(name)s_v%(version)s.tar.gz', + 'filename': SOURCE_TAR_GZ, +}] +checksums = ['4ba5967fa754ec78b9dd6b6dc9d2ee5de87dbb4d7906d47e57e73aec87897725'] + +dependencies = [ + ('Python', '2.7.18'), + ('R', '4.3.2'), + ('numpy', '1.16.6', versionsuffix), +] + +exts_defaultclass = 'RPackage' +exts_default_options = { + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz', +} + +exts_list = [ + ('corrplot', '0.95', { + 'checksums': ['84a31f675041e589201b4d640753302abc10ccc2c0ca0a409b5153861989d776'], + }), +] + +files_to_copy = [(['learnDiverseModules'], 'bin')] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': ['bin/learnDiverseModules'], + 'dirs': ['corrplot'], +} + +sanity_check_commands = [ + 'learnDiverseModules -h', + 'Rscript -e "library(corrplot)"', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/cmcrameri/cmcrameri-1.9-gfbf-2023a.eb b/easybuild/easyconfigs/c/cmcrameri/cmcrameri-1.9-gfbf-2023a.eb new file mode 100644 index 00000000000..233c95b977e --- /dev/null +++ b/easybuild/easyconfigs/c/cmcrameri/cmcrameri-1.9-gfbf-2023a.eb @@ -0,0 +1,23 @@ +easyblock = 'PythonBundle' + +name = 'cmcrameri' +version = '1.9' + +homepage = 'https://github.com/callumrollo/cmcrameri' +description = "Python wrapper around Fabio Crameri's perceptually uniform colormaps." + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +exts_list = [ + (name, version, { + 'checksums': ['56faf9b7f53eb03fed450137bec7dc25c1854929d7b841b9c75616fc2c357640'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/columba/columba-1.2-20240326-GCC-13.3.0.eb b/easybuild/easyconfigs/c/columba/columba-1.2-20240326-GCC-13.3.0.eb new file mode 100644 index 00000000000..bbdb6d884b8 --- /dev/null +++ b/easybuild/easyconfigs/c/columba/columba-1.2-20240326-GCC-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'columba' +local_commit = '526b0a0' +version = '1.2-20240326' + +homepage = 'https://github.com/biointec/columba' +description = "Fast Approximate Pattern Matching using Search Schemes" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/biointec/columba/archive'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['018898cf6ba93a974a141b397b68a7df13457e80bf92b1747f7b30c4a0d756f1'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('sparsehash', '2.0.4'), +] + +sanity_check_paths = { + 'files': ['bin/columba', 'bin/columba_build'], + 'dirs': [], +} + +sanity_check_commands = ["columba --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/cooler/cooler-0.10.2-foss-2023b.eb b/easybuild/easyconfigs/c/cooler/cooler-0.10.2-foss-2023b.eb new file mode 100644 index 00000000000..9acbf4cf443 --- /dev/null +++ b/easybuild/easyconfigs/c/cooler/cooler-0.10.2-foss-2023b.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonBundle' + +name = 'cooler' +version = '0.10.2' + +homepage = 'https://open2c.github.io/cooler' +description = """Cooler is a support library for a storage format, also called cooler, used to store + genomic interaction data of any size, such as Hi-C contact matrices.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('h5py', '3.11.0'), + ('PyYAML', '6.0.1'), + ('pyfaidx', '0.8.1.1'), + ('dill', '0.3.8'), + ('multiprocess', '0.70.16'), +] + +exts_list = [ + ('asciitree', '0.3.3', { + 'checksums': ['4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e'], + }), + ('toolz', '1.0.0', { + 'checksums': ['2c86e3d9a04798ac556793bced838816296a2f085017664e4995cb40a1047a02'], + }), + ('cytoolz', '1.0.0', { + 'checksums': ['eb453b30182152f9917a5189b7d99046b6ce90cdf8aeb0feff4b2683e600defd'], + }), + (name, version, { + 'checksums': ['3780a2e69b2ec89882dfc2775de5d9b54ccb79569dc5f042b4851599388112dc'], + }), +] + +moduleclass = 'bio' 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 4b3245085e5..50e8ba054b2 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/DB/DB-18.1.40-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/DB/DB-18.1.40-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a15e88f596d --- /dev/null +++ b/easybuild/easyconfigs/d/DB/DB-18.1.40-GCCcore-13.2.0.eb @@ -0,0 +1,33 @@ +name = 'DB' +version = '18.1.40' + +homepage = 'https://www.oracle.com/technetwork/products/berkeleydb' + +description = """Berkeley DB enables the development of custom data management + solutions, without the overhead traditionally associated with such custom + projects.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +# use http to allow auto-downloading... +source_urls = ['http://download.oracle.com/berkeley-db/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_fix_doc_install.patch'] +checksums = [ + '0cecb2ef0c67b166de93732769abdeba0555086d51de1090df325e18ee8da9c8', # db-18.1.40.tar.gz + '441f48568156f72f02a8662998d293cc7edad687604b4f8af722f21c6db2a52d', # DB-18.1.40_fix_doc_install.patch +] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('OpenSSL', '1.1', '', SYSTEM)] + +sanity_check_paths = { + 'files': ['bin/db_%s' % x for x in ['archive', 'checkpoint', 'convert', 'deadlock', 'dump', 'hotbackup', + 'load', 'log_verify', 'printlog', 'recover', 'replicate', 'stat', + 'tuner', 'upgrade', 'verify']] + + ['include/db.h', 'lib/libdb.a', 'lib/libdb.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.050-GCC-12.3.0.eb b/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.050-GCC-12.3.0.eb new file mode 100644 index 00000000000..eec33081a4c --- /dev/null +++ b/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.050-GCC-12.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'PerlModule' + +name = 'DBD-mysql' +version = '4.050' + +homepage = 'https://metacpan.org/pod/distribution/DBD-mysql/lib/DBD/mysql.pm' +description = "Perl binding for MySQL" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/D/DV/DVEEDEN'] +sources = [SOURCE_TAR_GZ] +checksums = ['4f48541ff15a0a7405f76adc10f81627c33996fbf56c95c26c094444c0928d78'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('MariaDB', '11.6.0'), + ('zlib', '1.2.13'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +options = {'modulename': 'DBD::mysql'} + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%%(perlver)s/%s-linux-thread-multi/DBD/mysql.pm' % ARCH], + 'dirs': ['lib/perl5/site_perl/%%(perlver)s/%s-linux-thread-multi/DBD/mysql' % ARCH], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.051-GCC-13.3.0.eb b/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.051-GCC-13.3.0.eb new file mode 100644 index 00000000000..f8f26485760 --- /dev/null +++ b/easybuild/easyconfigs/d/DBD-mysql/DBD-mysql-4.051-GCC-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'PerlModule' + +name = 'DBD-mysql' +version = '4.051' + +homepage = 'https://metacpan.org/pod/distribution/DBD-mysql/lib/DBD/mysql.pm' +description = "Perl binding for MySQL" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/D/DV/DVEEDEN'] +sources = [SOURCE_TAR_GZ] +checksums = ['16969bfae7a080384167be3fb1803450fde87f7b0e2682276b3f6469fa147864'] + +dependencies = [ + ('Perl', '5.38.2'), + ('Perl-bundle-CPAN', '5.38.2'), + ('MariaDB', '11.7.0'), + ('zlib', '1.3.1'), + ('OpenSSL', '3', '', SYSTEM), +] + +options = {'modulename': 'DBD::mysql'} + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%%(perlver)s/%s-linux-thread-multi/DBD/mysql.pm' % ARCH], + 'dirs': ['lib/perl5/site_perl/%%(perlver)s/%s-linux-thread-multi/DBD/mysql' % ARCH], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/DB_File/DB_File-1.859-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/DB_File/DB_File-1.859-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..7e40f6d223f --- /dev/null +++ b/easybuild/easyconfigs/d/DB_File/DB_File-1.859-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'DB_File' +version = '1.859' + +homepage = 'https://perldoc.perl.org/DB_File.html' +description = """Perl5 access to Berkeley DB version 1.x.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://www.cpan.org/modules/by-module/DB_File/PMQS'] +sources = [SOURCE_TAR_GZ] +checksums = ['5674e0d2cd0b060c4d1253670ea022c64d842a55257f9eb8edb19c0f53e2565c'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Perl', '5.38.0'), + ('DB', '18.1.40'), +] + +preconfigopts = 'env DB_FILE_INCLUDE="$EBROOTDB/include" DB_FILE_LIB="$EBROOTDB/lib" ' + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/DB_File.pm'], + 'dirs': [], +} + +moduleclass = 'data' 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/DFTB+/DFTB+-21.1-intel-2021a.eb b/easybuild/easyconfigs/d/DFTB+/DFTB+-21.1-intel-2021a.eb index 88aa3b1c59d..dd4cc9c4f69 100644 --- a/easybuild/easyconfigs/d/DFTB+/DFTB+-21.1-intel-2021a.eb +++ b/easybuild/easyconfigs/d/DFTB+/DFTB+-21.1-intel-2021a.eb @@ -3,7 +3,7 @@ easyblock = 'CMakeMake' name = 'DFTB+' version = '21.1' -homepage = 'https://www.dftb-plus.info' +homepage = 'https://www.dftbplus.org/' description = """DFTB+ is a fast and efficient versatile quantum mechanical simulation package. It is based on the Density Functional Tight Binding (DFTB) method, containing almost all of the useful extensions which have been developed for the DFTB diff --git a/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb index 41ab35fe649..e625104c846 100644 --- a/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb +++ b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb @@ -3,7 +3,7 @@ easyblock = 'CMakeMake' name = 'DFTB+' version = '24.1' -homepage = 'https://www.dftb-plus.info' +homepage = 'https://www.dftbplus.org/' description = """DFTB+ is a fast and efficient versatile quantum mechanical simulation package. It is based on the Density Functional Tight Binding (DFTB) method, containing almost all of the useful extensions which have been developed for the DFTB @@ -58,7 +58,8 @@ dependencies = [ # Prefer dependencies from EB than bundled sources configopts = '-DHYBRID_CONFIG_METHODS="Find;Submodule;Fetch" ' -configopts += '-DWITH_MPI=1 -DWITH_OMP=1 -DWITH_SDFTD3=1 -DWITH_ELSI=1 -DWITH_MBD=1 -DWITH_UNIT_TESTS=1 ' +configopts += '-DWITH_MPI=1 -DWITH_OMP=1 ' +configopts += '-DWITH_SDFTD3=1 -DWITH_ELSI=1 -DWITH_MBD=1 -DWITH_UNIT_TESTS=1 -DWITH_TBLITE=1 ' configopts += '-DBUILD_SHARED_LIBS=1 -DWITH_API=1 -DWITH_PYTHON=0 ' # Python bindings installed as extension configopts += '-DSCALAPACK_LIBRARY="$LIBSCALAPACK" ' diff --git a/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2022.5.27-foss-2022a.eb b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2022.5.27-foss-2022a.eb new file mode 100644 index 00000000000..c15ae6c7791 --- /dev/null +++ b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2022.5.27-foss-2022a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'Dask-ML' +version = '2022.5.27' + +homepage = 'http://ml.dask.org/' +description = """ +Dask-ML provides scalable machine learning in Python using Dask alongside popular machine +learning libraries like Scikit-Learn, XGBoost, and others. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('scikit-learn', '1.1.2'), + ('dask', '2022.10.0'), + ('numba', '0.56.4'), + ('SciPy-bundle', '2022.05'), +] + +exts_list = [ + ('sparse', '0.14.0', { + 'checksums': ['5f5827a37f6cd6f6730a541f994c95c60a3ae2329e01f4ba21ced5339aea0098'], + }), + ('dask-glm', '0.3.2', { + 'checksums': ['c947a566866698a01d79978ae73233cb5e838ad5ead6085143582c5e930b9a4a'], + }), + ('versioneer', '0.29', { + 'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'], + }), + ('distributed', '2022.10.0', { + 'checksums': ['dcfbc9c528bcd9e4f9686e673956a90172826395ac5b258039e580777d50782f'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('packaging', '20.4', { + 'checksums': ['4357f74f47b9c12db93624a82154e9b120fa8293699949152b22065d556079f8'], + }), + (name, version, { + 'modulename': 'dask_ml', + 'sources': ['dask-ml-%(version)s.tar.gz'], + 'checksums': ['6369d3934192bcc1923fcee84c3fb8fbcceca102137901070ba3f1d9e386cce4'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2024.4.4-foss-2023a.eb b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2024.4.4-foss-2023a.eb new file mode 100644 index 00000000000..caa69766739 --- /dev/null +++ b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2024.4.4-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'Dask-ML' +version = '2024.4.4' + +homepage = 'http://ml.dask.org/' +description = """ +Dask-ML provides scalable machine learning in Python using Dask alongside popular machine +learning libraries like Scikit-Learn, XGBoost, and others. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('hatchling', '1.18.0')] + +dependencies = [ + ('Python', '3.11.3'), + ('scikit-learn', '1.3.1'), + ('dask', '2023.9.2'), + ('numba', '0.58.1'), + ('SciPy-bundle', '2023.07'), +] + +exts_list = [ + ('sparse', '0.15.4', { + # replace use of 'version_file' (which requires setuptools-scm >= 8.0) with 'write_to' + 'preinstallopts': "sed -i 's/^version_file/write_to/' pyproject.toml && ", + 'checksums': ['d4b1c57d24ff0f64f2fd5b5a95b49b7fb84ed207a26d7d58ce2764dcc5c72b84'], + }), + ('dask-glm', '0.3.2', { + 'checksums': ['c947a566866698a01d79978ae73233cb5e838ad5ead6085143582c5e930b9a4a'], + }), + ('distributed', '2023.9.2', { + 'checksums': ['b76b43be6a297c6cc6dc4eac7f5a05a8c6834aaf025ed37395d1d830448d540e'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('packaging', '24.1', { + 'checksums': ['026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002'], + }), + ('dask_ml', version, { + 'checksums': ['7956910a49e1e31944280fdb311adf245da11ef410d67deb7a05c67c7d0c4498'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/d/dask/dask-2024.9.1-gfbf-2024a.eb b/easybuild/easyconfigs/d/dask/dask-2024.9.1-gfbf-2024a.eb new file mode 100644 index 00000000000..d9dbfcefba7 --- /dev/null +++ b/easybuild/easyconfigs/d/dask/dask-2024.9.1-gfbf-2024a.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'dask' +version = '2024.9.1' + +homepage = 'https://dask.org/' +description = """ Dask natively scales Python. Dask provides advanced parallelism for analytics, +enabling performance at scale for the tools you love.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('PyYAML', '6.0.2'), + ('bokeh', '3.6.0'), +] + +exts_list = [ + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('locket', '1.0.0', { + 'checksums': ['5c0d4c052a8bbbf750e056a8e65ccd309086f4f0f18a2eac306a8dfa4112a632'], + }), + ('partd', '1.4.2', { + 'checksums': ['d022c33afbdc8405c226621b015e8067888173d85f7f5ecebb3cafed9a20f02c'], + }), + ('HeapDict', '1.0.1', { + 'checksums': ['8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6'], + }), + ('zict', '3.0.0', { + 'checksums': ['e321e263b6a97aafc0790c3cfb3c04656b7066e6738c37fffcca95d803c9fba5'], + }), + ('tblib', '3.0.0', { + 'checksums': ['93622790a0a29e04f0346458face1e144dc4d32f493714c6c3dff82a4adb77e6'], + }), + (name, version, { + 'checksums': ['06eccc6a68d2882bcd9de24548fa96e8d0da7fbfff0baed3f3c2a526b73dfbb4'], + }), + ('distributed', version, { + 'checksums': ['4d573d89ff4fdde0dd96ad5cfdb843ce8ecef8caf002435bc60d14414dc1e819'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + ('dask-jobqueue', '0.8.5', { + 'checksums': ['f6923f9d7ff894b96efbf706118b2cd37fd37751d567e91c22dfd3e2eaa93202'], + }), +] + +sanity_check_paths = { + 'files': ['bin/dask-%s' % x for x in ['scheduler', 'ssh', 'worker']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["dask-scheduler --help"] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/datalad/datalad-1.1.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/datalad/datalad-1.1.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5d60f3ce96d --- /dev/null +++ b/easybuild/easyconfigs/d/datalad/datalad-1.1.0-GCCcore-13.2.0.eb @@ -0,0 +1,80 @@ +easyblock = 'PythonBundle' + +name = 'datalad' +version = "1.1.0" + +homepage = 'https://www.datalad.org/' +description = "DataLad is a free and open source distributed data management system that keeps track of your data, \ +creates structure, ensures reproducibility, supports collaboration, \ +and integrates with widely used data infrastructure." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), + ('poetry', '1.6.1') +] + +dependencies = [ + ('git-annex', '10.20240531'), + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('tqdm', '4.66.2'), + ('PLY', '3.11'), + ('scikit-build', '0.17.6'), +] + +exts_list = [ + ('humanize', '4.9.0', { + 'checksums': ['582a265c931c683a7e9b8ed9559089dea7edcf6cc95be39a3cbc2c5d5ac2bcfa'], + }), + ('fasteners', '0.19', { + 'checksums': ['b4f37c3ac52d8a445af3a66bce57b33b5e90b97c696b7b984f530cf8f0ded09c'], + }), + ('patool', '2.3.0', { + 'modulename': 'patoolib', + 'checksums': ['498e294fd8c7d50889d65019d431c6867bf3fb1fec5ea2d39d1d39d1215002f8'], + }), + ('annexremote', '1.6.5', { + 'checksums': ['ad0ccdd84a8771ad58922d172ee68b225ece77bf464abe4d24ff91a4896a423e'], + }), + ('looseversion', '1.3.0', { + 'checksums': ['ebde65f3f6bb9531a81016c6fef3eb95a61181adc47b7f949e9c0ea47911669e'], + }), + ('botocore', '1.34.121', { + 'checksums': ['1a8f94b917c47dfd84a0b531ab607dc53570efb0d073d8686600f2d2be985323'], + }), + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('s3transfer', '0.10.2', { + 'checksums': ['0711534e9356d3cc692fdde846b4a1e4b0cb6519971860796e6bc4c7aea00ef6'], + }), + ('boto3', '1.34.121', { + 'checksums': ['ec89f3e0b0dc959c418df29e14d3748c0b05ab7acf7c0b90c839e9f340a659fa'], + }), + ('python_gitlab', '4.5.0', { + 'modulename': 'gitlab', + 'checksums': ['0a106174949819912b9abb4232e39059f83f613177fdb1787097eb84481c64b2'], + }), + ('iso8601', '2.1.0', { + 'checksums': ['6b1d3829ee8921c4301998c909f7829fa9ed3cbdac0d3b16af2d743aed1ba8df'], + }), + (name, version, { + 'checksums': ['3403232696ae0e6cbcec56d7cccfac1be8b5d98f66f235e4751dd44fd9f5e8eb'], + }), +] + +sanity_check_paths = { + 'files': ['bin/datalad'], + 'dirs': [], +} + +sanity_check_commands = [ + "datalad --help", + "datalad --version", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb b/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb index 3e1eb388a12..9fb32627c23 100644 --- a/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb +++ b/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb @@ -22,6 +22,7 @@ dependencies = [ ('Racon', '1.5.0'), ('medaka', '1.11.3'), ('BLAST+', '2.14.1'), + ('cutadapt', '4.9'), ] fix_python_shebang_for = ['decona'] diff --git a/easybuild/easyconfigs/d/dill/dill-0.3.8-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/dill/dill-0.3.8-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..7283219333f --- /dev/null +++ b/easybuild/easyconfigs/d/dill/dill-0.3.8-GCCcore-13.2.0.eb @@ -0,0 +1,23 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonPackage' + +name = 'dill' +version = '0.3.8' + +homepage = 'https://pypi.org/project/dill/' +description = """dill extends python's pickle module for serializing and de-serializing python objects to the majority + of the built-in python types. Serialization is the process of converting an object to a byte stream, and the inverse + of which is converting a byte stream back to on python object hierarchy.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.5'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/dm-control/dm-control-1.0.18-foss-2023a.eb b/easybuild/easyconfigs/d/dm-control/dm-control-1.0.18-foss-2023a.eb new file mode 100644 index 00000000000..395470d977e --- /dev/null +++ b/easybuild/easyconfigs/d/dm-control/dm-control-1.0.18-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'dm-control' +version = '1.0.18' + +homepage = 'https://github.com/deepmind/tree' +description = """ +DeepMind's software stack for physics-based simulation and Reinforcement Learning environments, using MuJoCo physics. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('Bazel', '6.3.1'), # labmaze +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('lxml', '4.9.2'), + ('dm-tree', '0.1.8'), + ('python-mujoco', '3.1.4'), + ('PyOpenGL', '3.1.7'), + ('h5py', '3.9.0'), # extras [h5py] + ('protobuf-python', '4.24.0'), + ('tqdm', '4.66.1'), +] + +exts_list = [ + ('dm-env', '1.6', { + 'checksums': ['a436eb1c654c39e0c986a516cee218bea7140b510fceff63f97eb4fcff3d93de'], + }), + ('labmaze', '1.0.6', { + 'patches': ['labmaze-1.0.6_use-bazel-v6.patch'], + 'checksums': [ + {'labmaze-1.0.6.tar.gz': '2e8de7094042a77d6972f1965cf5c9e8f971f1b34d225752f343190a825ebe73'}, + {'labmaze-1.0.6_use-bazel-v6.patch': '7aea4376952f493d2c2da101ff408577b1f91ae7a957083659497b6926ee226e'}, + ], + }), + (name, version, { + 'sources': ['dm_control-%(version)s.tar.gz'], + 'use_pip_extras': 'h5py', + 'checksums': ['9dc825a7719e0386364417746dd85e5fe0a235f2597a0b13323407b273a3633e'], + }), +] + +options = {'modulename': 'tree'} + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/d/dm-control/labmaze-1.0.6_use-bazel-v6.patch b/easybuild/easyconfigs/d/dm-control/labmaze-1.0.6_use-bazel-v6.patch new file mode 100644 index 00000000000..b8ac319cc40 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-control/labmaze-1.0.6_use-bazel-v6.patch @@ -0,0 +1,35 @@ +From 0db42e859462a3b04c14a0155253b0ca4b9b64c9 Mon Sep 17 00:00:00 2001 +From: Viktor Rehnberg +Date: Tue, 3 Dec 2024 09:54:22 +0000 +Subject: [PATCH] Migrate to Bazel v6 + +--- + bazel/BUILD | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/bazel/BUILD b/bazel/BUILD +index 05458d5..7075c8f 100644 +--- a/bazel/BUILD ++++ b/bazel/BUILD +@@ -24,15 +24,15 @@ licenses(["notice"]) + + config_setting( + name = "linux", +- constraint_values = ["@bazel_tools//platforms:linux"], ++ constraint_values = ["@platforms//os:linux"], + ) + + config_setting( + name = "apple", +- constraint_values = ["@bazel_tools//platforms:osx"], ++ constraint_values = ["@platforms//os:osx"], + ) + + config_setting( + name = "windows", +- constraint_values = ["@bazel_tools//platforms:windows"], ++ constraint_values = ["@platforms//os:windows"], + ) +-- +2.39.3 + 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..9e739404196 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb @@ -0,0 +1,30 @@ +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 +] + +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'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.6.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dorado/dorado-0.6.1-foss-2023a-CUDA-12.1.1.eb index e292bfcc18b..378a9deec6b 100644 --- a/easybuild/easyconfigs/d/dorado/dorado-0.6.1-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/d/dorado/dorado-0.6.1-foss-2023a-CUDA-12.1.1.eb @@ -29,6 +29,7 @@ checksums = [ builddependencies = [ ('binutils', '2.40'), ('CMake', '3.26.3'), + ('patchelf', '0.18.0'), ] dependencies = [ @@ -70,6 +71,22 @@ configopts += "-DDORADO_LIBTORCH_DIR=$EBROOTPYTORCH/lib " # in function `_GLOBAL__sub_I_mutex.cc': mutex.cc:(.text.startup+0x17): undefined reference to `pthread_atfork' configopts += '-DCMAKE_C_FLAGS="$CFLAGS -pthread" ' +# disable CMake fiddling with RPATH when EasyBuild is configured to use RPATH linking +configopts += "$(if %(rpath_enabled)s; then " +configopts += "echo '-DCMAKE_SKIP_INSTALL_RPATH=YES -DCMAKE_SKIP_RPATH=YES'; fi) " + +# CUDA libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); +# by default, CMake sets RUNPATH to '$ORIGIN' rather than RPATH (but that's disabled above) +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " for lib in $(ls %(installdir)s/lib/lib{cu,nv}*.so*); do " + " echo setting RPATH in $lib;" + " patchelf --force-rpath --set-rpath '$ORIGIN' $lib;" + " done;" + "fi", +] + sanity_check_paths = { 'files': ['bin/dorado'], 'dirs': [], diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.7.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dorado/dorado-0.7.3-foss-2023a-CUDA-12.1.1.eb index 0e32e9616ca..9927f0492b4 100644 --- a/easybuild/easyconfigs/d/dorado/dorado-0.7.3-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/d/dorado/dorado-0.7.3-foss-2023a-CUDA-12.1.1.eb @@ -34,6 +34,7 @@ checksums = [ builddependencies = [ ('binutils', '2.40'), ('CMake', '3.26.3'), + ('patchelf', '0.18.0'), ] dependencies = [ @@ -77,7 +78,23 @@ _copts = [ '-DCMAKE_C_FLAGS="$CFLAGS -pthread"', ] -configopts = ' '.join(_copts) +configopts = ' '.join(_copts) + ' ' + +# disable CMake fiddling with RPATH when EasyBuild is configured to use RPATH linking +configopts += "$(if %(rpath_enabled)s; then " +configopts += "echo '-DCMAKE_SKIP_INSTALL_RPATH=YES -DCMAKE_SKIP_RPATH=YES'; fi) " + +# CUDA libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); +# by default, CMake sets RUNPATH to '$ORIGIN' rather than RPATH (but that's disabled above) +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " for lib in $(ls %(installdir)s/lib/lib{cu,nv}*.so*); do " + " echo setting RPATH in $lib;" + " patchelf --force-rpath --set-rpath '$ORIGIN' $lib;" + " done;" + "fi", +] sanity_check_paths = { 'files': ['bin/dorado'], diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.8.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dorado/dorado-0.8.0-foss-2023a-CUDA-12.1.1.eb index bf8dbf8c6a8..778c00e0d6e 100644 --- a/easybuild/easyconfigs/d/dorado/dorado-0.8.0-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/d/dorado/dorado-0.8.0-foss-2023a-CUDA-12.1.1.eb @@ -32,6 +32,7 @@ checksums = [ builddependencies = [ ('binutils', '2.40'), ('CMake', '3.26.3'), + ('patchelf', '0.18.0'), ] dependencies = [ @@ -76,7 +77,23 @@ _copts = [ '-DCMAKE_C_FLAGS="$CFLAGS -pthread"', ] -configopts = ' '.join(_copts) +configopts = ' '.join(_copts) + ' ' + +# disable CMake fiddling with RPATH when EasyBuild is configured to use RPATH linking +configopts += "$(if %(rpath_enabled)s; then " +configopts += "echo '-DCMAKE_SKIP_INSTALL_RPATH=YES -DCMAKE_SKIP_RPATH=YES'; fi) " + +# CUDA libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); +# by default, CMake sets RUNPATH to '$ORIGIN' rather than RPATH (but that's disabled above) +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " for lib in $(ls %(installdir)s/lib/lib{cu,nv}*.so*); do " + " echo setting RPATH in $lib;" + " patchelf --force-rpath --set-rpath '$ORIGIN' $lib;" + " done;" + "fi", +] sanity_check_paths = { 'files': ['bin/dorado'], diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.8.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dorado/dorado-0.8.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..8432e8fcefe --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.8.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,104 @@ +easyblock = 'CMakeMake' + +name = 'dorado' +version = '0.8.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/dorado' +description = """Dorado is a high-performance, easy-to-use, open source basecaller for Oxford Nanopore reads.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/nanoporetech/dorado/archive/'] +sources = [{ + 'git_config': { + 'url': 'https://github.com/nanoporetech', + 'repo_name': name, + 'tag': 'v%(version)s', + 'recursive': True, + }, + 'filename': SOURCE_TAR_GZ, +}] +patches = [ + '%(name)s-0.8.0_dont_install_external_libraries.patch', +] +checksums = [ + None, + '28942b7057af00c574a5e70d33a58b4036fd09ae0b041f45b67581c8dda832b1', +] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), + ('patchelf', '0.18.0'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('OpenSSL', '1.1', '', SYSTEM), + ('PyTorch', '2.1.2', '-CUDA-%(cudaver)s'), + ('HDF5', '1.14.0'), + ('zstd', '1.5.5'), + ('HTSlib', '1.18'), + ('kineto', '0.4.0'), + ('libaec', '1.0.6'), +] + +# don't link to OpenSSL static libraries +# fix for CMake Error "missing: OPENSSL_CRYPTO_LIBRARY" (if only shared OpenSSL libraries are available) +preconfigopts = "sed -i '/OPENSSL_USE_STATIC_LIBS TRUE/d' ../dorado/cmake/OpenSSL.cmake && " +# link in the ssl and crypto libs, to fix: +# undefined reference to symbol 'SSL_get_peer_certificate@@OPENSSL_1_1_0' +preconfigopts += "sed -i 's/OpenSSL::SSL/ssl\\n crypto/g' ../dorado/dorado/utils/CMakeLists.txt && " + +# don't use vendored HTSlib, use provided HTSlib dependency +preconfigopts += "rm -r ../dorado/dorado/3rdparty/htslib/ && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/dorado/utils/CMakeLists.txt && " +preconfigopts += "sed -i '/Htslib.cmake/d' ../dorado/CMakeLists.txt && " +# link with -lhts, not -lhtslib +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/dorado/utils/CMakeLists.txt && " +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/dorado/torch_utils/CMakeLists.txt && " + +# disable treating warnings like errors by stripping out -Werror +# cfr. https://github.com/nanoporetech/dorado/issues/779 +preconfigopts += "sed -i 's/-Werror//g' ../dorado/cmake/Warnings.cmake && " + +_copts = [ + "-DCUDA_TOOLKIT_ROOT_DIR=$EBROOTCUDA", + "-DCMAKE_CUDA_COMPILER=$EBROOTCUDA/bin/nvcc", + '-DOPENSSL_ROOT_DIR=$EBROOTOPENSSL', + "-DDORADO_LIBTORCH_DIR=$EBROOTPYTORCH/lib", + # add -pthread flag (in addition to -lpthread) to avoid linking error: + # in function `_GLOBAL__sub_I_mutex.cc': mutex.cc:(.text.startup+0x17): undefined reference to `pthread_atfork' + '-DCMAKE_C_FLAGS="$CFLAGS -pthread"', +] + +configopts = ' '.join(_copts) + ' ' + +# disable CMake fiddling with RPATH when EasyBuild is configured to use RPATH linking +configopts += "$(if %(rpath_enabled)s; then " +configopts += "echo '-DCMAKE_SKIP_INSTALL_RPATH=YES -DCMAKE_SKIP_RPATH=YES'; fi) " + +# CUDA libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); +# by default, CMake sets RUNPATH to '$ORIGIN' rather than RPATH (but that's disabled above) +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " for lib in $(ls %(installdir)s/lib/lib{cu,nv}*.so*); do " + " echo setting RPATH in $lib;" + " patchelf --force-rpath --set-rpath '$ORIGIN' $lib;" + " done;" + "fi", +] + +sanity_check_paths = { + 'files': ['bin/dorado'], + 'dirs': [], +} + +sanity_check_commands = ["dorado basecaller --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.3.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.3.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..c4b5780f6ee --- /dev/null +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.3.0-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ + +easyblock = 'CMakeMake' + +name = 'double-conversion' +version = '3.3.0' + +homepage = 'https://github.com/google/double-conversion' +description = "Efficient binary-decimal and decimal-binary conversion routines for IEEE doubles." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/google/%(name)s/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['04ec44461850abbf33824da84978043b22554896b552c5fd11a9c5ae4b4d296e'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +# Build static lib, static lib with -fPIC and shared lib +configopts = [ + '', + "-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_STATIC_LIBRARY_SUFFIX_CXX=_pic.a", + '-DBUILD_SHARED_LIBS=ON', +] + + +sanity_check_paths = { + 'files': ['include/double-conversion/%s.h' % h for h in ['bignum', 'cached-powers', 'diy-fp', 'double-conversion', + 'fast-dtoa', 'fixed-dtoa', 'ieee', 'strtod', 'utils']] + + ['lib/libdouble-conversion.%s' % e for e in ['a', SHLIB_EXT]] + ['lib/libdouble-conversion_pic.a'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2024.05.001-foss-2024a.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2024.05.001-foss-2024a.eb new file mode 100644 index 00000000000..8dcbc6ed3f2 --- /dev/null +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2024.05.001-foss-2024a.eb @@ -0,0 +1,46 @@ +# # +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Authors:: Inge Gutheil , Alan O'Cais +# License:: MIT/GPL +# +# # + +name = 'ELPA' +version = '2024.05.001' +local_version = version.replace('.', '_') + +homepage = 'https://elpa.mpcdf.mpg.de/' +description = "Eigenvalue SoLvers for Petaflop-Applications." + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['https://gitlab.mpcdf.mpg.de/elpa/elpa/-/archive/release_%s/' % local_version] +sources = ['{}-release_{}.tar.gz'.format('%(namelower)s', local_version)] +patches = [ + '%(name)s-2023.05.001_fix_hardcoded_perl_path.patch', + '%(name)s-2023.05.001_fix_AVX512_support.patch', +] +checksums = [ + {'elpa-release_2024_05_001.tar.gz': '5e0c685536869bb91c230d70cac5e779ff418575681836f240b3e64e10b23f3e'}, + {'ELPA-2023.05.001_fix_hardcoded_perl_path.patch': + '0548105065777a2ed07dde306636251c4f96e555a801647564de37d1ddd7b0b5'}, + {'ELPA-2023.05.001_fix_AVX512_support.patch': 'ecf08b64fe1da432a218040fa45d4ecfbb3269d58cb018b12da5a2d854bf96be'}, +] + +builddependencies = [ + ('Autotools', '20231222'), + ('Python', '3.12.3'), + ('Perl', '5.38.2'), +] + +preconfigopts = './autogen.sh && export LDFLAGS="-lm $LDFLAGS" && autoreconf && ' + +# When building in parallel, the file test_setup_mpi.mod is sometimes +# used before it is built, leading to an error. This must be a bug in +# the makefile affecting parallel builds. +maxparallel = 1 + + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb b/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb new file mode 100644 index 00000000000..a659656f754 --- /dev/null +++ b/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb @@ -0,0 +1,37 @@ +name = 'ESMF' +version = '8.7.0' + +homepage = 'https://www.earthsystemcog.org/projects/esmf/' +description = """The Earth System Modeling Framework (ESMF) is a suite of software tools for developing + high-performance, multi-component Earth science modeling applications.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True, 'openmp': True, 'cstd': 'c++11', 'pic': True} + +source_urls = ['https://github.com/esmf-org/esmf/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['ESMF-6.1.1_libopts.patch'] +checksums = [ + {'v8.7.0.tar.gz': 'd7ab266e2af8c8b230721d4df59e61aa03c612a95cc39c07a2d5695746f21f56'}, + {'ESMF-6.1.1_libopts.patch': '3851627f07c32a7da55d99072d619942bd3a1d9dd002e1557716158e7aacdaf4'}, +] + +builddependencies = [('CMake', '3.29.3')] + +dependencies = [ + ('netCDF', '4.9.2'), + ('netCDF-Fortran', '4.6.1'), + ('netCDF-C++4', '4.3.1'), + ('libarchive', '3.7.4'), +] + +# disable errors from GCC 10 on mismatches between actual and dummy argument lists (GCC 9 behaviour) +prebuildopts = 'ESMF_F90COMPILEOPTS="${ESMF_F90COMPILEOPTS} -fallow-argument-mismatch"' + +buildopts = 'ESMF_NETCDF_INCLUDE=$EBROOTNETCDFMINFORTRAN/include ' +buildopts += 'ESMF_NETCDF_LIBS="`nc-config --libs` `nf-config --flibs` `ncxx4-config --libs`"' + +# too parallel causes the build to become really slow +maxparallel = 8 + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.0.0_set-correct-CFlags-for-ParaFly.patch b/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.0.0_set-correct-CFlags-for-ParaFly.patch new file mode 100644 index 00000000000..3920012f0c7 --- /dev/null +++ b/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.0.0_set-correct-CFlags-for-ParaFly.patch @@ -0,0 +1,14 @@ +take into account $CFLAGS and $CXXFLAGS set in build environment when building ParaFly +author: Lara Peeters (HPC-UGent) +diff -ru EVidenceModeler.orig/Makefile EVidenceModeler/Makefile +--- EVidenceModeler.orig/Makefile 2024-10-10 09:25:20.000000000 +0200 ++++ EVidenceModeler/Makefile 2024-10-16 10:58:57.509308850 +0200 +@@ -6,7 +6,7 @@ + CC = gcc + + parafly: +- cd plugins/ParaFly && sh ./configure --prefix=`pwd` CXX=$(CXX) CC=$(CC) CFLAGS="-fopenmp" CXXFLAGS="-fopenmp" && $(MAKE) install ++ cd plugins/ParaFly && sh ./configure --prefix=`pwd` CXX=$(CXX) CC=$(CC) CFLAGS="$(CFLAGS) -fopenmp" CXXFLAGS="$(CXXFLAGS) -fopenmp" && $(MAKE) install + + + diff --git a/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.1.0-foss-2023a.eb b/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.1.0-foss-2023a.eb new file mode 100644 index 00000000000..c8e3b4ba0a5 --- /dev/null +++ b/easybuild/easyconfigs/e/EVidenceModeler/EVidenceModeler-2.1.0-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'Tarball' + +name = 'EVidenceModeler' +version = '2.1.0' + +homepage = 'https://github.com/EVidenceModeler/EVidenceModeler' +description = """ EVM provides a flexible and intuitive framework for +combining diverse evidence types into a single automated gene structure annotation system.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [{ + 'filename': '%(name)s-v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/EVidenceModeler', + 'repo_name': '%(name)s', + 'tag': '%(name)s-v%(version)s', + 'recursive': True, + } +}] +patches = ['EVidenceModeler-2.0.0_set-correct-CFlags-for-ParaFly.patch'] +checksums = [ + None, # EVidenceModeler-v2.1.0.tar.gz + '619fc54db10fad3638daa177373c19c9ba4b69dcb80585822bfa9b2500f57d13', + # EVidenceModeler-2.0.0_set-correct-CFlags-for-ParaFly.patch +] + +dependencies = [ + ('PASA', '2.5.3',), +] + +# Install ParaFly +postinstallcmds = ["cd %(installdir)s && rm plugins/ParaFly/bin/ParaFly && make"] + +sanity_check_paths = { + 'files': ['EVidenceModeler', 'plugins/ParaFly/bin/ParaFly'], + 'dirs': ['plugins/ParaFly', 'testing'], +} + +modextrapaths = { + 'EVM_HOME': '', + 'PATH': '', +} + +sanity_check_commands = ["EVidenceModeler -h 2>&1 | grep 'Evidence Modeler'"] + +moduleclass = 'bio' 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..722694a05cf --- /dev/null +++ b/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb @@ -0,0 +1,25 @@ +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'), +] + +exts_list = [ + ('cogapp', '3.4.1', { + 'checksums': ['a806d5db9e318a1a2d3fce988008179168e7db13e5e55b19b79763f9bb9d2982'], + }), + (name, version, { + 'checksums': ['b0fb6e85882cab02208ccd6daa46f80cb9ff1d05764e91bf22920a01d7a6fbfa'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/eggnog-mapper/eggnog-mapper-2.1.12-foss-2023a.eb b/easybuild/easyconfigs/e/eggnog-mapper/eggnog-mapper-2.1.12-foss-2023a.eb new file mode 100644 index 00000000000..2c052639a60 --- /dev/null +++ b/easybuild/easyconfigs/e/eggnog-mapper/eggnog-mapper-2.1.12-foss-2023a.eb @@ -0,0 +1,52 @@ +# Eggnog DB installation instructions: +# 1. 'export EGGNOG_DATA_DIR=//eggnog-mapper-data' +# 2. run 'download_eggnog_data.py' +# 3. Check the expected DB version with 'emapper.py --version' + +easyblock = 'PythonPackage' + +name = 'eggnog-mapper' +version = '2.1.12' + +homepage = 'https://github.com/eggnogdb/eggnog-mapper' +description = """EggNOG-mapper is a tool for fast functional annotation of novel +sequences. It uses precomputed orthologous groups and phylogenies from the +eggNOG database (http://eggnog5.embl.de) to transfer functional information from +fine-grained orthologs only. Common uses of eggNOG-mapper include the annotation +of novel genomes, transcriptomes or even metagenomic gene catalogs.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'eggnogdb' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['b3c53fb0e606a5cfec75cbc84f7c215f57f43ce00d8e50f449513acdad76da73'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('HMMER', '3.4'), + ('DIAMOND', '2.1.8'), + ('prodigal', '2.6.3'), + ('wget', '1.24.5'), + ('MMseqs2', '14-7e284'), + ('XlsxWriter', '3.1.3'), +] + +# strip out (too) strict version requirements for dependencies +preinstallopts = "sed -i 's/==[0-9.]*//g' setup.cfg && " + +sanity_check_paths = { + 'files': ['bin/create_dbs.py', 'bin/download_eggnog_data.py', 'bin/emapper.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'download_eggnog_data.py --help', + 'create_dbs.py --help', + 'emapper.py --version | grep %(version)s', +] + +options = {'modulename': 'eggnogmapper'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/enchant-2/enchant-2-2.6.5-GCCcore-12.3.0.eb b/easybuild/easyconfigs/e/enchant-2/enchant-2-2.6.5-GCCcore-12.3.0.eb index af01c621328..9f66e2f8724 100644 --- a/easybuild/easyconfigs/e/enchant-2/enchant-2-2.6.5-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/e/enchant-2/enchant-2-2.6.5-GCCcore-12.3.0.eb @@ -6,7 +6,7 @@ easyblock = 'ConfigureMake' name = 'enchant-2' version = '2.6.5' -homepage = 'https://github.com/AbiWord/enchant' +homepage = 'http://rrthomas.github.io/enchant/' description = """Enchant aims to provide a simple but comprehensive abstraction for dealing with different spell checking libraries in a consistent way. A client, such as a text editor or word processor, need not know anything about a specific @@ -15,7 +15,7 @@ be added without needing any change to the program using Enchant.""" toolchain = {'name': 'GCCcore', 'version': '12.3.0'} -source_urls = ['https://github.com/AbiWord/enchant/releases/download/v%(version)s'] +source_urls = ['https://github.com/rrthomas/enchant/releases/download/v%(version)s'] sources = ['enchant-%(version)s.tar.gz'] checksums = ['9e8fd28cb65a7b6da3545878a5c2f52a15f03c04933a5ff48db89fe86845728e'] diff --git a/easybuild/easyconfigs/e/epiScanpy/epiScanpy-0.4.0-foss-2023a.eb b/easybuild/easyconfigs/e/epiScanpy/epiScanpy-0.4.0-foss-2023a.eb index 6c8c305250f..fe6e4b9ab50 100644 --- a/easybuild/easyconfigs/e/epiScanpy/epiScanpy-0.4.0-foss-2023a.eb +++ b/easybuild/easyconfigs/e/epiScanpy/epiScanpy-0.4.0-foss-2023a.eb @@ -11,6 +11,10 @@ analysis tool Scanpy (Genome Biology, 2018) [Wolf18].""" toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), diff --git a/easybuild/easyconfigs/e/exiv2/exiv2-0.28.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/e/exiv2/exiv2-0.28.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fba04816180 --- /dev/null +++ b/easybuild/easyconfigs/e/exiv2/exiv2-0.28.3-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'CMakeMake' + +name = 'exiv2' +version = '0.28.3' + +homepage = 'http://www.exiv2.org' +description = """ + Exiv2 is a C++ library and a command line utility to manage image metadata. It provides fast and easy read and write + access to the Exif, IPTC and XMP metadata of digital images in various formats. Exiv2 is available as free software and + with a commercial license, and is used in many projects. +""" + + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/Exiv2/exiv2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['1315e17d454bf4da3cc0edb857b1d2c143670f3485b537d0f946d9ed31d87b70'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('expat', '2.6.2'), + ('Brotli', '1.1.0'), + ('inih', '58'), +] + +sanity_check_paths = { + 'files': ['bin/exiv2', 'lib/libexiv2.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ["exiv2 --help"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/e/expat/expat-2.6.4-GCCcore-14.2.0.eb b/easybuild/easyconfigs/e/expat/expat-2.6.4-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..e4ced852952 --- /dev/null +++ b/easybuild/easyconfigs/e/expat/expat-2.6.4-GCCcore-14.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'expat' +version = '2.6.4' + +homepage = 'https://libexpat.github.io' + +description = """Expat is an XML parser library written in C. It is a stream-oriented parser +in which an application registers handlers for things the parser might find +in the XML document (like start tags).""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/libexpat/libexpat/releases/download/R_%s/' % version.replace('.', '_')] +sources = [SOURCE_TAR_BZ2] +checksums = ['8dc480b796163d4436e6f1352e71800a774f73dbae213f1860b60607d2a83ada'] + +builddependencies = [('binutils', '2.42')] + +# Since expat 2.2.6, docbook2X is needed to produce manpage of xmlwf. +# Docbook2X needs XML-Parser and XML-Parser needs expat. +# -> circular dependency. "--without-docbook" breaks this circle. +configopts = ['--without-docbook'] + +sanity_check_paths = { + 'files': ['include/expat.h', 'lib/libexpat.a', 'lib/libexpat.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/FASTA/FASTA-36.3.8i-GCC-12.3.0.eb b/easybuild/easyconfigs/f/FASTA/FASTA-36.3.8i-GCC-12.3.0.eb new file mode 100644 index 00000000000..06fef7f1c92 --- /dev/null +++ b/easybuild/easyconfigs/f/FASTA/FASTA-36.3.8i-GCC-12.3.0.eb @@ -0,0 +1,36 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'MakeCp' + +name = "FASTA" +version = "36.3.8i" +local_version_date = '14-Nov-2020' + +homepage = 'https://fasta.bioch.virginia.edu/fasta_www2/fasta_list2.shtml' +description = """The FASTA programs find regions of local or global (new) similarity between +protein or DNA sequences, either by searching Protein or DNA databases, or by identifying +local duplications within a sequence.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wrpearson/fasta36/archive/'] +sources = ['v%%(version)s_%s.tar.gz' % local_version_date] +checksums = ['b4b1c3c9be6beebcbaf4215368e159d69255e34c0bdbc84affa10cdb473ce008'] + +buildopts = '-C ./src -f ../make/Makefile.linux_sse2 all' + +files_to_copy = ["bin", "conf", "data", "doc", "FASTA_LIST", "misc", "README", "seq", "sql", "test"] + +postinstallcmds = ["cd %(installdir)s/bin && ln -s fasta%(version_major)s fasta"] + +sanity_check_paths = { + 'files': ["FASTA_LIST", "README"] + ['bin/%s' % x for x in ['map_db']] + + ['bin/%s%%(version_major)s' % x for x in ['fasta', 'fastm', 'fastx', 'ggsearch', 'lalign', 'tfastf', + 'tfasts', 'tfasty', 'fastf', 'fasts', 'fasty', 'glsearch', + 'ssearch', 'tfastm', 'tfastx']], + 'dirs': ["conf", "data", "doc", "misc", "seq", "sql", "test"] +} + +sanity_check_commands = ["fasta --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/FDS/FDS-6.9.1-intel-2023a.eb b/easybuild/easyconfigs/f/FDS/FDS-6.9.1-intel-2023a.eb new file mode 100644 index 00000000000..cda862525f9 --- /dev/null +++ b/easybuild/easyconfigs/f/FDS/FDS-6.9.1-intel-2023a.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'FDS' +version = '6.9.1' + +homepage = 'https://pages.nist.gov/fds-smv' +description = """Fire Dynamics Simulator (FDS) is a large-eddy simulation (LES) code for low-speed flows, + with an emphasis on smoke and heat transport from fires.""" + +toolchain = {'name': 'intel', 'version': '2023a'} +toolchainopts = {'pic': True, 'usempi': True, 'openmp': True} + +source_urls = ['https://github.com/firemodels/fds/archive/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['e0fe22d1386dc06512489ddf190dbdbee4c9865856f4a7ca48aec8425b4c0867'] + +unpack_options = '--strip-components=1' + +start_dir = 'Build' + +# just run make in the install dir +skipsteps = ['configure', 'install'] +buildininstalldir = True + +buildopts = 'impi_intel_linux_openmp &&' +buildopts += ' cd %(installdir)s/Build && ln -s fds_impi_intel_linux_openmp fds' + +modextrapaths = {'PATH': 'Build'} + +sanity_check_paths = { + 'files': ['Build/fds'], + 'dirs': [], +} + +sanity_check_commands = [ + "fds 2>&1 | grep 'MPI version'", +] + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2023a.eb b/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2023a.eb new file mode 100644 index 00000000000..37143785fe1 --- /dev/null +++ b/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2023a.eb @@ -0,0 +1,40 @@ +# 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 = 'CMakeMake' + +name = 'FLANN' +version = '1.9.2' + +homepage = 'https://github.com/mariusmuja/flann/' +description = "FLANN is a library for performing fast approximate nearest neighbor searches in high dimensional spaces." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/mariusmuja/flann/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['e26829bb0017f317d9cc45ab83ddcb8b16d75ada1ae07157006c1e7d601c8824'] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('lz4', '1.9.4'), +] + +configopts = "-DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON" + +modextrapaths = {'PYTHONPATH': ['share/flann/python']} + +sanity_check_paths = { + 'files': ['lib/libflann_cpp_s.a', 'lib/libflann_s.a', + 'lib/libflann_cpp.%s' % SHLIB_EXT, 'lib/libflann.%s' % SHLIB_EXT], + 'dirs': ['include/flann', 'lib/pkgconfig', 'share/flann/python'], +} + +sanity_check_commands = ["python -c 'import pyflann'"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FLINT/FLINT-3.1.2-gfbf-2024a.eb b/easybuild/easyconfigs/f/FLINT/FLINT-3.1.2-gfbf-2024a.eb new file mode 100644 index 00000000000..970496a35d0 --- /dev/null +++ b/easybuild/easyconfigs/f/FLINT/FLINT-3.1.2-gfbf-2024a.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'FLINT' +version = '3.1.2' + +homepage = 'https://www.flintlib.org/' + +description = """FLINT (Fast Library for Number Theory) is a C library in support of computations + in number theory. Operations that can be performed include conversions, arithmetic, computing GCDs, + factoring, solving linear systems, and evaluating special functions. In addition, FLINT provides + various low-level routines for fast arithmetic. FLINT is extensively documented and tested.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.flintlib.org'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['fdb3a431a37464834acff3bdc145f4fe8d0f951dd5327c4c6f93f4cbac5c2700'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Python', '3.12.3'), +] + +dependencies = [ + ('GMP', '6.3.0'), + ('MPFR', '4.2.1'), + ('NTL', '11.5.1'), +] + +# Make flexiblas the first to be found and used to avoid linking openblas. +preconfigopts = 'sed -i "s/PATH_SUFFIXES openblas/PATH_SUFFIXES flexiblas openblas/g;' +preconfigopts += 's/accelerate openblas/accelerate flexiblas openblas/g" ' +preconfigopts += '%(builddir)s/%(namelower)s-%(version)s/CMake/FindCBLAS.cmake && ' + +configopts = '-DWITH_NTL=on -DBUILD_TESTING=yes' + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/f/Faiss/Faiss-1.7.4-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/f/Faiss/Faiss-1.7.4-foss-2023a-CUDA-12.1.1.eb index 2b173d3492c..ef890d7f394 100644 --- a/easybuild/easyconfigs/f/Faiss/Faiss-1.7.4-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/f/Faiss/Faiss-1.7.4-foss-2023a-CUDA-12.1.1.eb @@ -59,6 +59,8 @@ postinstallcmds = [ ]) ] +modextrapaths = {'LD_LIBRARY_PATH': "lib/python%(pyshortver)s/site-packages/faiss"} + sanity_check_paths = { 'files': ['lib/lib%%(namelower)s.%s' % SHLIB_EXT], 'dirs': ['include/%(namelower)s', 'lib/python%(pyshortver)s/site-packages/%(namelower)s'], diff --git a/easybuild/easyconfigs/f/FastANI/FastANI-1.34-GCC-13.2.0.eb b/easybuild/easyconfigs/f/FastANI/FastANI-1.34-GCC-13.2.0.eb new file mode 100644 index 00000000000..73ffad70a87 --- /dev/null +++ b/easybuild/easyconfigs/f/FastANI/FastANI-1.34-GCC-13.2.0.eb @@ -0,0 +1,45 @@ +# easybuild easyconfig +# +# John Dey jfdey@fredhutch.org +# +# Updated: Pavel Grochal (INUITS) + +easyblock = 'ConfigureMake' + +name = 'FastANI' +version = '1.34' + +homepage = "https://github.com/ParBLiSS/FastANI" +description = """FastANI is developed for fast alignment-free computation of + whole-genome Average Nucleotide Identity (ANI). ANI is defined as mean + nucleotide identity of orthologous gene pairs shared between two microbial + genomes. FastANI supports pairwise comparison of both complete and draft + genome assemblies.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/ParBLiSS/FastANI/archive'] +sources = ['v%(version)s.zip'] +patches = ['FastANI-1.2-memcpy.patch'] +checksums = [ + {'v1.34.zip': 'cb15540634c725cb46dded7becaff38b27a7f709c0a8589db986674effcc6180'}, + {'FastANI-1.2-memcpy.patch': 'eebcf0b64c31ee360ca79136f644157064ac69747ed13cff70f5c9932c6bb0d5'}, +] + +builddependencies = [('Autotools', '20220317')] + +dependencies = [ + ('GSL', '2.7'), + ('zlib', '1.2.13'), +] + +preconfigopts = 'autoconf && ' + +sanity_check_paths = { + 'files': ['bin/fastANI'], + 'dirs': [] +} + +sanity_check_commands = ["fastANI --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/Fiona/Fiona-1.10.1-foss-2024a.eb b/easybuild/easyconfigs/f/Fiona/Fiona-1.10.1-foss-2024a.eb new file mode 100644 index 00000000000..af7824989a5 --- /dev/null +++ b/easybuild/easyconfigs/f/Fiona/Fiona-1.10.1-foss-2024a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'Fiona' +version = '1.10.1' + +homepage = 'https://github.com/Toblerity/Fiona' +description = """Fiona is designed to be simple and dependable. It focuses on reading and writing data +in standard Python IO style and relies upon familiar Python types and protocols such as files, dictionaries, +mappings, and iterators instead of classes specific to OGR. Fiona can read and write real-world data using +multi-layered GIS formats and zipped virtual file systems and integrates readily with other Python GIS +packages such as pyproj, Rtree, and Shapely.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('GDAL', '3.10.0'), + ('Shapely', '2.0.6'), # optional for 'calc' extras +] + +exts_list = [ + ('cligj', '0.7.2', { + 'checksums': ['a4bc13d623356b373c2c27c53dbd9c68cae5d526270bfa71f6c6fa69669c6b27'], + }), + ('click-plugins', '1.1.1', { + 'checksums': ['46ab999744a9d831159c3411bb0c79346d94a444df9a3a3742e9ed63645f264b'], + }), + ('munch', '4.0.0', { + 'checksums': ['542cb151461263216a4e37c3fd9afc425feeaf38aaa3025cd2a981fadb422235'], + }), + ('%(namelower)s', version, { + 'use_pip_extras': 'calc', + 'checksums': ['b00ae357669460c6491caba29c2022ff0acfcbde86a95361ea8ff5cd14a86b68'], + }), +] + +sanity_check_paths = { + 'files': ['bin/fio'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['fio --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/f/FloPy/FloPy-3.8.2-gfbf-2023a.eb b/easybuild/easyconfigs/f/FloPy/FloPy-3.8.2-gfbf-2023a.eb new file mode 100644 index 00000000000..c8798743438 --- /dev/null +++ b/easybuild/easyconfigs/f/FloPy/FloPy-3.8.2-gfbf-2023a.eb @@ -0,0 +1,23 @@ +easyblock = 'PythonBundle' + +name = 'FloPy' +version = '3.8.2' +homepage = 'https://flopy.readthedocs.io' + +description = "FloPy is a Python package to create, run, and post-process MODFLOW-based models" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +exts_list = [ + ('flopy', version, { + 'checksums': ['0ce2941f4095df2ca1d510f28df57224bdeb90636a3f3beeb199f09f635ddc62'], + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/f/fastparquet/fastparquet-2024.11.0-gfbf-2023a.eb b/easybuild/easyconfigs/f/fastparquet/fastparquet-2024.11.0-gfbf-2023a.eb new file mode 100644 index 00000000000..5a7c470fa25 --- /dev/null +++ b/easybuild/easyconfigs/f/fastparquet/fastparquet-2024.11.0-gfbf-2023a.eb @@ -0,0 +1,248 @@ +easyblock = 'CargoPythonBundle' + +name = 'fastparquet' +version = '2024.11.0' + +homepage = "https://fastparquet.readthedocs.io/" +description = """fastparquet is a python implementation of the parquet format, aiming to integrate +into python-based big data work-flows. It is used implicitly by the projects +Dask, Pandas and intake-parquet.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +builddependencies = [ + ('maturin', '1.4.0', '-Rust-1.75.0'), + ('Autotools', '20220317'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('NASM', '2.16.01'), +] + +crates = [ + ('adler2', '2.0.0'), + ('alloc-no-stdlib', '2.0.4'), + ('alloc-stdlib', '0.2.2'), + ('atty', '0.2.14'), + ('autocfg', '1.4.0'), + ('bitflags', '1.3.2'), + ('bitflags', '2.6.0'), + ('blosc2-rs', '0.3.1+2.15.1'), + ('blosc2-sys', '0.3.1+2.15.1'), + ('brotli', '7.0.0'), + ('brotli-decompressor', '4.0.1'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cbindgen', '0.24.5'), + ('cc', '1.1.30'), + ('cfg-if', '1.0.0'), + ('clap', '3.2.25'), + ('clap_lex', '0.2.4'), + ('cmake', '0.1.51'), + ('copy_dir', '0.1.3'), + ('crc32fast', '1.4.2'), + ('errno', '0.3.9'), + ('fastrand', '2.1.1'), + ('flate2', '1.0.34'), + ('hashbrown', '0.12.3'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('indexmap', '1.9.3'), + ('indoc', '2.0.5'), + ('isal-rs', '0.5.3+496255c'), + ('isal-sys', '0.5.3+496255c'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('libc', '0.2.159'), + ('libcramjam', '0.6.0'), + ('libdeflate-sys', '1.19.3'), + ('libdeflater', '1.19.3'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.12'), + ('log', '0.4.22'), + ('lz4', '1.28.0'), + ('lz4-sys', '1.11.1+lz4-1.10.0'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.4'), + ('memoffset', '0.9.1'), + ('miniz_oxide', '0.8.0'), + ('once_cell', '1.20.2'), + ('os_str_bytes', '6.6.1'), + ('parking_lot', '0.12.3'), + ('parking_lot_core', '0.9.10'), + ('pkg-config', '0.3.31'), + ('portable-atomic', '1.9.0'), + ('proc-macro2', '1.0.87'), + ('pyo3', '0.22.5'), + ('pyo3-build-config', '0.22.5'), + ('pyo3-ffi', '0.22.5'), + ('pyo3-macros', '0.22.5'), + ('pyo3-macros-backend', '0.22.5'), + ('python3-dll-a', '0.2.10'), + ('quote', '1.0.37'), + ('redox_syscall', '0.5.7'), + ('rustix', '0.38.37'), + ('ryu', '1.0.18'), + ('same-file', '1.0.6'), + ('scopeguard', '1.2.0'), + ('serde', '1.0.210'), + ('serde_derive', '1.0.210'), + ('serde_json', '1.0.128'), + ('shlex', '1.3.0'), + ('smallvec', '1.13.2'), + ('snap', '1.1.1'), + ('strsim', '0.10.0'), + ('syn', '1.0.109'), + ('syn', '2.0.79'), + ('target-lexicon', '0.12.16'), + ('tempfile', '3.13.0'), + ('termcolor', '1.4.1'), + ('textwrap', '0.16.1'), + ('toml', '0.5.11'), + ('unicode-ident', '1.0.13'), + ('unindent', '0.2.3'), + ('walkdir', '2.5.0'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.9'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('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'), + ('xz2', '0.1.7'), + ('zstd', '0.13.2'), + ('zstd-safe', '7.2.1'), + ('zstd-sys', '2.0.13+zstd.1.5.6'), +] + +exts_list = [ + ('thrift', '0.21.0', { + 'checksums': ['5e6f7c50f936ebfa23e924229afc95eb219f8c8e5a83202dd4a391244803e402'], + }), + ('cramjam', '2.9.0', { + 'checksums': ['f103e648aa3ebe9b8e2c1a3a92719288d8f3f41007c319ad298cdce2d0c28641'], + }), + (name, version, { + 'checksums': ['e3b1fc73fd3e1b70b0de254bae7feb890436cb67e99458b88cb9bd3cc44db419'], + }), +] + +checksums = [ + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'alloc-no-stdlib-2.0.4.tar.gz': 'cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3'}, + {'alloc-stdlib-0.2.2.tar.gz': '94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.4.0.tar.gz': 'ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'blosc2-rs-0.3.1+2.15.1.tar.gz': 'f35b12fa9d4360d141ea4d445661eaaa10339c89f3d3c788395cb9cad09e564a'}, + {'blosc2-sys-0.3.1+2.15.1.tar.gz': 'bc834b0173a2815db1d366bf248cd3fefdc4302910e82b852497c28463dbda6a'}, + {'brotli-7.0.0.tar.gz': 'cc97b8f16f944bba54f0433f07e30be199b6dc2bd25937444bbad560bcea29bd'}, + {'brotli-decompressor-4.0.1.tar.gz': '9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362'}, + {'bzip2-0.4.4.tar.gz': 'bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cbindgen-0.24.5.tar.gz': '4b922faaf31122819ec80c4047cc684c6979a087366c069611e33649bf98e18d'}, + {'cc-1.1.30.tar.gz': 'b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-3.2.25.tar.gz': '4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123'}, + {'clap_lex-0.2.4.tar.gz': '2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'copy_dir-0.1.3.tar.gz': '543d1dd138ef086e2ff05e3a48cf9da045da2033d16f8538fd76b86cd49b2ca3'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'fastrand-2.1.1.tar.gz': 'e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6'}, + {'flate2-1.0.34.tar.gz': 'a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}, + {'isal-rs-0.5.3+496255c.tar.gz': '4ec7734f9db7ef4c18bac0e94210aaa717c149b168e076ff681a56b342fca9ed'}, + {'isal-sys-0.5.3+496255c.tar.gz': 'aefc9239959a60eaba201ccdd99897b5270be98d01f561c2166f5e3343e5a29b'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'libc-0.2.159.tar.gz': '561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5'}, + {'libcramjam-0.6.0.tar.gz': 'a5833a1191a2cfe22d9da2f9671a8a7421d7256fd05a30a1da15121892654d00'}, + {'libdeflate-sys-1.19.3.tar.gz': 'cc9caa76c8cc6ee8c4efcf8f4514a812ebcad3aa7d3b548efe4d26da1203f177'}, + {'libdeflater-1.19.3.tar.gz': '265a985bd31e5f22e2b2ac107cbed44c6ccf40ae236e46963cd00dd213e4bd03'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.12.tar.gz': '07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'lz4-1.28.0.tar.gz': '4d1febb2b4a79ddd1980eede06a8f7902197960aa0383ffcfdd62fe723036725'}, + {'lz4-sys-1.11.1+lz4-1.10.0.tar.gz': '6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'once_cell-1.20.2.tar.gz': '1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775'}, + {'os_str_bytes-6.6.1.tar.gz': 'e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1'}, + {'parking_lot-0.12.3.tar.gz': 'f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27'}, + {'parking_lot_core-0.9.10.tar.gz': '1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8'}, + {'pkg-config-0.3.31.tar.gz': '953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2'}, + {'portable-atomic-1.9.0.tar.gz': 'cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2'}, + {'proc-macro2-1.0.87.tar.gz': 'b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a'}, + {'pyo3-0.22.5.tar.gz': '3d922163ba1f79c04bc49073ba7b32fd5a8d3b76a87c955921234b8e77333c51'}, + {'pyo3-build-config-0.22.5.tar.gz': 'bc38c5feeb496c8321091edf3d63e9a6829eab4b863b4a6a65f26f3e9cc6b179'}, + {'pyo3-ffi-0.22.5.tar.gz': '94845622d88ae274d2729fcefc850e63d7a3ddff5e3ce11bd88486db9f1d357d'}, + {'pyo3-macros-0.22.5.tar.gz': 'e655aad15e09b94ffdb3ce3d217acf652e26bbc37697ef012f5e5e348c716e5e'}, + {'pyo3-macros-backend-0.22.5.tar.gz': 'ae1e3f09eecd94618f60a455a23def79f79eba4dc561a97324bf9ac8c6df30ce'}, + {'python3-dll-a-0.2.10.tar.gz': 'bd0b78171a90d808b319acfad166c4790d9e9759bbc14ac8273fe133673dd41b'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'redox_syscall-0.5.7.tar.gz': '9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f'}, + {'rustix-0.38.37.tar.gz': '8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'same-file-1.0.6.tar.gz': '93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'serde-1.0.210.tar.gz': 'c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a'}, + {'serde_derive-1.0.210.tar.gz': '243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f'}, + {'serde_json-1.0.128.tar.gz': '6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'snap-1.1.1.tar.gz': '1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.79.tar.gz': '89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590'}, + {'target-lexicon-0.12.16.tar.gz': '61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1'}, + {'tempfile-3.13.0.tar.gz': 'f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b'}, + {'termcolor-1.4.1.tar.gz': '06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755'}, + {'textwrap-0.16.1.tar.gz': '23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9'}, + {'toml-0.5.11.tar.gz': 'f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234'}, + {'unicode-ident-1.0.13.tar.gz': 'e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe'}, + {'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}, + {'walkdir-2.5.0.tar.gz': '29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.9.tar.gz': 'cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, + {'zstd-0.13.2.tar.gz': 'fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9'}, + {'zstd-safe-7.2.1.tar.gz': '54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059'}, + {'zstd-sys-2.0.13+zstd.1.5.6.tar.gz': '38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa'}, +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/fmt/fmt-11.0.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/fmt/fmt-11.0.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..cfb38383787 --- /dev/null +++ b/easybuild/easyconfigs/f/fmt/fmt-11.0.2-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'fmt' +version = '11.0.2' + +homepage = 'http://fmtlib.net/' +description = "fmt (formerly cppformat) is an open-source formatting library." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/fmtlib/fmt/releases/download/%(version)s/'] +sources = ['fmt-%(version)s.zip'] +checksums = ['40fc58bebcf38c759e11a7bd8fdc163507d2423ef5058bba7f26280c5b9c5465'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['lib/libfmt.a'], + 'dirs': ['include/fmt', 'lib/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/fsm-lite/fsm-lite-1.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/fsm-lite/fsm-lite-1.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..4343ab3d95a --- /dev/null +++ b/easybuild/easyconfigs/f/fsm-lite/fsm-lite-1.0-GCCcore-12.3.0.eb @@ -0,0 +1,36 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = "MakeCp" + +name = 'fsm-lite' +version = '1.0' + +homepage = "https://github.com/nvalimak/fsm-lite" +description = """A singe-core implemetation of frequency-based substring mining.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/nvalimak/%(name)s/archive/'] +sources = ['v%(version)s-stable.tar.gz'] +checksums = ['f781a9fbab5265bd09b3b5b7e1cba904582ec201c3d30baed36e28a03de3ac61'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), +] + +dependencies = [ + ('sdsl-lite', '2.0.3'), +] + +prebuildopts = "sed -i '1s/.*/SDSL_INSTALL_PREFIX=${EBROOTSDSLMINLITE}/' Makefile && make depend &&" + +files_to_copy = [(['fsm-lite'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/fsm-lite'], + 'dirs': [], +} + +sanity_check_commands = ["fsm-lite --help 2>&1 | grep usage"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/funannotate/funannotate-1.8.17-foss-2023a.eb b/easybuild/easyconfigs/f/funannotate/funannotate-1.8.17-foss-2023a.eb new file mode 100644 index 00000000000..9e618256337 --- /dev/null +++ b/easybuild/easyconfigs/f/funannotate/funannotate-1.8.17-foss-2023a.eb @@ -0,0 +1,89 @@ +easyblock = 'PythonBundle' + +name = 'funannotate' +version = '1.8.17' + +homepage = 'https://funannotate.readthedocs.io' +description = """funannotate is a pipeline for genome annotation (built specifically for fungi, but will also work + with higher eukaryotes)""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +# see also https://github.com/nextgenusfs/funannotate/blob/master/docs/dependencies.rst +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('GOATOOLS', '1.4.5'), + ('matplotlib', '3.7.2'), + ('scikit-learn', '1.3.1'), + ('Seaborn', '0.13.2'), + ('tbl2asn', '20230713'), + ('DBD-mysql', '4.050'), + ('CodingQuarry', '2.0'), + ('Trinity', '2.15.2'), + ('AUGUSTUS', '3.5.0'), + ('BamTools', '2.5.2'), + ('BEDTools', '2.31.0'), + ('BLAST+', '2.14.1'), # provides makeblastdb, tblastn + ('BLAT', '3.7'), + ('DIAMOND', '2.1.8'), + ('eggnog-mapper', '2.1.12'), + ('ETE', '3.1.3'), + ('Exonerate', '2.4.0'), + ('FASTA', '36.3.8i'), + ('GlimmerHMM', '3.0.4c'), + ('GMAP-GSNAP', '2023-04-20'), # provides gmap + ('GeneMark-ET', '4.72'), # provides gmes_petap.pl + ('HISAT2', '2.2.1'), + ('HMMER', '3.4'), # provides hmmscan, hmmsearch + ('kallisto', '0.51.1'), + ('MAFFT', '7.520', '-with-extensions'), + ('minimap2', '2.26'), + ('pigz', '2.8'), + ('Proteinortho', '6.3.2'), + ('Kent_tools', '468'), # provides pslCDnaFilter + ('Salmon', '1.10.3'), + ('SAMtools', '1.18'), + ('SignalP', '6.0h', '-fast'), + ('SNAP-HMM', '20221022'), + ('StringTie', '2.2.3'), + ('tRNAscan-SE', '2.0.12'), + ('tantan', '50'), + ('trimAl', '1.4.1'), + ('Trimmomatic', '0.39', '-Java-11', SYSTEM), + ('BioPerl', '1.7.8'), + ('EVidenceModeler', '2.1.0'), +] + +exts_list = [ + ('distro', '1.9.0', { + 'checksums': ['2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + (name, version, { + 'checksums': ['bdadfd7a5636383c1c40c26dab37c5908a77e8c4064adced84f1ba9e86187a04'], + 'preinstallopts': ( + """sed -i 's|REQUIRES_PYTHON = ">=3.6.0, <3.10"|REQUIRES_PYTHON = ">=3.6.0"|' setup.py && """ + """sed -i 's|"biopython<1.80",|"biopython",|' setup.py && """ + ) + }), +] + +sanity_check_paths = { + 'files': ['bin/funannotate'], + 'dirs': [], +} + +modextrapaths = { + 'GENEMARK_PATH': '$EBROOTGENEMARKMINET', +} + +sanity_check_commands = [ + "funannotate --help 2>&1 | grep 'Usage:[ ]*funannotate'", + "funannotate check --show-versions", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GATK/GATK-4.3.0.0-GCCcore-12.3.0-Java-11.eb b/easybuild/easyconfigs/g/GATK/GATK-4.3.0.0-GCCcore-12.3.0-Java-11.eb new file mode 100644 index 00000000000..c5247c1cf5a --- /dev/null +++ b/easybuild/easyconfigs/g/GATK/GATK-4.3.0.0-GCCcore-12.3.0-Java-11.eb @@ -0,0 +1,55 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 Cyprus Institute / CaSToRC, University of Luxembourg / LCSB +# Authors:: George Tsouloupas , Fotis Georgatos , +# Kenneth Hoste (UGent) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# Modified by: Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Modified for version 4.0.5.1 by: Ruben van Dijk, University of Groningen +# Modified for version 4.2.3.0 by: J. Sassmannshausen / GSTT +# Modified for version 4.4.0.0 by: Thomas Eylenbosch / Gluo NV +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.3.0.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.broadinstitute.org/gatk/' +description = """The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute + to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, + with a primary focus on variant discovery and genotyping as well as strong emphasis on + data quality assurance. Its robust architecture, powerful processing engine and + high-performance computing features make it capable of taking on projects of any size.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['e2c27229b34c3e22445964adf00639a0909887bbfcc040f6910079177bc6e2dd'] + +dependencies = [ + ('Java', '11', '', SYSTEM), + ('Python', '3.11.3'), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} + +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GDAL/GDAL-3.10.0-foss-2024a.eb b/easybuild/easyconfigs/g/GDAL/GDAL-3.10.0-foss-2024a.eb new file mode 100644 index 00000000000..131e1fcc81b --- /dev/null +++ b/easybuild/easyconfigs/g/GDAL/GDAL-3.10.0-foss-2024a.eb @@ -0,0 +1,79 @@ +easyblock = 'CMakeMake' + +name = 'GDAL' +version = '3.10.0' + +homepage = 'https://www.gdal.org' +description = """GDAL is a translator library for raster geospatial data formats that is released under an X/MIT style + Open Source license by the Open Source Geospatial Foundation. As a library, it presents a single abstract data model + to the calling application for all supported formats. It also comes with a variety of useful commandline utilities for + data translation and processing.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://download.osgeo.org/%(namelower)s/%(version)s/'] +sources = [SOURCELOWER_TAR_XZ] +patches = ['%(name)s-3.6.2_fix-python-CC-CXX.patch'] +checksums = [ + {'gdal-3.10.0.tar.xz': 'af821a3bcf68cf085724c21c9b53605fd451d83af3c8854d8bf194638eb734a8'}, + {'GDAL-3.6.2_fix-python-CC-CXX.patch': '859b874b0c8ff7626a76d51f008bf05b7f89a35b325bdd1d126d2364154acc63'}, +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('pkgconf', '2.2.0'), + ('Bison', '3.8.2'), +] +dependencies = [ + ('Python', '3.12.3'), + ('netCDF', '4.9.2'), + ('expat', '2.6.2'), + ('GEOS', '3.12.2'), + ('SQLite', '3.45.3'), + ('libarchive', '3.7.4'), + ('libxml2', '2.12.7'), + ('libpng', '1.6.43'), + ('libjpeg-turbo', '3.0.1'), + ('LibTIFF', '4.6.0'), + ('zlib', '1.3.1'), + ('cURL', '8.7.1'), + ('PCRE', '8.45'), + ('PROJ', '9.4.1'), + ('libgeotiff', '1.7.3'), + ('SciPy-bundle', '2024.05'), + ('HDF5', '1.14.5'), + ('HDF', '4.3.0'), + ('Armadillo', '14.0.3'), + ('CFITSIO', '4.4.1'), + ('zstd', '1.5.6'), + ('giflib', '5.2.1'), + ('json-c', '0.17'), + ('Xerces-C++', '3.2.5'), + ('PCRE2', '10.43'), + ('OpenEXR', '3.2.4'), + ('Brunsli', '0.1'), + ('Qhull', '2020.2'), + ('LERC', '4.0.0'), + ('OpenJPEG', '2.5.2'), + ('SWIG', '4.2.1'), +] + +# iterative build for both static and shared libraries +local_configopts_common = "-DGDAL_USE_INTERNAL_LIBS=OFF -DGDAL_USE_MYSQL=OFF " +local_configopts_common += "-DGEOTIFF_INCLUDE_DIR=$EBROOTLIBGEOTIFF/include -DPython_ROOT=$EBROOTPYTHON " + +configopts = [ + local_configopts_common + "-DBUILD_SHARED_LIBS=OFF", + local_configopts_common +] + + +sanity_check_paths = { + 'files': ['lib/libgdal.a', 'lib/libgdal.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["python -c 'import osgeo.%(namelower)s'"] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/GEOS/GEOS-3.12.2-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GEOS/GEOS-3.12.2-GCC-13.3.0.eb new file mode 100644 index 00000000000..6b174f0bf8a --- /dev/null +++ b/easybuild/easyconfigs/g/GEOS/GEOS-3.12.2-GCC-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'GEOS' +version = '3.12.2' + +homepage = 'https://trac.osgeo.org/geos' +description = """GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS)""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://download.osgeo.org/geos/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['34c7770bf0090ee88488af98767d08e779f124fa33437e0aabec8abd4609fec6'] + +builddependencies = [('CMake', '3.29.3')] + +# Build static and shared libraries +configopts = ['', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/geos-config', 'lib/libgeos.%s' % SHLIB_EXT, 'lib/libgeos.a', 'lib/libgeos_c.%s' % SHLIB_EXT, + 'include/geos.h'], + 'dirs': [], +} + +moduleclass = 'math' 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/GMAP-GSNAP/GMAP-GSNAP-2024-09-18-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2024-09-18-GCC-13.3.0.eb new file mode 100644 index 00000000000..25bc1f03a06 --- /dev/null +++ b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2024-09-18-GCC-13.3.0.eb @@ -0,0 +1,54 @@ +# 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 +# 2016-11-07 modified by: +# Adam Huffman +# The Francis Crick Institute + +easyblock = 'ConfigureMake' + +name = 'GMAP-GSNAP' +version = '2024-09-18' + +homepage = 'http://research-pub.gene.com/gmap/' +description = """GMAP: A Genomic Mapping and Alignment Program for mRNA and EST Sequences + GSNAP: Genomic Short-read Nucleotide Alignment Program""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['http://research-pub.gene.com/gmap/src/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GMAP-GSNAP-2024-09-18_fix-source-files-for-haswell.patch', +] +checksums = [ + {'gmap-gsnap-2024-09-18.tar.gz': '00d28c1a8c95295c8edd006cc0d1b5154cabe185de1f5a5dd8ccdb01fab38a18'}, + {'GMAP-GSNAP-2024-09-18_fix-source-files-for-haswell.patch': + 'a7ce5bbc83c16d7d4b5f79cf9d96311943fecb114ecab7c6a45e85e95ba54748'}, +] + +# with these deps you can use standard compressed files +# details in http://research-pub.gene.com/gmap/src/README +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.3.1'), +] + +# GSNAP uses MAX_STACK_READLENGTH to control the use of stack or heap memory depending on the read length +# details in http://research-pub.gene.com/gmap/src/README +# configopts = 'MAX_STACK_READLENGTH=300' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['bin/gmap', 'bin/gsnap'], + 'dirs': [], +} + +sanity_check_commands = [ + "gmap --help", + "gsnap --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2024-09-18_fix-source-files-for-haswell.patch b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2024-09-18_fix-source-files-for-haswell.patch new file mode 100644 index 00000000000..05112c3e4b5 --- /dev/null +++ b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2024-09-18_fix-source-files-for-haswell.patch @@ -0,0 +1,13 @@ +Fix source files for Haswell architecture +diff -ru gmap-2024-09-18.orig/src/select64-common.h gmap-2024-09-18/src/select64-common.h +--- gmap-2024-09-18.orig/src/select64-common.h 2023-10-26 02:31:15.000000000 +0200 ++++ gmap-2024-09-18/src/select64-common.h 2024-10-15 16:51:04.695772640 +0200 +@@ -67,7 +67,7 @@ + return place + kSelectInByte[((x >> place) & 0xFF) | (byteRank << 8)]; + #elif defined(__GNUC__) || defined(__clang__) + // GCC and Clang won't inline the intrinsics. +- uint64_t result = uint64_t(1) << k; ++ uint64_t result = (uint64_t)1 << k; + + asm("pdep %1, %0, %0\n\t" + "tzcnt %0, %0" diff --git a/easybuild/easyconfigs/g/GPAW-setups/GPAW-setups-24.11.0.eb b/easybuild/easyconfigs/g/GPAW-setups/GPAW-setups-24.11.0.eb new file mode 100644 index 00000000000..0e46c1ee9f2 --- /dev/null +++ b/easybuild/easyconfigs/g/GPAW-setups/GPAW-setups-24.11.0.eb @@ -0,0 +1,29 @@ +easyblock = 'Tarball' + +name = 'GPAW-setups' +version = '24.11.0' + +homepage = 'https://wiki.fysik.dtu.dk/gpaw/' +description = """PAW setups for the GPAW Density Functional Theory package. +Users can install setups manually using 'gpaw install-data' or use setups from this package. +The versions of GPAW and GPAW-setups can be intermixed. + +Compared to version 0.9.20000, version 24.1.0 contains an new improved Cr setup with 14 electrons, +which can be manually selected. Otherwise no changes are made, so no results will change. + +Version 21.11.0 contains setups for the Lanthanides. +""" + +toolchain = SYSTEM +source_urls = ['https://wiki.fysik.dtu.dk/gpaw-files/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['964c81cc28f7f91a4686d3d3182c4ebda30efb09d3f96b7f95eae3146499c110'] + +modextrapaths = {'GPAW_SETUP_PATH': ''} + +moduleclass = 'chem' + +sanity_check_paths = { + 'files': ['H.LDA.gz'], + 'dirs': [] +} diff --git a/easybuild/easyconfigs/g/GPAW/GPAW-24.6.0-foss-2024a.eb b/easybuild/easyconfigs/g/GPAW/GPAW-24.6.0-foss-2024a.eb new file mode 100644 index 00000000000..5eb5f251ecd --- /dev/null +++ b/easybuild/easyconfigs/g/GPAW/GPAW-24.6.0-foss-2024a.eb @@ -0,0 +1,46 @@ +easyblock = "PythonPackage" + +name = 'GPAW' +version = '24.6.0' + +homepage = 'https://wiki.fysik.dtu.dk/gpaw/' +description = """GPAW is a density-functional theory (DFT) Python code based on the projector-augmented wave (PAW) + method and the atomic simulation environment (ASE). It uses real-space uniform grids and multigrid methods or + atom-centered basis-functions.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True, 'openmp': False} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + ('GPAW-20.1.0-Add-Easybuild-configuration-files.patch', 1), +] +checksums = [ + {'gpaw-24.6.0.tar.gz': 'fb48ef0db48c0e321ce5967126a47900bba20c7efb420d6e7b5459983bd8f6f6'}, + {'GPAW-20.1.0-Add-Easybuild-configuration-files.patch': + '2b337399479bf018a86156ed073dd7a78ec8c0df1f28b015f9284c6bf9fa5f15'}, +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('ASE', '3.23.0'), + ('libxc', '6.2.2'), + ('libvdwxc', '0.4.0'), + ('ELPA', '2024.05.001'), + ('PyYAML', '6.0.2'), + ('GPAW-setups', '24.1.0', '', SYSTEM), +] + +prebuildopts = 'GPAW_CONFIG=doc/platforms/Linux/EasyBuild/config_foss.py' +preinstallopts = prebuildopts + +sanity_check_paths = { + 'files': ['bin/gpaw%s' % x for x in ['', '-analyse-basis', '-basis', '-plot-parallel-timings', + '-runscript', '-setup', '-upfplot']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'chem' 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..074ac41c006 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb @@ -0,0 +1,80 @@ +# 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], +} + +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'], + }), +] + +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..dc77aa29148 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.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' +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], +} + +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'], + }), +] + +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..4499ff224d1 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb @@ -0,0 +1,84 @@ +# 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], +} + +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'], + }), +] + +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..9a950353a4b --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb @@ -0,0 +1,90 @@ +# 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], +} + +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'], + }), +] + +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..cf8db688eaf --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb @@ -0,0 +1,82 @@ +# 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], +} + +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'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GSL/GSL-2.8-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GSL/GSL-2.8-GCC-13.3.0.eb new file mode 100644 index 00000000000..251304ed936 --- /dev/null +++ b/easybuild/easyconfigs/g/GSL/GSL-2.8-GCC-13.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'GSL' +version = '2.8' + +homepage = 'https://www.gnu.org/software/gsl/' +description = """The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. + The library provides a wide range of mathematical routines such as random number generators, special functions + and least-squares fitting.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'unroll': True, 'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6a99eeed15632c6354895b1dd542ed5a855c0f15d9ad1326c6fe2b2c9e423190'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['gsl-config', 'gsl-histogram', 'gsl-randist']] + + ['include/gsl/gsl_types.h'] + + ['lib/lib%s.%s' % (x, SHLIB_EXT) for x in ['gsl', 'gslcblas']], + 'dirs': [], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.2.0.eb b/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.2.0.eb new file mode 100644 index 00000000000..014fbdb6aba --- /dev/null +++ b/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.2.0.eb @@ -0,0 +1,43 @@ +easyblock = 'MesonNinja' + +name = 'GST-plugins-base' +version = '1.24.8' + +homepage = 'https://gstreamer.freedesktop.org/' +description = """GStreamer is a library for constructing graphs of media-handling + components. The applications it supports range from simple + Ogg/Vorbis playback, audio/video streaming to complex audio + (mixing) and video (non-linear editing) processing.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://gstreamer.freedesktop.org/src/gst-plugins-base'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['10fb31743750ccd498d3933e8aaecda563ebc65596a6ab875b47ee936e4b9599'] + +builddependencies = [ + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('GObject-Introspection', '1.78.1'), + ('gettext', '0.22'), + ('pkgconf', '2.0.3'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('GLib', '2.78.1'), + ('GStreamer', '1.24.8'), + ('Gdk-Pixbuf', '2.42.10'), + ('X11', '20231019'), + ('Mesa', '23.1.9'), + ('Graphene', '1.10.8'), +] + +sanity_check_paths = { + 'files': ['bin/gst-%s-1.0' % x for x in ['discoverer', 'play', 'device-monitor']] + + ['lib/libgst%s-1.0.%s' % (x, SHLIB_EXT) for x in ['app', 'audio', 'video']], + 'dirs': ['include', 'share'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.3.0.eb new file mode 100644 index 00000000000..13311a9a434 --- /dev/null +++ b/easybuild/easyconfigs/g/GST-plugins-base/GST-plugins-base-1.24.8-GCC-13.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'MesonNinja' + +name = 'GST-plugins-base' +version = '1.24.8' + +homepage = 'https://gstreamer.freedesktop.org/' +description = """GStreamer is a library for constructing graphs of media-handling + components. The applications it supports range from simple + Ogg/Vorbis playback, audio/video streaming to complex audio + (mixing) and video (non-linear editing) processing.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://gstreamer.freedesktop.org/src/gst-plugins-base'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['10fb31743750ccd498d3933e8aaecda563ebc65596a6ab875b47ee936e4b9599'] + +builddependencies = [ + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('GObject-Introspection', '1.80.1'), + ('gettext', '0.22.5'), + ('pkgconf', '2.2.0'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('GLib', '2.80.4'), + ('GStreamer', '1.24.8'), + ('Gdk-Pixbuf', '2.42.11'), + ('X11', '20240607'), + ('Mesa', '24.1.3'), + ('Graphene', '1.10.8'), +] + +sanity_check_paths = { + 'files': ['bin/gst-%s-1.0' % x for x in ['discoverer', 'play', 'device-monitor']] + + ['lib/libgst%s-1.0.%s' % (x, SHLIB_EXT) for x in ['app', 'audio', 'video']], + 'dirs': ['include', 'share'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.2.0.eb b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.2.0.eb new file mode 100644 index 00000000000..4b2634beaaa --- /dev/null +++ b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.2.0.eb @@ -0,0 +1,47 @@ +easyblock = 'MesonNinja' + +name = 'GStreamer' +version = '1.24.8' + +homepage = 'https://gstreamer.freedesktop.org/' +description = """GStreamer is a library for constructing graphs of media-handling + components. The applications it supports range from simple + Ogg/Vorbis playback, audio/video streaming to complex audio + (mixing) and video (non-linear editing) processing.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://%(namelower)s.freedesktop.org/src/%(namelower)s'] +sources = [SOURCELOWER_TAR_XZ] +patches = ['%(name)s-1.24_fix_bad_suid.patch'] +checksums = ['b807dbf36c5d2b3ce1c604133ed0c737350f9523ce4d8d644a1177c5f9d6ded3', # gstreamer-1.24.8.tar.xz + 'e40c8b195cc9d44f2d9b92e57608e097ef8dac6fa761c5610fcb836f88610cb1', # %(name)s-1.24_fix_bad_suid.patch + ] + +builddependencies = [ + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('Perl', '5.38.0'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('GObject-Introspection', '1.78.1'), + ('gettext', '0.22'), + ('pkgconf', '2.0.3'), +] +dependencies = [ + ('Python', '3.11.5'), + ('zlib', '1.2.13'), + ('GMP', '6.3.0'), + ('GSL', '2.7'), + ('GLib', '2.78.1'), + ('libunwind', '1.6.2'), + ('elfutils', '0.190'), +] + + +sanity_check_paths = { + 'files': [], + 'dirs': ['include', 'share', 'libexec'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.3.0.eb new file mode 100644 index 00000000000..5c3ef3f7b45 --- /dev/null +++ b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24.8-GCC-13.3.0.eb @@ -0,0 +1,47 @@ +easyblock = 'MesonNinja' + +name = 'GStreamer' +version = '1.24.8' + +homepage = 'https://gstreamer.freedesktop.org/' +description = """GStreamer is a library for constructing graphs of media-handling + components. The applications it supports range from simple + Ogg/Vorbis playback, audio/video streaming to complex audio + (mixing) and video (non-linear editing) processing.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://%(namelower)s.freedesktop.org/src/%(namelower)s'] +sources = [SOURCELOWER_TAR_XZ] +patches = ['%(name)s-1.24_fix_bad_suid.patch'] +checksums = ['b807dbf36c5d2b3ce1c604133ed0c737350f9523ce4d8d644a1177c5f9d6ded3', # gstreamer-1.24.8.tar.xz + 'e40c8b195cc9d44f2d9b92e57608e097ef8dac6fa761c5610fcb836f88610cb1', # %(name)s-1.24_fix_bad_suid.patch + ] + +builddependencies = [ + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('Perl', '5.38.2'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('GObject-Introspection', '1.80.1'), + ('gettext', '0.22.5'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('Python', '3.12.3'), + ('zlib', '1.3.1'), + ('GMP', '6.3.0'), + ('GSL', '2.8'), + ('GLib', '2.80.4'), + ('libunwind', '1.8.1'), + ('elfutils', '0.191'), +] + + +sanity_check_paths = { + 'files': [], + 'dirs': ['include', 'share', 'libexec'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24_fix_bad_suid.patch b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24_fix_bad_suid.patch new file mode 100644 index 00000000000..c7497079889 --- /dev/null +++ b/easybuild/easyconfigs/g/GStreamer/GStreamer-1.24_fix_bad_suid.patch @@ -0,0 +1,22 @@ +Do NOT make files setuid or try to do setcap. +That's a recipe for disaster. +Åke Sandgren, 20221031 +Stefan Wolfsheimer, upated to version 1.24.8 + +--- gstreamer-1.24.8.orig/libs/gst/helpers/ptp/ptp_helper_post_install.sh 2024-09-19 12:01:21.000000000 +0200 ++++ gstreamer-1.24.8/libs/gst/helpers/ptp/ptp_helper_post_install.sh 2024-10-22 17:43:55.971711002 +0200 +@@ -11,14 +11,10 @@ + setuid-root) + echo "$0: permissions before: " + ls -l "$ptp_helper" +- chown root "$ptp_helper" || true +- chmod u+s "$ptp_helper" || true + echo "$0: permissions after: " + ls -l "$ptp_helper" + ;; + capabilities) +- echo "Calling $setcap cap_sys_nice,cap_net_bind_service,cap_net_admin+ep $ptp_helper" +- $setcap cap_sys_nice,cap_net_bind_service,cap_net_admin+ep "$ptp_helper" || true + ;; + none) + echo "No perms/caps to set for $ptp_helper" diff --git a/easybuild/easyconfigs/g/GTDB-Tk/GTDB-Tk-2.4.0-foss-2023a.eb b/easybuild/easyconfigs/g/GTDB-Tk/GTDB-Tk-2.4.0-foss-2023a.eb index 8e5019ce728..21c787679d2 100644 --- a/easybuild/easyconfigs/g/GTDB-Tk/GTDB-Tk-2.4.0-foss-2023a.eb +++ b/easybuild/easyconfigs/g/GTDB-Tk/GTDB-Tk-2.4.0-foss-2023a.eb @@ -19,7 +19,7 @@ dependencies = [ ('prodigal', '2.6.3'), ('HMMER', '3.4'), ('pplacer', '1.1.alpha19', '', SYSTEM), - ('FastANI', '1.34'), + ('skani', '0.2.2'), ('FastTree', '2.1.11'), ('Mash', '2.3'), ('tqdm', '4.66.1'), diff --git a/easybuild/easyconfigs/g/GTK3/GTK3-3.24.42-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GTK3/GTK3-3.24.42-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2df9a346d4a --- /dev/null +++ b/easybuild/easyconfigs/g/GTK3/GTK3-3.24.42-GCCcore-13.3.0.eb @@ -0,0 +1,72 @@ +easyblock = 'Bundle' + +name = 'GTK3' +version = '3.24.42' + +homepage = 'https://developer.gnome.org/gtk3/stable/' +description = """GTK+ is the primary library used to construct user interfaces in GNOME. It + provides all the user interface controls, or widgets, used in a common + graphical application. Its object-oriented API allows you to construct + user interfaces without dealing with the low-level details of drawing and + device interaction. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), +] + +dependencies = [ + ('ATK', '2.38.0'), + ('at-spi2-atk', '2.38.0'), + ('cairo', '1.18.0'), + ('Gdk-Pixbuf', '2.42.11'), + ('GLib', '2.80.4'), + ('Pango', '1.54.0'), + ('libepoxy', '1.5.10'), + ('X11', '20240607'), + ('FriBidi', '1.0.15'), + ('Wayland', '1.23.0'), +] + +default_easyblock = 'MesonNinja' + +default_component_specs = { + 'sources': [SOURCELOWER_TAR_XZ], + 'start_dir': '%(namelower)s-%(version)s', +} + +components = [ + ('GTK+', version, { + 'source_urls': [FTPGNOME_SOURCE], + 'checksums': ['50f89f615092d4dd01bbd759719f8bd380e5f149f6fd78a94725e2de112377e2'], + }), + ('hicolor-icon-theme', '0.18', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://icon-theme.freedesktop.org/releases/'], + 'checksums': ['db0e50a80aa3bf64bb45cbca5cf9f75efd9348cf2ac690b907435238c3cf81d7'], + }), + ('adwaita-icon-theme', '47.0', { + 'source_urls': ['https://ftp.gnome.org/pub/GNOME/sources/%(namelower)s/%(version_major)s'], + 'checksums': ['ad088a22958cb8469e41d9f1bba0efb27e586a2102213cd89cc26db2e002bdfe'], + }), +] + +postinstallcmds = ['gtk-update-icon-cache'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['gtk3-demo', 'gtk3-demo-application', 'gtk3-icon-browser', 'gtk3-widget-factory', + 'gtk-builder-tool', 'gtk-launch', 'gtk-query-immodules-3.0', 'gtk-query-settings', + 'gtk-update-icon-cache']] + + ['lib/%s-%%(version_major)s.%s' % (x, SHLIB_EXT) for x in ['libgailutil', 'libgdk', 'libgtk']], + 'dirs': ['include/%s-%%(version_major)s.0' % x for x in ['gail', 'gtk']] + + ['share/icons/hicolor', 'share/icons/Adwaita'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GlimmerHMM/GlimmerHMM-3.0.4c-GCC-12.3.0.eb b/easybuild/easyconfigs/g/GlimmerHMM/GlimmerHMM-3.0.4c-GCC-12.3.0.eb new file mode 100644 index 00000000000..ad435033f81 --- /dev/null +++ b/easybuild/easyconfigs/g/GlimmerHMM/GlimmerHMM-3.0.4c-GCC-12.3.0.eb @@ -0,0 +1,57 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'MakeCp' + +name = 'GlimmerHMM' +version = '3.0.4c' + +homepage = 'https://ccb.jhu.edu/software/glimmerhmm' +description = """GlimmerHMM is a new gene finder based on a Generalized Hidden Markov Model. + Although the gene finder conforms to the overall mathematical framework of a GHMM, additionally + it incorporates splice site models adapted from the GeneSplicer program and a decision tree adapted + from GlimmerM. It also utilizes Interpolated Markov Models for the coding and noncoding models.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://ccb.jhu.edu/software/%(namelower)s/dl'] +sources = [SOURCE_TAR_GZ] +checksums = ['31ee2ceb8f31338205b2de626d83d0f92d2cd55a04d48a6803193a2d0ad1b4a3'] + +dependencies = [ + ('Perl', '5.36.1'), +] + +start_dir = 'sources' + +# make sure -O0 is not used as compiler option +prebuildopts = "ls makefile train/makefile | xargs sed -i 's/-O0 .*//g' && " + +# also build in 'train' subdirectory to overwrite pre-compiled binaries +buildopts = "&& cd ../train && make" + +local_train_files = ['build1', 'build2', 'build-icm', 'build-icm-noframe', 'erfapp', 'falsecomp', + 'findsites', 'karlin', 'score', 'score2', 'scoreATG', 'scoreATG2', 'scoreSTOP', + 'scoreSTOP2', 'splicescore', 'trainGlimmerHMM'] +files_to_copy = [ + (['sources/%(namelower)s'], 'bin'), + (['train/%s' % x for x in local_train_files], 'bin'), + (['train/*.pm'], 'lib/perl%(perlmajver)s'), + 'trained_dir', 'README', 'train/readme.train', +] + +fix_perl_shebang_for = ['bin/trainGlimmerHMM'] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['trained_dir'], +} + +sanity_check_commands = [ + "%(namelower)s -h", + r"trainGlimmerHMM -h 2>&1 | grep '^[ ]*Train GlimmerHMM module'", +] + +modextrapaths = {'PERL5LIB': 'lib/perl%(perlmajver)s'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GlobalArrays/GlobalArrays-5.8.2-intel-2024a.eb b/easybuild/easyconfigs/g/GlobalArrays/GlobalArrays-5.8.2-intel-2024a.eb new file mode 100644 index 00000000000..40829149482 --- /dev/null +++ b/easybuild/easyconfigs/g/GlobalArrays/GlobalArrays-5.8.2-intel-2024a.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'GlobalArrays' +version = '5.8.2' + +homepage = 'https://hpc.pnl.gov/globalarrays' +description = "Global Arrays (GA) is a Partitioned Global Address Space (PGAS) programming model" + +toolchain = {'name': 'intel', 'version': '2024a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/%(name)s/ga/releases/download/'] +sources = ['v%(version)s/ga-%(version)s.tar.gz'] +checksums = ['51599e4abfe36f05cecfaffa33be19efbe9e9fa42d035fd3f866469b663c22a2'] + +configopts = ' --with-mpi --enable-i8' +configopts += ' --with-blas8="-L$MKLROOT/lib/intel64 -lmkl_sequential -lmkl_intel_ilp64"' +configopts += ' --with-scalapack="-L$MKLROOT/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 ' +configopts += '-lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl"' + +# select armci network as (Comex) MPI-1 two-sided +configopts += ' --with-mpi-ts' + +sanity_check_paths = { + 'files': ['bin/adjust.x', 'bin/collisions.x', 'bin/ga-config', 'lib/libarmci.a', + 'lib/libcomex.a', 'lib/libga.a'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d2ff38adec0 --- /dev/null +++ b/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'MesonNinja' + +name = 'Graphene' +version = '1.10.8' + +homepage = 'https://ebassi.github.io/graphene/' +description = "Graphene is a thin layer of types for graphic libraries" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'ebassi' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['922dc109d2dc5dc56617a29bd716c79dd84db31721a8493a13a5f79109a4a4ed'] + +builddependencies = [ + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), + ('binutils', '2.42'), +] +dependencies = [('GLib', '2.80.4')] + +configopts = "-Dgobject_types=true -Dintrospection=enabled" + +sanity_check_paths = { + 'files': ['lib/libgraphene-1.0.%s' % SHLIB_EXT, 'share/gir-1.0/Graphene-1.0.gir'], + 'dirs': ['include/graphene-1.0', 'lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/GraphicsMagick/GraphicsMagick-1.3.45-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GraphicsMagick/GraphicsMagick-1.3.45-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..63340e41506 --- /dev/null +++ b/easybuild/easyconfigs/g/GraphicsMagick/GraphicsMagick-1.3.45-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'ConfigureMake' + +name = 'GraphicsMagick' +version = '1.3.45' + +homepage = 'http://www.graphicsmagick.org/' +description = """GraphicsMagick is the swiss army knife of image processing.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + SOURCEFORGE_SOURCE, + 'ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/%(version_major_minor)s/', +] +sources = [SOURCE_TAR_XZ] +patches = [ + 'GraphicsMagick_pkgconfig_libtiff.patch' +] +checksums = [ + {'GraphicsMagick-1.3.45.tar.xz': 'dcea5167414f7c805557de2d7a47a9b3147bcbf617b91f5f0f4afe5e6543026b'}, + {'GraphicsMagick_pkgconfig_libtiff.patch': '25b4c5361f30e23c809a078ac4b26e670d2b8341496323480037e2095d969294'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('X11', '20240607'), + ('bzip2', '1.0.8'), + ('freetype', '2.13.2'), + ('libpng', '1.6.43'), + ('libjpeg-turbo', '3.0.1'), + ('LibTIFF', '4.6.0'), + ('libxml2', '2.12.7'), + ('XZ', '5.4.5'), + ('zlib', '1.3.1'), + ('Ghostscript', '10.03.1'), +] + +modextrapaths = {'CPATH': ['include/GraphicsMagick']} + +sanity_check_paths = { + 'files': ['bin/gm', 'lib/libGraphicsMagick.a', 'lib/libGraphicsMagick++.a', + 'lib/libGraphicsMagickWand.a'], + 'dirs': ['include/GraphicsMagick', 'lib/pkgconfig'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-12.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-12.2.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2ad5b88af1c --- /dev/null +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-12.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,99 @@ +easyblock = 'ConfigureMake' + +name = 'Graphviz' +version = '12.2.0' +local_pyver_major = '3' + +homepage = 'https://www.graphviz.org/' +description = """Graphviz is open source graph visualization software. Graph visualization + is a way of representing structural information as diagrams of + abstract graphs and networks. It has important applications in networking, + bioinformatics, software engineering, database and web design, machine learning, + and in visual interfaces for other technical domains.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%(version)s'] +patches = ['%(name)s-8.1.0_skip-install-data-hook.patch'] +sources = [SOURCELOWER_TAR_GZ] + +checksums = [ + {'graphviz-12.2.0.tar.gz': '0063e501fa4642b55f4daf82820b2778bfb7dafa651a862ae5c9810efb8e2311'}, + {'Graphviz-8.1.0_skip-install-data-hook.patch': '834666f1b5a8eff35f30899419e322739d71a2936408b27c8ffb4423a99a38e1'}, +] + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('SWIG', '4.2.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('Java', '21.0.2', '', SYSTEM), + ('Python', '3.12.3'), + ('FriBidi', '1.0.15'), + ('Gdk-Pixbuf', '2.42.11'), + ('Ghostscript', '10.03.1'), + ('GTS', '0.7.6'), + ('libgd', '2.3.3'), + ('Pango', '1.54.0'), + ('Perl', '5.38.2'), + ('Qt6', '6.7.2'), + ('Tcl', '8.6.14'), + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('libjpeg-turbo', '3.0.1'), + ('expat', '2.6.2'), +] + +preconfigopts = './autogen.sh NOCONFIG && ' + +_copts = [ + '--enable-python%s=yes' % local_pyver_major, + '--enable-guile=no --enable-lua=no --enable-ocaml=no', + '--enable-r=no --enable-ruby=no --enable-php=no', + # Use ltdl from libtool in EB + '--enable-ltdl --without-included-ltdl --disable-ltdl-install', + '--with-ltdl-include=$EBROOTLIBTOOL/include --with-ltdl-lib=$EBROOTLIBTOOL/lib', + # Override the hardcoded paths to Java libraries + '--with-javaincludedir=$JAVA_HOME/include --with-javaincludedir=$JAVA_HOME/include/linux', + '--with-javalibdir=$JAVA_HOME/lib', + '--with-expatincludedir=$EBROOTEXPAT/include --with-expatlibdir=$EBROOTEXPAT/lib', + '--with-zincludedir=$EBROOTZLIB/include --with-zlibdir=$EBROOTZLIB/lib', +] + +configopts = ' '.join(_copts) + +prebuildopts = 'qmake -o cmd/gvedit/qMakefile cmd/gvedit/gvedit.pro && ' + +postinstallcmds = ['%(installdir)s/bin/dot -c'] # Writes plugin configuration + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['acyclic', 'bcomps', 'ccomps', 'cluster', 'diffimg', 'dijkstra', 'dot', + 'dot_builtins', 'edgepaint', 'gc', 'gml2gv', 'graphml2gv', 'gv2gml', + 'gvcolor', 'gvedit', 'gvgen', 'gvmap', 'gvmap.sh', 'gvpack', 'gvpr', 'gxl2gv', + 'neato', 'mm2gv', 'nop', 'prune', 'sccmap', 'tred', 'unflatten', + 'vimdot']] + + ['lib/%s.%s' % (x, SHLIB_EXT) for x in ['libcdt', 'libcgraph', 'libgvc', 'libgvpr', + 'libpathplan', 'libxdot']], + 'dirs': ['include', 'lib/graphviz', 'lib/graphviz/java', 'lib/graphviz/python%s' % local_pyver_major, + 'lib/pkgconfig', 'share'] +} + +sanity_check_commands = [ + ("test ! -d $EBROOTTCL/lib/*/graphviz", ''), + ("test ! -d $EBROOTTCL/lib64/*/graphviz", ''), + ('python', '-c "import gv"'), +] + +modextrapaths = { + 'CLASSPATH': 'lib/graphviz/java', + 'LD_LIBRARY_PATH': 'lib/graphviz/java', + 'PYTHONPATH': 'lib/graphviz/python%s' % local_pyver_major, + 'TCLLIBPATH': 'lib/graphviz/tcl', +} + +moduleclass = 'vis' 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..9c03bfe2ce9 --- /dev/null +++ b/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +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')] + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4ce3ac6cdb6adf7946475d7ef31777c26d94bccc377e070a7986bd2d5c515467'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb b/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb index 2175b97e9a4..1a27b2d9af9 100644 --- a/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb +++ b/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb @@ -56,8 +56,8 @@ sanity_check_paths = { sanity_check_commands = [ "gubbins --help", "run_gubbins.py --version", - 'python -c "import gubbins"', - 'python -m pip check', + 'python -s -c "import gubbins"', + 'PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check', ] moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/Gurobi/Gurobi-12.0.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/Gurobi/Gurobi-12.0.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..e16604e53fa --- /dev/null +++ b/easybuild/easyconfigs/g/Gurobi/Gurobi-12.0.0-GCCcore-13.2.0.eb @@ -0,0 +1,57 @@ +name = 'Gurobi' +version = '12.0.0' + +homepage = 'https://www.gurobi.com' +description = """The Gurobi Optimizer is a state-of-the-art solver for mathematical programming. +The solvers in the Gurobi Optimizer were designed from the ground up to exploit modern +architectures and multi-core processors, using the most advanced implementations of the +latest algorithms.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://packages.gurobi.com/%(version_major_minor)s/'] +local_archs = {'aarch64': 'armlinux64', 'x86_64': 'linux64'} +sources = ['gurobi%%(version)s_%s.tar.gz' % local_archs[ARCH]] +patches = ['Gurobi-11.0.0_use-eb-python-gurobi-shell.patch'] +checksums = [ + {'gurobi12.0.0_linux64.tar.gz': 'a2bdc9c1d6bf8eb4e551a184af1ce8d7b0435ea8e7d19a017cc7d53fd5efda12', + 'gurobi12.0.0_armlinux64.tar.gz': '8e1202cbf0866a16fa78c3e4be0fa32888ec912f8ddf333c29561d057964ef86'}, + {'Gurobi-11.0.0_use-eb-python-gurobi-shell.patch': + '566473a3ba4e35b0e74595368f9f4133fc4a3c97cca84154c4b938645786e663'}, +] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +exts_defaultclass = 'PythonPackage' + +exts_list = [ + ('gurobipy', version, { + 'sources': ['gurobipy-%(version)s-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_%(arch)s.whl'], + 'checksums': [{ + 'gurobipy-%(version)s-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_aarch64.whl': + 'fc3892e3d88d0f8a01da75f12f74023d398ef599a9e1add66ed76313733e30fb', + 'gurobipy-%(version)s-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl': + 'a08fb42a5e7cb02cdb993c1381c8b8c5a3baeedcadd56e7288d8458a57b81442', + }], + }), +] + +# remove bundled Python interpreter in favour of the dependency in EB +postinstallcmds = ['rm %(installdir)s/bin/python*'] + +# license is mandatory for installation +# use EB_GUROBI_LICENSE_FILE environment variable, or +# uncomment and modify the following variable: +# license_file = '/path/to/my-license-file' + +modloadmsg = """Gurobi shell based on Python %(pyver)s can be launched with command `gurobi.sh` +Gurobi Python Interface can be loaded in Python %(pyver)s with 'import gurobipy' +""" + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20240531-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240531-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..8ff1261cea3 --- /dev/null +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240531-GCCcore-13.2.0.eb @@ -0,0 +1,49 @@ +easyblock = 'MakeCp' + +name = 'git-annex' +version = '10.20240531' + +homepage = 'https://git-annex.branchable.com' +description = """git-annex allows managing large files with git, without storing the file contents in git. It can sync, +backup, and archive your data, offline and online. Checksums and encryption keep your data safe and secure. Bring the +power and distributed nature of git to bear on your large files with git-annex.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40') +] + +dependencies = [ + ('GHC', '9.10.1', '-x86_64', SYSTEM), + ('Stack', '3.1.1', '-x86_64', SYSTEM), + ('git', '2.42.0'), + ('libnsl', '2.0.1'), +] + +sources = [{ + 'git_config': {'url': 'git://git-annex.branchable.com', + 'repo_name': '%(name)s', + 'tag': '%(version)s', + 'clone_into': '%(name)s-%(version)s', + }, + 'filename': '%(name)s-%(version)s.tar.gz', +}] + +checksums = [None] + +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " +buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" + +files_to_copy = [ + (['git-annex', 'git-annex-shell'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/git-annex', 'bin/git-annex-shell'], + 'dirs': [], +} + +sanity_check_commands = ['git-annex version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..13e699ab12e --- /dev/null +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.2.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.2.0'} + +source_urls = [('https://sourceforge.net/projects/%(name)s/files/%(name)s/%(version)s', 'download')] +sources = [SOURCE_TAR_GZ] +checksums = ['e85a660c1a2a1808ff24f7e69981ffcbac66a45c9dcf711b65610b26ea71379a'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('ncurses', '6.4'), + ('cairo', '1.18.0'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.40'), + ('libgd', '2.3.3'), + ('Pango', '1.51.0'), + ('libcerf', '2.4'), + ('X11', '20231019'), + ('Qt6', '6.6.3'), + ('Lua', '5.4.6'), +] + +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 = '--with-qt=qt6 --without-latex --disable-wxwidgets' + +sanity_check_paths = { + 'files': ['bin/gnuplot'], + 'dirs': [] +} +# make sure that pdf terminal type is available +sanity_check_commands = ["gnuplot -e 'set terminal pdf'"] + +moduleclass = 'vis' 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/g/gperftools/gperftools-2.16-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/gperftools/gperftools-2.16-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1a31ffabd1b --- /dev/null +++ b/easybuild/easyconfigs/g/gperftools/gperftools-2.16-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'gperftools' +version = '2.16' + +homepage = 'https://github.com/gperftools/gperftools' +description = """ +gperftools is a collection of a high-performance multi-threaded malloc() +implementation, plus some pretty nifty performance analysis tools. +Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = '%(name)s' +source_urls = [GITHUB_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['737be182b4e42f5c7f595da2a7aa59ce0489a73d336d0d16847f2aa52d5221b4'] + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), +] +dependencies = [ + ('libunwind', '1.8.1'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = '--enable-libunwind' + +sanity_check_paths = { + 'files': ['bin/pprof', 'lib/libprofiler.a', 'lib/libprofiler.%s' % SHLIB_EXT, + 'lib/libtcmalloc.a', 'lib/libtcmalloc.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/groff/groff-1.23.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/g/groff/groff-1.23.0-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..3f1c7189bb7 --- /dev/null +++ b/easybuild/easyconfigs/g/groff/groff-1.23.0-GCCcore-14.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'groff' +version = '1.23.0' + +homepage = 'https://www.gnu.org/software/groff' +description = """Groff (GNU troff) is a typesetting system that reads plain text mixed with formatting commands + and produces formatted output.""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = ['https://ftp.gnu.org/gnu/groff'] +sources = [SOURCE_TAR_GZ] +checksums = ['6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13'] + +builddependencies = [ + ('binutils', '2.42'), + ('M4', '1.4.19'), +] + +sanity_check_paths = { + 'files': ['bin/groff', 'bin/nroff', 'bin/troff'], + 'dirs': ['lib/groff', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.3.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.3.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..de3ac32380a --- /dev/null +++ b/easybuild/easyconfigs/h/HDF/HDF-4.3.0-GCCcore-13.3.0.eb @@ -0,0 +1,58 @@ +easyblock = 'ConfigureMake' + +name = 'HDF' +version = '4.3.0' + +homepage = 'https://support.hdfgroup.org/products/hdf4/' +description = """ + HDF (also known as HDF4) is a library and multi-object file format for + storing and managing data between machines. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/HDFGroup/hdf4/archive/refs/tags/'] +sources = ['%(namelower)s%(version)s.tar.gz'] +checksums = ['a6639a556650e6ea8632a17b8188a69de844bdff54ce121a1fd5b92c8dd06cb1'] + +builddependencies = [ + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('libjpeg-turbo', '3.0.1'), + ('Szip', '2.1.1'), + ('zlib', '1.3.1'), + ('libtirpc', '1.3.5'), +] + +preconfigopts = "LIBS='-ltirpc' " + +local_common_configopts = '--with-szlib=$EBROOTSZIP CFLAGS="$CFLAGS -I$EBROOTLIBTIRPC/include/tirpc" ' +local_common_configopts += '--includedir=%(installdir)s/include/%(namelower)s ' + +configopts = [ + local_common_configopts, + # Cannot build shared libraries and Fortran... + # https://trac.osgeo.org/gdal/wiki/HDF#IncompatibilitywithNetCDFLibraries + # netcdf must be disabled to allow HDF to be used by GDAL + local_common_configopts + "--enable-shared --disable-fortran --disable-netcdf", +] + + +sanity_check_paths = { + 'files': ['bin/h4cc', 'bin/ncdump', 'lib/libdf.a', 'lib/libhdf4.settings', 'lib/libmfhdf.a', 'lib/libmfhdf.so'], + 'dirs': ['include/%(namelower)s'], +} + +sanity_check_commands = [ + "h4cc --help", + "ncdump -V", +] + +modextrapaths = {'CPATH': 'include/%(namelower)s'} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-gompi-2024a.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-gompi-2024a.eb new file mode 100644 index 00000000000..59171962924 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-gompi-2024a.eb @@ -0,0 +1,27 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.14.5' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/HDFGroup/hdf5/archive'] +sources = ['hdf5_%(version)s.tar.gz'] +checksums = ['c83996dc79080a34e7b5244a1d5ea076abfd642ec12d7c25388e2fdd81d26350'] + +dependencies = [ + ('zlib', '1.3.1'), + ('Szip', '2.1.1'), +] + +postinstallcmds = [ + 'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5c++', + 'sed -i -r "s, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g" %(installdir)s/bin/h5pcc', +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-iimpi-2024a.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-iimpi-2024a.eb new file mode 100644 index 00000000000..153463a2234 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.5-iimpi-2024a.eb @@ -0,0 +1,26 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.14.5' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'iimpi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/HDFGroup/hdf5/archive'] +sources = ['hdf5_%(version)s.tar.gz'] +checksums = ['c83996dc79080a34e7b5244a1d5ea076abfd642ec12d7c25388e2fdd81d26350'] + +# replace src include path with installation dir for $H5BLD_CPPFLAGS +_regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' +postinstallcmds = ['sed -i -r "%s" %%(installdir)s/bin/%s' % (_regex, x) for x in ['h5c++', 'h5pcc']] + +dependencies = [ + ('zlib', '1.3.1'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HOLE2/HOLE2-2.3.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/HOLE2/HOLE2-2.3.1-GCCcore-12.3.0.eb index addf2b3cf87..edcf948c8f3 100644 --- a/easybuild/easyconfigs/h/HOLE2/HOLE2-2.3.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/h/HOLE2/HOLE2-2.3.1-GCCcore-12.3.0.eb @@ -27,7 +27,7 @@ prebuildopts = "".join([ preinstallopts = prebuildopts install_cmd = "make install-all PREFIX=%(installdir)s" -parallel = 1 +maxparallel = 1 local_binary = [ 'bln2gnu', 'capost2gnu', 'grd2gnu', 'hole', 'labqpt', 'make_post2gnu', diff --git a/easybuild/easyconfigs/h/HOMER/HOMER-5.1-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/h/HOMER/HOMER-5.1-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..554852bed54 --- /dev/null +++ b/easybuild/easyconfigs/h/HOMER/HOMER-5.1-foss-2023a-R-4.3.2.eb @@ -0,0 +1,49 @@ +easyblock = 'Binary' + +name = 'HOMER' +version = '5.1' +versionsuffix = '-R-%(rver)s' + +homepage = "http://homer.ucsd.edu/homer/" +description = """HOMER (Hypergeometric Optimization of Motif EnRichment) is a suite of tools for Motif Discovery and + next-gen sequencing analysis. It is a collection of command line programs for unix-style operating systems written + in Perl and C++. HOMER was primarily written as a de novo motif discovery algorithm and is well suited for finding + 8-20 bp motifs in large scale genomics data. HOMER contains many useful tools for analyzing ChIP-Seq, GRO-Seq, + RNA-Seq, DNase-Seq, Hi-C and numerous other types of functional genomics sequencing data sets.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['http://homer.ucsd.edu/homer'] +sources = ['configureHomer.pl'] +checksums = ['ccdaa3004a0e0df0882634671d4a1acc88364761e0e6c7ea329ebbf1eb729537'] + +builddependencies = [ + ('wget', '1.24.5'), + ('Zip', '3.0'), + ('UnZip', '6.0'), +] + +dependencies = [ + ('Perl', '5.36.1'), + ('R', '4.3.2'), + ('SAMtools', '1.18'), + ('R-bundle-Bioconductor', '3.18', versionsuffix) +] + +postinstallcmds = ["cd %(installdir)s && perl ./configureHomer.pl -install homer -version v%(version)s"] + +sanity_check_paths = { + 'files': [ + 'bin/homer', + 'bin/getGenomeTilingPeaks', + 'config.txt', + 'DoughnutDocumentation.pdf', + 'data/accession/homologene.data', + 'motifs/hnf1b.motif', + ], + 'dirs': ['bin', 'data', 'motifs', 'update'], +} + +sanity_check_commands = ["%(namelower)s --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HPX/HPX-1.10.0-foss-2024a.eb b/easybuild/easyconfigs/h/HPX/HPX-1.10.0-foss-2024a.eb new file mode 100644 index 00000000000..110ca403b7c --- /dev/null +++ b/easybuild/easyconfigs/h/HPX/HPX-1.10.0-foss-2024a.eb @@ -0,0 +1,78 @@ +# # +# Author: Benjamin Czaja (benjamin.czaja@surf.nl) +# Institute: SURF(sara) +# +# # +easyblock = 'CMakeNinja' + +name = 'HPX' +version = '1.10.0' + +homepage = 'http://stellar-group.org/libraries/hpx/' +description = """HPX (High Performance ParalleX) is a general purpose C++ runtime system + for parallel and distributed applications of any scale.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/STEllAR-GROUP/%(namelower)s/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['5720ed7d2460fa0b57bd8cb74fa4f70593fe8675463897678160340526ec3c19'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('HDF5', '1.14.5'), + ('Boost', '1.85.0'), + ('hwloc', '2.10.0'), + ('gperftools', '2.16'), +] + +configopts = '-DCMAKE_CXX_COMPILER=g++ ' +configopts += '-DHPX_WITH_MALLOC=tcmalloc ' +configopts += '-DHPX_WITH_HWLOC=TRUE ' +configopts += '-DHPX_WITH_GOOGLE_PERFTOOLS=TRUE ' +configopts += '-DHPX_WITH_NETWORKING=TRUE ' +configopts += '-DHPX_WITH_PARCELPORT_TCP=FALSE ' +configopts += '-DHPX_WITH_PARCELPORT_MPI=TRUE ' +configopts += '-DHPX_WITH_TESTS=FALSE ' +configopts += '-DHPX_WITH_EXAMPLES=TRUE ' +# configopts += '-DHPX_WITH_MAX_CPU_COUNT=128' #this should be handled by a hook for the system +# configopts += '-DHPX_WITH_MAX_CPU_COUNT=' + os.cpu_count() +configopts += '-DHPX_WITH_FETCH_ASIO=TRUE ' + +bin_lib_subdirs = ['lib/%(namelower)s/'] + +local_lib_names = [ + 'libhpx_accumulator.%s' % SHLIB_EXT, + 'libhpx_cancelable_action.%s' % SHLIB_EXT, + 'libhpx_component_storage.%s' % SHLIB_EXT, + 'libhpx_core.%s' % SHLIB_EXT, + 'libhpx_iostreams.%s' % SHLIB_EXT, + 'libhpx_jacobi.%s' % SHLIB_EXT, + 'libhpx_nqueen.%s' % SHLIB_EXT, + 'libhpx_partitioned_vector.%s' % SHLIB_EXT, + 'libhpx_process.%s' % SHLIB_EXT, + 'libhpx_random_mem_access.%s' % SHLIB_EXT, + 'libhpx_simple_central_tuplespace.%s' % SHLIB_EXT, + 'libhpx.%s' % SHLIB_EXT, + 'libhpx_startup_shutdown.%s' % SHLIB_EXT, + 'libhpx_template_accumulator.%s' % SHLIB_EXT, + 'libhpx_template_function_accumulator.%s' % SHLIB_EXT, + 'libhpx_throttle.%s' % SHLIB_EXT, + 'libhpx_unordered.%s' % SHLIB_EXT, +] + +sanity_check_paths = { + 'files': ['lib/%s' % lib for lib in local_lib_names] + + ['include/asio.hpp', 'include/hpx/hpx.hpp'] + + ['bin/hpxcxx', 'bin/hpxrun.py'], + 'dirs': ['bin', 'lib'] + bin_lib_subdirs, +} + +modextrapaths = {'LD_LIBRARY_PATH': bin_lib_subdirs} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/h/HTSlib/HTSlib-1.21-GCC-13.3.0.eb b/easybuild/easyconfigs/h/HTSlib/HTSlib-1.21-GCC-13.3.0.eb new file mode 100644 index 00000000000..2f35f9fa5a2 --- /dev/null +++ b/easybuild/easyconfigs/h/HTSlib/HTSlib-1.21-GCC-13.3.0.eb @@ -0,0 +1,41 @@ +# 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 +# 1.4 modified by: +# Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Updated to 1.14 +# J. Sassmannshausen /GSTT +# Updated to 1.21 jpecar EMBL + +easyblock = 'ConfigureMake' + +name = 'HTSlib' +version = '1.21' + +homepage = 'https://www.htslib.org/' +description = """A C library for reading/writing high-throughput sequencing data. + This package includes the utilities bgzip and tabix""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/samtools/%(namelower)s/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['84b510e735f4963641f26fd88c8abdee81ff4cb62168310ae716636aac0f1823'] + +# cURL added for S3 support +dependencies = [ + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.5'), + ('cURL', '8.7.1'), +] + + +sanity_check_paths = { + 'files': ['bin/bgzip', 'bin/tabix', 'lib/libhts.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'bio' 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 2a66bd6146f..ce34dc93095 100644 --- a/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb +++ b/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb @@ -48,8 +48,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/h/HeFFTe/HeFFTe-2.4.1-foss-2023b-CUDA-12.4.0.eb b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-2.4.1-foss-2023b-CUDA-12.4.0.eb new file mode 100644 index 00000000000..b0d179ed27c --- /dev/null +++ b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-2.4.1-foss-2023b-CUDA-12.4.0.eb @@ -0,0 +1,40 @@ +easyblock = 'CMakeMake' + +name = 'HeFFTe' +version = '2.4.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://icl.utk.edu/fft' +description = "Highly Efficient FFT for Exascale (HeFFTe) library" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://github.com/icl-utk-edu/heffte/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['de2cf26df5d61baac7841525db3f393cb007f79612ac7534fd4757f154ba3e6c'] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', versionsuffix), +] + +build_shared_libs = True + +configopts = "-DHeffte_ENABLE_FFTW=ON -DFFTW_ROOT=$EBROOTFFTW -DHeffte_ENABLE_MKL=OFF " +configopts += "-DHeffte_ENABLE_CUDA=ON -DCUDAToolkit_ROOT=$EBROOTCUDA -DHeffte_ENABLE_GPU_AWARE_MPI=ON" + +# allow oversubscription of MPI ranks to cores, tests are hardcoded to use up to 12 MPI ranks +pretestopts = "export OMPI_MCA_rmaps_base_oversubscribe=true && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libheffte.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/cmake/Heffte', 'share/heffte/examples'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/h/HeFFTe/HeFFTe-2.4.1-foss-2023b.eb b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-2.4.1-foss-2023b.eb new file mode 100644 index 00000000000..7d38225fc55 --- /dev/null +++ b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-2.4.1-foss-2023b.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'HeFFTe' +version = '2.4.1' + +homepage = 'https://icl.utk.edu/fft' +description = "Highly Efficient FFT for Exascale (HeFFTe) library" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://github.com/icl-utk-edu/heffte/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['de2cf26df5d61baac7841525db3f393cb007f79612ac7534fd4757f154ba3e6c'] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +build_shared_libs = True + +configopts = "-DHeffte_ENABLE_FFTW=ON -DFFTW_ROOT=$EBROOTFFTW -DHeffte_ENABLE_CUDA=OFF -DHeffte_ENABLE_MKL=OFF" + +# allow oversubscription of MPI ranks to cores, tests are hardcoded to use up to 12 MPI ranks +pretestopts = "export OMPI_MCA_rmaps_base_oversubscribe=true && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libheffte.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/cmake/Heffte', 'share/heffte/examples'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/h/HyperQueue/HyperQueue-0.20.0.eb b/easybuild/easyconfigs/h/HyperQueue/HyperQueue-0.20.0.eb new file mode 100644 index 00000000000..b58b81c03fe --- /dev/null +++ b/easybuild/easyconfigs/h/HyperQueue/HyperQueue-0.20.0.eb @@ -0,0 +1,31 @@ +easyblock = 'BinariesTarball' + +name = 'HyperQueue' +version = '0.20.0' + +homepage = 'https://it4innovations.github.io/hyperqueue/stable/' +description = """ +HyperQueue is a tool designed to simplify execution of large workflows (task graphs) on HPC clusters. +It allows you to execute a large number of tasks in a simple way, without having to manually submit jobs +into batch schedulers like Slurm or PBS. + +You just specify what you want to compute – HyperQueue will automatically ask for computational resources and +dynamically load-balance tasks across all allocated nodes and cores. +HyperQueue can also work without Slurm/PBS as a general task executor. +""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/It4innovations/hyperqueue/releases/download/v%(version)s/'] + +sources = ['hq-v%(version)s-linux-x64.tar.gz'] +checksums = ['1b05177c9dd562a7ce1480796da2e8db169f963608719d398f21899d4f79f934'] + +sanity_check_paths = { + 'files': ['bin/hq'], + 'dirs': [], +} + +sanity_check_commands = ["hq --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..fad02bd2552 --- /dev/null +++ b/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3-GCCcore-13.2.0.eb @@ -0,0 +1,60 @@ +easyblock = 'ConfigureMake' + +name = 'harvest-tools' +version = '1.3' + +homepage = 'https://harvest.readthedocs.io/en/latest/content/harvest-tools.html' +description = """HarvestTools is a utility for creating and interfacing +with Gingr files, which are efficient archives that the Harvest Suite +uses to store reference-compressed multi-alignments, phylogenetic trees, +filtered variants and annotations. Though designed for use with Parsnp +and Gingr, HarvestTools can also be used for generic conversion between +standard bioinformatics file formats.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +github_account = 'marbl' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'harvest-tools-1.3_adapt_to_newer-gcc_protobuf_and_EB.patch', +] +checksums = [ + {'v1.3.tar.gz': 'ffbcf0a115c74507695fd6cee4a9d5ba27a700db36b32d226521ef8dd3309264'}, + {'harvest-tools-1.3_adapt_to_newer-gcc_protobuf_and_EB.patch': + '9d04d6c942d42a8147f43f8f086f436d284925f3a3acdd9620df84d4041dff61'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('protobuf', '25.3'), + ('CapnProto', '1.0.1.1'), +] + +preconfigopts = 'autoconf && ' + +configopts = ' '.join([ + '--with-protobuf=$EBROOTPROTOBUF', + '--with-capnp=$EBROOTCAPNPROTO', +]) + +postinstallcmds = [ + 'ln -s harvesttools %(installdir)s/bin/harvest', +] + +sanity_check_paths = { + 'files': ['bin/harvesttools', 'lib/libharvest.%s' % SHLIB_EXT], + 'dirs': ['include/harvest'], +} + +sanity_check_commands = [ + 'harvest -h', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3_adapt_to_newer-gcc_protobuf_and_EB.patch b/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3_adapt_to_newer-gcc_protobuf_and_EB.patch new file mode 100644 index 00000000000..a8fa6e16f8d --- /dev/null +++ b/easybuild/easyconfigs/h/harvest-tools/harvest-tools-1.3_adapt_to_newer-gcc_protobuf_and_EB.patch @@ -0,0 +1,113 @@ +commit 845bb6e29bc12cf5f989c0c64fb98002cb57b343 +Author: Ake Sandgren +Date: Mon Dec 16 18:10:22 2024 +0100 + + Adapt to newer compiler/protobuf and EasyBuild + And actually install the binary, library and include files + +diff --git a/Makefile.in b/Makefile.in +index fdb2ce0..434ba0a 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -1,4 +1,4 @@ +-CXXFLAGS += -std=c++11 -Isrc -I@protobuf@/include -I@capnp@/include ++CXXFLAGS += -Isrc + + UNAME_S=$(shell uname -s) + +@@ -23,10 +23,13 @@ SOURCES=\ + + OBJECTS=$(SOURCES:.cpp=.o) src/harvest/pb/harvest.pb.o src/harvest/capnp/harvest.capnp.o + +-all : harvesttools libharvest.a ++all : harvesttools libharvest.a libharvest.so + +-harvesttools : libharvest.a src/harvest/memcpyWrap.o +- $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o harvesttools src/harvest/memcpyWrap.o libharvest.a @protobuf@/lib/libprotobuf.a @capnp@/lib/libcapnp.a @capnp@/lib/libkj.a -lstdc++ -lz -lm -lpthread ++harvesttools : libharvest.so src/harvest/memcpyWrap.o ++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o harvesttools src/harvest/memcpyWrap.o -L. -lharvest -lprotobuf -lcapnp -lkj -lstdc++ -lz -lm -lpthread ++ ++libharvest.so : $(OBJECTS) ++ g++ -shared -o libharvest.so $(OBJECTS) + + libharvest.a : $(OBJECTS) + ar -cr libharvest.a $(OBJECTS) +@@ -52,27 +55,28 @@ src/harvest/pb/harvest.pb.cc src/harvest/pb/harvest.pb.h : src/harvest/pb/harves + src/harvest/capnp/harvest.capnp.c++ src/harvest/capnp/harvest.capnp.h : src/harvest/capnp/harvest.capnp + cd src/harvest/capnp;export PATH=@capnp@/bin/:${PATH};capnp compile -I @capnp@/include -oc++ harvest.capnp + +-install : libharvest.a +- mkdir -p @prefix@/bin/ +- mkdir -p @prefix@/lib/ +- mkdir -p @prefix@/include/ +- mkdir -p @prefix@/include/harvest +- mkdir -p @prefix@/include/harvest/capnp +- mkdir -p @prefix@/include/harvest/pb +- ln -sf `pwd`/harvesttools @prefix@/bin/ +- ln -sf `pwd`/libharvest.a @prefix@/lib/ +- ln -sf `pwd`/src/harvest/exceptions.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/HarvestIO.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/capnp/harvest.capnp.h @prefix@/include/harvest/capnp/ +- ln -sf `pwd`/src/harvest/pb/harvest.pb.h @prefix@/include/harvest/pb/ +- ln -sf `pwd`/src/harvest/ReferenceList.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/AnnotationList.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/parse.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/PhylogenyTree.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/PhylogenyTreeNode.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/TrackList.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/LcbList.h @prefix@/include/harvest/ +- ln -sf `pwd`/src/harvest/VariantList.h @prefix@/include/harvest/ ++install : all ++ install -d @prefix@/bin/ ++ install -d @prefix@/lib/ ++ install -d @prefix@/include/ ++ install -d @prefix@/include/harvest ++ install -d @prefix@/include/harvest/capnp ++ install -d @prefix@/include/harvest/pb ++ install harvesttools @prefix@/bin/ ++ install libharvest.a @prefix@/lib/ ++ install libharvest.so @prefix@/lib/ ++ install src/harvest/exceptions.h @prefix@/include/harvest/ ++ install src/harvest/HarvestIO.h @prefix@/include/harvest/ ++ install src/harvest/capnp/harvest.capnp.h @prefix@/include/harvest/capnp/ ++ install src/harvest/pb/harvest.pb.h @prefix@/include/harvest/pb/ ++ install src/harvest/ReferenceList.h @prefix@/include/harvest/ ++ install src/harvest/AnnotationList.h @prefix@/include/harvest/ ++ install src/harvest/parse.h @prefix@/include/harvest/ ++ install src/harvest/PhylogenyTree.h @prefix@/include/harvest/ ++ install src/harvest/PhylogenyTreeNode.h @prefix@/include/harvest/ ++ install src/harvest/TrackList.h @prefix@/include/harvest/ ++ install src/harvest/LcbList.h @prefix@/include/harvest/ ++ install src/harvest/VariantList.h @prefix@/include/harvest/ + + clean : + -rm harvesttools +diff --git a/configure.ac b/configure.ac +index fc8e61d..5e2fc22 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -29,8 +29,6 @@ then + AC_MSG_ERROR([Cap'n Proto compiler (capnp) not found.]) + fi + +-CPPFLAGS="-I$with_protobuf/include -I$with_capnp/include -std=c++11" +- + AC_CHECK_HEADER(google/protobuf/stubs/common.h, [result=1], [result=0]) + + if test $result == 0 +diff --git a/src/harvest/HarvestIO.cpp b/src/harvest/HarvestIO.cpp +index c165dce..c1dbb7a 100755 +--- a/src/harvest/HarvestIO.cpp ++++ b/src/harvest/HarvestIO.cpp +@@ -208,7 +208,11 @@ bool HarvestIO::loadHarvestProtocolBuffer(const char * file) + GzipInputStream gz(&raw_input); + CodedInputStream coded_input(&gz); + ++#if GOOGLE_PROTOBUF_VERSION >= 3002000 ++ coded_input.SetTotalBytesLimit(INT_MAX); ++#else + coded_input.SetTotalBytesLimit(INT_MAX, INT_MAX); ++#endif + + if ( ! harvest.ParseFromCodedStream(&coded_input) ) + { diff --git a/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b0a774427b2 --- /dev/null +++ b/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonBundle' + +name = 'hatch-jupyter-builder' +version = "0.9.1" + +homepage = 'https://hatch-jupyter-builder.readthedocs.io' +description = """Hatch Jupyter Builder is a plugin for the hatchling Python build backend. It is +primarily targeted for package authors who are providing JavaScript as part of +their Python packages. +Typical use cases are Jupyter Lab Extensions and Jupyter Widgets.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Python', '3.12.3'), + ('hatchling', '1.24.2'), +] + +exts_list = [ + ('hatch_nodejs_version', '0.3.2', { + 'checksums': ['8a7828d817b71e50bbbbb01c9bfc0b329657b7900c56846489b9c958de15b54c'], + }), + ('hatch_jupyter_builder', version, { + 'checksums': ['79278198d124c646b799c5e8dca8504aed9dcaaa88d071a09eb0b5c2009a58ad'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2023b.eb b/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2023b.eb new file mode 100644 index 00000000000..5beb2339be3 --- /dev/null +++ b/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2023b.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonPackage' + +name = 'hic-straw' +version = '1.3.1' + +homepage = 'https://github.com/aidenlab/straw' +description = "Straw is a library which allows rapid streaming of contact data from .hic files." + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['fb0f878127f6b1d096303c67793477c83fddf3f4a1a8e29a9d92952634989876'] + +builddependencies = [('pybind11', '2.11.1')] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('cURL', '8.3.0'), +] + +options = {'modulename': 'hicstraw'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/hifiasm/hifiasm-0.23.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.23.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..6d9b52352a5 --- /dev/null +++ b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.23.0-GCCcore-13.2.0.eb @@ -0,0 +1,43 @@ +# Author: Jasper Grimm (UoY) +# Update: Sebastien Moretti (SIB), Denis Kristak (Inuits) + +easyblock = 'MakeCp' + +name = 'hifiasm' +version = '0.23.0' + +homepage = 'https://github.com/chhylp123/hifiasm' +description = """Hifiasm: a haplotype-resolved assembler for accurate Hifi reads.""" +# software_license = 'LicenseMIT' + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'opt': True} + +github_account = 'chhylp123' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['52b4b615c2d2938b3b10cca4890c7857750f4a5ee54d5eb78c49dc638c9f14e0'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +buildopts = 'CC="$CC" CXX="$CXX" CXXFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS"' + +files_to_copy = [ + ([name], 'bin'), + (['*.h'], 'include/hifiasm'), + 'LICENSE', 'README.md', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} +sanity_check_commands = ["%(name)s -h"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/IDBA-UD/IDBA-UD-1.1.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/i/IDBA-UD/IDBA-UD-1.1.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..83d24a82eec --- /dev/null +++ b/easybuild/easyconfigs/i/IDBA-UD/IDBA-UD-1.1.3-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +# 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 +# Updated: Pavel Grochal (INUITS) +# License: GPLv2 + +# "make install" doesnt copy all the compiled binaries so we use the "MakeCp" easyblock +# to be sure everything is copied and we run ./configure in prebuildopts + +# modified by Tom Strempel +easyblock = 'MakeCp' + +name = 'IDBA-UD' +version = '1.1.3' + +homepage = 'https://i.cs.hku.hk/~alse/hkubrg/projects/idba_ud/' +description = """ IDBA-UD is a iterative De Bruijn Graph De Novo Assembler for Short Reads +Sequencing data with Highly Uneven Sequencing Depth. It is an extension of IDBA algorithm. +IDBA-UD also iterates from small k to a large k. In each iteration, short and low-depth +contigs are removed iteratively with cutoff threshold from low to high to reduce the errors +in low-depth and high-depth regions. Paired-end reads are aligned to contigs and assembled +locally to generate some missing k-mers in low-depth regions. With these technologies, IDBA-UD +can iterate k value of de Bruijn graph to a very large value with less gaps and less branches +to form long contigs in both low-depth and high-depth regions.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/loneknightpy/idba/releases/download/%(version)s'] +sources = ['idba-%(version)s.tar.gz'] +checksums = ['030e24463c6d725c1c202baabf773b605b51e310844fd0f27f4688ecfbae26d0'] + +builddependencies = [('binutils', '2.40')] + +prebuildopts = './configure && ' + +# we delete every .o and Makefile file which is left in bin folder +buildopts = ' && rm -fr bin/*.o bin/Makefile*' + +files_to_copy = ["bin", "script", "ChangeLog", "NEWS"] + +pretestopts = "cd test && " +runtest = "check" + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ["idba", "idba_hybrid", "idba_tran", + "idba_ud", "parallel_blat", "idba_tran_test"]], + 'dirs': [""], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/IGV/IGV-2.19.1-Java-17.eb b/easybuild/easyconfigs/i/IGV/IGV-2.19.1-Java-17.eb new file mode 100644 index 00000000000..9a2bc1d7398 --- /dev/null +++ b/easybuild/easyconfigs/i/IGV/IGV-2.19.1-Java-17.eb @@ -0,0 +1,34 @@ +# EasyBuild easyconfig +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# Modified by Adam Huffman +# Big Data Institute, University of Oxford + +easyblock = 'Tarball' + +name = 'IGV' +version = '2.19.1' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.broadinstitute.org/software/igv/' +description = """This package contains command line utilities for + preprocessing, computing feature count density (coverage), sorting, and + indexing data files.""" + +toolchain = SYSTEM + +source_urls = ['http://data.broadinstitute.org/igv/projects/downloads/%(version_major)s.%(version_minor)s'] +sources = ['%(name)s_%(version)s.zip'] +checksums = ['e7d7803cab4e12e84f5359a3d73915a45acc6d676151ca18e91fb2d39432b568'] + +dependencies = [('Java', '17', '', SYSTEM)] + +sanity_check_paths = { + 'files': ['%(namelower)s.sh', 'lib/%(namelower)s.jar'], + 'dirs': [], +} + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb index a68255c14e3..017543be990 100644 --- a/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb @@ -20,6 +20,7 @@ builddependencies = [ dependencies = [ ('Python', '3.11.3'), ('Python-bundle-PyPI', '2023.06'), + ('jedi', '0.19.0'), ('ZeroMQ', '4.3.4'), ('lxml', '4.9.2'), ] @@ -55,12 +56,6 @@ exts_list = [ 'modulename': False, 'checksums': ['f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304'] }), - ('parso', '0.8.3', { - 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'] - }), - ('jedi', '0.19.0', { - 'checksums': ['bcf9894f1753969cbac8022a8c2eaee06bfa3724e4192470aaffe7eb6272b0c4'] - }), ('backcall', '0.2.0', { 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'] }), diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.27.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.27.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9162f21b752 --- /dev/null +++ b/easybuild/easyconfigs/i/IPython/IPython-8.27.0-GCCcore-13.3.0.eb @@ -0,0 +1,77 @@ +easyblock = 'PythonBundle' + +name = 'IPython' +version = '8.27.0' + +homepage = 'https://ipython.org/index.html' +description = """IPython provides a rich architecture for interactive computing with: + Powerful interactive shells (terminal and Qt-based). + A browser-based notebook with support for code, text, mathematical expressions, inline plots and other rich media. + Support for interactive data visualization and use of GUI toolkits. + Flexible, embeddable interpreters to load into your own projects. + Easy to use, high performance tools for parallel computing.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('ZeroMQ', '4.3.5'), + ('lxml', '5.3.0'), + ('jedi', '0.19.1') +] + +# for the matplotlib-inline required extention we avoid the import sanity check +# as it will fail without matplotlib in the environment, but ipython devs prefer not to make +# matplotlib a required dep (https://github.com/ipython/matplotlib-inline/issues/4) +# we follow the same convention and we not set matplotlib as dependency + +# Last updated 20240917 +exts_list = [ + ('traitlets', '5.14.3', { + 'checksums': ['9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7'], + }), + ('pure_eval', '0.2.3', { + 'checksums': ['5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42'], + }), + ('executing', '2.1.0', { + 'checksums': ['8ea27ddd260da8150fa5a708269c4a10e76161e2496ec3e587da9e3c0fe4b9ab'], + }), + ('asttokens', '2.4.1', { + 'checksums': ['b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0'], + }), + ('stack_data', '0.6.3', { + 'checksums': ['836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9'], + }), + ('prompt_toolkit', '3.0.47', { + 'checksums': ['1e1b29cb58080b1e69f207c893a1a7bf16d127a5c30c9d17a25a5d77792e5360'], + }), + ('pickleshare', '0.7.5', { + 'checksums': ['87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca'], + }), + ('matplotlib-inline', '0.1.6', { + 'modulename': False, + 'checksums': ['f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304'], + }), + ('backcall', '0.2.0', { + 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'], + }), + ('ipython', version, { + 'modulename': 'IPython', + 'checksums': ['0b99a2dc9f15fd68692e898e5568725c6d49c527d36a9fb5960ffbdeaa82ff7e'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.28.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.28.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5064ebaeb23 --- /dev/null +++ b/easybuild/easyconfigs/i/IPython/IPython-8.28.0-GCCcore-13.3.0.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'IPython' +version = '8.28.0' + +homepage = 'https://ipython.org/index.html' +description = """IPython provides a rich architecture for interactive computing with: + Powerful interactive shells (terminal and Qt-based). + A browser-based notebook with support for code, text, mathematical expressions, inline plots and other rich media. + Support for interactive data visualization and use of GUI toolkits. + Flexible, embeddable interpreters to load into your own projects. + Easy to use, high performance tools for parallel computing.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('ZeroMQ', '4.3.5'), + ('lxml', '5.3.0'), + ('jedi', '0.19.1') +] + +# for the matplotlib-inline required extention we avoid the import sanity check +# as it will fail without matplotlib in the environment, but ipython devs prefer not to make +# matplotlib a required dep (https://github.com/ipython/matplotlib-inline/issues/4) +# we follow the same convention and we not set matplotlib as dependency + +exts_list = [ + ('traitlets', '5.13.0', { + 'checksums': ['9b232b9430c8f57288c1024b34a8f0251ddcc47268927367a0dd3eeaca40deb5'], + }), + ('pure_eval', '0.2.2', { + 'checksums': ['2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3'], + }), + ('executing', '2.0.1', { + 'checksums': ['35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147'], + }), + ('asttokens', '2.4.1', { + 'checksums': ['b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0'], + }), + ('stack_data', '0.6.3', { + 'checksums': ['836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9'], + }), + ('prompt_toolkit', '3.0.41', { + 'checksums': ['941367d97fc815548822aa26c2a269fdc4eb21e9ec05fc5d447cf09bad5d75f0'], + }), + ('pickleshare', '0.7.5', { + 'checksums': ['87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca'], + }), + ('matplotlib-inline', '0.1.6', { + 'modulename': False, + 'checksums': ['f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304'], + }), + ('backcall', '0.2.0', { + 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'], + }), + ('ipython', version, { + 'modulename': 'IPython', + 'checksums': ['0d0d15ca1e01faeb868ef56bc7ee5a0de5bd66885735682e8a322ae289a13d1a'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/IQ-TREE/IQ-TREE-2.3.6-gompi-2023a.eb b/easybuild/easyconfigs/i/IQ-TREE/IQ-TREE-2.3.6-gompi-2023a.eb new file mode 100644 index 00000000000..7f78472bcea --- /dev/null +++ b/easybuild/easyconfigs/i/IQ-TREE/IQ-TREE-2.3.6-gompi-2023a.eb @@ -0,0 +1,56 @@ +# Updated to v2.1.3 by +# R.QIAO +# DeepThought, Flinders University +# Update: Petr Král (INUITS) + +easyblock = 'CMakeMake' + +name = 'IQ-TREE' +version = '2.3.6' + +# HTTPS is not working +homepage = 'http://www.iqtree.org/' +description = """Efficient phylogenomic software by maximum likelihood""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +# Including 'usempi' will take precedence and override IQTREE_FLAGS and produces only 'iqtree-mpi' binary + +source_urls = ['https://github.com/iqtree/iqtree2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'IQ-TREE-2.3.5_use_EB_LSD2.patch', +] +checksums = [ + {'v2.3.6.tar.gz': '2d389ea74e19773496363cd68270b341ac7cc47c60e7f32859682403b34744cf'}, + {'IQ-TREE-2.3.5_use_EB_LSD2.patch': 'b4578b01f06ae52b94b332622c0f6630497cd29cb61010f58f7c5018c2c32a5f'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Eigen', '3.4.0'), +] +dependencies = [ + ('zlib', '1.2.13'), + ('Boost', '1.82.0'), + ('LSD2', '2.4.1'), +] + +local_conf_opts = ' -DUSE_LSD2=ON ' +configopts = [ + '-DIQTREE_FLAGS=omp' + local_conf_opts, + '-DIQTREE_FLAGS=mpi -DCMAKE_C_COMPILER="$MPICC" -DCMAKE_CXX_COMPILER="$MPICXX"' + local_conf_opts, +] + +sanity_check_paths = { + 'files': ['bin/iqtree2', 'bin/iqtree2-mpi'], + 'dirs': [], +} + +sanity_check_commands = [ + "iqtree2 --help", + "mkdir -p $TMPDIR/{test-omp,test-mpi}", + "cd $TMPDIR/test-omp && cp -a %(installdir)s/example.phy . && iqtree2 -s example.phy -redo", + "cd $TMPDIR/test-mpi && cp -a %(installdir)s/example.phy . && mpirun -np 1 iqtree2-mpi -s example.phy -redo", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb index 6a78cb9c5a9..8edbf91b842 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb @@ -30,7 +30,6 @@ builddependencies = [ ('pkgconf', '1.8.0'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb index 7d03b87d1d8..bc63a2d88d1 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb @@ -30,7 +30,6 @@ builddependencies = [ ('pkg-config', '0.29.2'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-53-GCCcore-12.2.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-53-GCCcore-12.2.0.eb index e758d987dfa..ee6ed5c39bd 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-53-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-53-GCCcore-12.2.0.eb @@ -30,7 +30,6 @@ builddependencies = [ ('pkgconf', '1.9.3'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-15-GCCcore-12.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-15-GCCcore-12.3.0.eb index 4fe1068022b..ebe2bb56629 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-15-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-15-GCCcore-12.3.0.eb @@ -29,7 +29,6 @@ dependencies = [ ('FriBidi', '1.0.12'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-34-GCCcore-13.2.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-34-GCCcore-13.2.0.eb index 2ccdcb32a55..eaa7378dd71 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-34-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-34-GCCcore-13.2.0.eb @@ -29,7 +29,6 @@ dependencies = [ ('FriBidi', '1.0.13'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb index 776471b14b2..27142117380 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb @@ -33,7 +33,6 @@ dependencies = [ ('FriBidi', '1.0.15'), ] -preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' configopts = "--with-gslib --with-x" sanity_check_paths = { diff --git a/easybuild/easyconfigs/i/Infernal/Infernal-1.1.5-foss-2023a.eb b/easybuild/easyconfigs/i/Infernal/Infernal-1.1.5-foss-2023a.eb new file mode 100644 index 00000000000..7a89f4503eb --- /dev/null +++ b/easybuild/easyconfigs/i/Infernal/Infernal-1.1.5-foss-2023a.eb @@ -0,0 +1,39 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Cedric Laczny , Fotis Georgatos +# License:: MIT/GPL +# Updated:: Denis Kristak (INUITS) +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +## + +easyblock = 'ConfigureMake' + +name = 'Infernal' +version = "1.1.5" + +homepage = 'http://eddylab.org/infernal/' +description = """Infernal ("INFERence of RNA ALignment") is for searching DNA sequence databases + for RNA structure and sequence similarities.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +source_urls = ['http://eddylab.org/%(namelower)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ad4ddae02f924ca7c85bc8c4a79c9f875af8df96aeb726702fa985cbe752497f'] + +local_bins = ['align', 'build', 'calibrate', 'convert', 'emit', 'fetch', 'press', 'scan', 'search', 'stat'] + +sanity_check_paths = { + 'files': ['bin/cm%s' % x for x in local_bins], + 'dirs': [] +} + +sanity_check_commands = ['cm%s -h' % x for x in local_bins] + +moduleclass = 'bio' 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..88870e3107e --- /dev/null +++ b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb @@ -0,0 +1,30 @@ +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'}, +] + +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/i/inih/inih-58-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/inih/inih-58-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..0837277c267 --- /dev/null +++ b/easybuild/easyconfigs/i/inih/inih-58-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'MesonNinja' + +name = 'inih' +version = '58' + +homepage = 'https://dri.freedesktop.org' +description = """Direct Rendering Manager runtime library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/benhoyt/inih/archive/refs/tags/'] +sources = ['r%(version)s.tar.gz'] +checksums = ['e79216260d5dffe809bda840be48ab0eec7737b2bb9f02d2275c1b46344ea7b7'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), +] + +# installing manpages requires an extra build dependency (docbook xsl) +# configopts = '-Dman-pages=disabled' + +sanity_check_paths = { + 'files': ['lib/libinih.%s' % SHLIB_EXT, 'include/ini.h'], + 'dirs': ['include', 'lib'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2025.0.0.eb b/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2025.0.0.eb new file mode 100644 index 00000000000..34a1074639e --- /dev/null +++ b/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2025.0.0.eb @@ -0,0 +1,37 @@ +name = 'intel-compilers' +version = '2025.0.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/hpc-toolkit.html' +description = "Intel C, C++ & Fortran compilers" + +toolchain = SYSTEM + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +sources = [ + { + 'source_urls': [ + 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/ac92f2bb-4818-4e53-a432-f8b34d502f23/' + ], + 'filename': 'intel-dpcpp-cpp-compiler-%(version)s.740_offline.sh', + }, + { + 'source_urls': [ + 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/69f79888-2d6c-4b20-999e-e99d72af68d4/' + ], + 'filename': 'intel-fortran-compiler-%(version)s.723_offline.sh', + }, +] +checksums = [ + {'intel-dpcpp-cpp-compiler-2025.0.0.740_offline.sh': + '04fadf63789acee731895e631db63f65a98b8279db3d0f48bdf0d81e6103bdd8'}, + {'intel-fortran-compiler-2025.0.0.723_offline.sh': + '2be6d607ce84f35921228595b118fbc516d28587cbc4e6dcf6b7219e5cd1a9a9'}, +] + +local_gccver = '14.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.42', '', ('GCCcore', local_gccver)), +] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/i/iodata/iodata-1.0.0a5-foss-2023a.eb b/easybuild/easyconfigs/i/iodata/iodata-1.0.0a5-foss-2023a.eb new file mode 100644 index 00000000000..3a5d6b64fb0 --- /dev/null +++ b/easybuild/easyconfigs/i/iodata/iodata-1.0.0a5-foss-2023a.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'iodata' +version = '1.0.0a5' + +homepage = 'https://github.com/theochem/iodata' +description = """Python library for reading, writing, and converting computational chemistry file formats and + generating input files.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/theochem/iodata/releases/download/v%(version)s/'] +sources = ['qc_iodata-%(version)s-py3-none-any.whl'] +checksums = ['90e11e34df77498e187ac876bf4822799850996f1d880e8a298fa0fc5fd27001'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +sanity_check_paths = { + 'files': ['bin/iodata-convert'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["iodata-convert --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/j/JACUSA2helper/JACUSA2helper-1.9.9.9675-foss-2023a.eb b/easybuild/easyconfigs/j/JACUSA2helper/JACUSA2helper-1.9.9.9675-foss-2023a.eb new file mode 100644 index 00000000000..4b3003c89ec --- /dev/null +++ b/easybuild/easyconfigs/j/JACUSA2helper/JACUSA2helper-1.9.9.9675-foss-2023a.eb @@ -0,0 +1,36 @@ +easyblock = 'Bundle' + +name = 'JACUSA2helper' +version = '1.9.9.9675' + +homepage = 'https://dieterich-lab.github.io/JACUSA2helper/' +description = "Auxiliary R package for assessment of JACUSA2 results" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('R-bundle-Bioconductor', '3.18', '-R-%(rver)s'), +] + +exts_defaultclass = 'RPackage' + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/dieterich-lab/JACUSA2helper/archive/refs/tags/'], + 'source_tmpl': 'v%(version)s.tar.gz', + 'checksums': ['5c8edb96a5691c7fb2895e50eb992ebe375f8d97234039da3f5540a7a9cb4816'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +sanity_check_commands = ['Rscript -e "library(%(name)s)"'] + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'bio' 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/j/Jellyfish/Jellyfish-2.3.1-GCC-12.3.0.eb b/easybuild/easyconfigs/j/Jellyfish/Jellyfish-2.3.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..97e1878dd51 --- /dev/null +++ b/easybuild/easyconfigs/j/Jellyfish/Jellyfish-2.3.1-GCC-12.3.0.eb @@ -0,0 +1,40 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: GPLv3.0 +# +# Notes:: +## + +easyblock = 'ConfigureMake' + +name = 'Jellyfish' +version = '2.3.1' + +homepage = 'http://www.genome.umd.edu/jellyfish.html' +description = "Jellyfish is a tool for fast, memory-efficient counting of k-mers in DNA." + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/gmarcais/Jellyfish/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ee032b57257948ca0f0610883099267572c91a635eecbd88ae5d8974c2430fcd'] + +maxparallel = 1 + +# The tests for the Bloom filter are statistical tests and can randomly fail, +# they actually don't make a lot of sense +runtest = "check GTEST_FILTER=-'*Bloom*'" + +postinstallcmds = ["cp config.h %(installdir)s/include/%(namelower)s-%(version)s/%(namelower)s/"] + +sanity_check_paths = { + 'files': ['bin/jellyfish'], + 'dirs': [] +} + +modextrapaths = {'CPATH': 'include/%(namelower)s-%(version)s'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ad7805e7167 --- /dev/null +++ b/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'Judy' +version = '1.0.5' + +homepage = 'http://judy.sourceforge.net/' +description = "A C library that implements a dynamic array." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://downloads.sourceforge.net/judy'] +sources = ['%(name)s-%(version)s.tar.gz'] +patches = ['Judy-1.0.5_parallel-make.patch'] # fix Make dependencies, so parallel build also works + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), +] +checksums = [ + 'd2704089f85fdb6f2cd7e77be21170ced4b4375c03ef1ad4cf1075bd414a63eb', # Judy-1.0.5.tar.gz + '14c2eba71088f3db9625dc4605c6d7183d72412d75ef6c9fd9b95186165cf009', # Judy-1.0.5_parallel-make.patch +] + +preconfigopts = "sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac && " +preconfigopts += "autoreconf -i && " + +configopts = '--enable-shared --enable-static' + +sanity_check_paths = { + 'files': ["include/%(name)s.h", "lib/lib%(name)s.a", "lib/lib%(name)s.la", "lib/lib%%(name)s.%s" % SHLIB_EXT], + 'dirs': ["share/man"] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/Jupyter-bundle/Jupyter-bundle-20240522-GCCcore-13.2.0.eb b/easybuild/easyconfigs/j/Jupyter-bundle/Jupyter-bundle-20240522-GCCcore-13.2.0.eb index d6ac6ce1ad0..e58d22ce229 100644 --- a/easybuild/easyconfigs/j/Jupyter-bundle/Jupyter-bundle-20240522-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/j/Jupyter-bundle/Jupyter-bundle-20240522-GCCcore-13.2.0.eb @@ -19,7 +19,7 @@ dependencies = [ ('JupyterNotebook', '7.2.0'), ('nbclassic', '1.0.0'), ('jupyter-server-proxy', '4.1.2'), - # ('jupyterlmod', '5.0.0'), -- not ready yet, waiting for https://github.com/cmd-ntrf/jupyter-lmod/pull/70 + ('jupyterlmod', '5.2.1'), ('jupyter-resource-usage', '1.0.2'), ] diff --git a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-4.2.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-4.2.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..6242bb6cb2c --- /dev/null +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-4.2.5-GCCcore-13.3.0.eb @@ -0,0 +1,75 @@ +easyblock = 'PythonBundle' + +name = 'JupyterLab' +version = '4.2.5' + +homepage = 'https://jupyter.org/' +description = """JupyterLab is the next-generation user interface for Project Jupyter offering all the familiar + building blocks of the classic Jupyter Notebook (notebook, terminal, text editor, file browser, rich outputs, + etc.) in a flexible and powerful user interface. JupyterLab will eventually replace the classic Jupyter + Notebook.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatch-jupyter-builder', '0.9.1'), +] +dependencies = [ + ('Python', '3.12.3'), + ('IPython', '8.28.0'), + ('jupyter-server', '2.14.2'), +] + +exts_list = [ + ('json5', '0.9.25', { + 'checksums': ['548e41b9be043f9426776f05df8635a00fe06104ea51ed24b67f908856e151ae'], + }), + ('jupyterlab_server', '2.27.3', { + 'checksums': ['eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4'], + }), + ('jupyter-lsp', '2.2.5', { + 'checksums': ['793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001'], + }), + ('async-lru', '2.0.4', { + 'checksums': ['b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627'], + }), + ('h11', '0.14.0', { + 'checksums': ['8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d'], + }), + ('httpcore', '1.0.6', { + 'checksums': ['73f6dbd6eb8c21bbf7ef8efad555481853f5f6acdeaff1edb0694289269ee17f'], + }), + ('httpx', '0.27.2', { + 'checksums': ['f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2'], + }), + ('jupyterlab', version, { + 'checksums': ['ae7f3a1b8cb88b4f55009ce79fa7c06f99d70cd63601ee4aa91815d054f46f75'], + }), +] + +sanity_check_paths = { + 'files': ['bin/jupyter-lab', 'bin/jupyter-labextension', 'bin/jupyter-labhub'], + 'dirs': ['etc/jupyter', 'share/jupyter'], +} + +sanity_check_commands = ['jupyter lab --help'] + +modextrapaths = {'EB_ENV_JUPYTER_ROOT': ''} +modextravars = { + # only one path allowed as JUPYTERLAB_DIR + 'JUPYTERLAB_DIR': '%(installdir)s/share/jupyter/lab', +} + +# keep user's configuration in their home directory +# note: '~' is not expanded by JupyterLab +modluafooter = """ +setenv("JUPYTERLAB_SETTINGS_DIR", pathJoin(os.getenv("HOME"), ".jupyter", "lab", "user-settings")) +setenv("JUPYTERLAB_WORKSPACES_DIR", pathJoin(os.getenv("HOME"), ".jupyter", "lab", "workspaces")) +""" +modtclfooter = """ +setenv JUPYTERLAB_SETTINGS_DIR "$::env(HOME)/.jupyter/lab/user-settings" +setenv JUPYTERLAB_WORKSPACES_DIR "$::env(HOME)/.jupyter/lab/workspaces" +""" + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb index 9436eb3d797..2d7996cfc31 100644 --- a/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb @@ -3,9 +3,11 @@ easyblock = 'PythonBundle' name = 'jedi' version = "0.18.1" -homepage = 'https://jedi.readthedocs.io/en/latest/' +homepage = 'https://github.com/davidhalter/jedi' description = """ - Jedi is a static analysis tool for Python that is typically used in IDEs/editors plugins. + Jedi - an awesome autocompletion, static analysis and refactoring library for Python. + It is typically used in IDEs/editors plugins. Jedi has a focus on autocompletion and goto functionality. + Other features include refactoring, code search and finding references. """ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} @@ -26,9 +28,4 @@ exts_list = [ }), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib'], -} - moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.19.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.19.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..518b1054ca7 --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.0-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonBundle' + +name = 'jedi' +version = "0.19.0" + +homepage = 'https://github.com/davidhalter/jedi' +description = """ + Jedi - an awesome autocompletion, static analysis and refactoring library for Python. + It is typically used in IDEs/editors plugins. Jedi has a focus on autocompletion and goto functionality. + Other features include refactoring, code search and finding references. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.3'), +] + +exts_list = [ + ('parso', '0.8.3', { + 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'], + }), + (name, version, { + 'checksums': ['bcf9894f1753969cbac8022a8c2eaee06bfa3724e4192470aaffe7eb6272b0c4'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb index b2d3c4dd54d..90b6ce623f4 100644 --- a/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb @@ -6,6 +6,8 @@ version = "0.19.1" homepage = 'https://github.com/davidhalter/jedi' description = """ Jedi - an awesome autocompletion, static analysis and refactoring library for Python. + It is typically used in IDEs/editors plugins. Jedi has a focus on autocompletion and goto functionality. + Other features include refactoring, code search and finding references. """ toolchain = {'name': 'GCCcore', 'version': '13.2.0'} @@ -26,9 +28,4 @@ exts_list = [ }), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python3.11/site-packages/jedi'], -} - moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ca7df59b95e --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonBundle' + +name = 'jedi' +version = "0.19.1" + +homepage = 'https://github.com/davidhalter/jedi' +description = """ + Jedi - an awesome autocompletion, static analysis and refactoring library for Python. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Python', '3.12.3'), +] + +exts_list = [ + ('parso', '0.8.3', { + 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'], + }), + (name, version, { + 'checksums': ['cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jupyter-server/jupyter-server-2.14.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/jupyter-server/jupyter-server-2.14.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f1745e7adfd --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-server/jupyter-server-2.14.2-GCCcore-13.3.0.eb @@ -0,0 +1,182 @@ +easyblock = 'PythonBundle' + +name = 'jupyter-server' +version = "2.14.2" + +homepage = 'https://jupyter.org/' +description = """The Jupyter Server provides the backend (i.e. the core services, APIs, and REST +endpoints) for Jupyter web applications like Jupyter notebook, JupyterLab, and +Voila.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('maturin', '1.6.0'), # needed by rpds_py + ('hatch-jupyter-builder', '0.9.1'), +] +dependencies = [ + ('Python', '3.12.3'), + ('IPython', '8.28.0'), + ('PyYAML', '6.0.2'), + ('PyZMQ', '26.2.0'), + ('tornado', '6.4.1'), + ('BeautifulSoup', '4.12.3'), # needed by nbconvert +] + +# WARNING: the versions of ipywidgets, widgetsnbextension and jupyterlab_widgets are tied between them +# use the versions published in a single release commit instead of blindly pushing to last available version, +# see for instance https://github.com/jupyter-widgets/ipywidgets/commit/b728926f58ed3ffef08f716998ac6c226dafc1aa + +exts_list = [ + ('websocket_client', '1.8.0', { + 'modulename': 'websocket', + 'checksums': ['3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da'], + }), + ('terminado', '0.18.1', { + 'checksums': ['de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e'], + }), + ('Send2Trash', '1.8.3', { + 'checksums': ['b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf'], + }), + ('prometheus_client', '0.21.0', { + 'checksums': ['96c83c606b71ff2b0a433c98889d275f51ffec6c5e267de37c7a2b5c9aa9233e'], + }), + ('overrides', '7.7.0', { + 'checksums': ['55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a'], + }), + ('jupyter_core', '5.7.2', { + 'patches': ['jupyter-core-%(version)s_fix_jupyter_path.patch'], + 'checksums': [ + {'jupyter_core-5.7.2.tar.gz': 'aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9'}, + {'jupyter-core-5.7.2_fix_jupyter_path.patch': + '1ed5088728c1ad49687b66e31ed23965c36645ad285693785b2b96c4ff1b2f93'}, + ], + }), + ('fastjsonschema', '2.20.0', { + 'checksums': ['3d48fc5300ee96f5d116f10fe6f28d938e6008f59a6a025c2649475b87f76a23'], + }), + ('tinycss2', '1.3.0', { + 'checksums': ['152f9acabd296a8375fbca5b84c961ff95971fcfc32e79550c8df8e29118c54d'], + }), + ('pandocfilters', '1.5.1', { + 'checksums': ['002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e'], + }), + ('mistune', '3.0.2', { + 'checksums': ['fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8'], + }), + ('deprecation', '2.1.0', { + 'checksums': ['72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff'], + }), + ('jupyter_packaging', '0.12.3', { + 'checksums': ['9d9b2b63b97ffd67a8bc5391c32a421bc415b264a32c99e4d8d8dd31daae9cf4'], + }), + ('jupyterlab_pygments', '0.3.0', { + 'checksums': ['721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d'], + }), + ('defusedxml', '0.7.1', { + 'checksums': ['1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69'], + }), + ('bleach', '6.1.0', { + 'checksums': ['0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe'], + }), + ('nbformat', '5.10.4', { + 'checksums': ['322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a'], + }), + ('nbclient', '0.10.0', { + 'checksums': ['4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09'], + }), + ('jupyter_client', '8.6.3', { + 'checksums': ['35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419'], + }), + ('nbconvert', '7.16.4', { + 'checksums': ['86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4'], + }), + ('jupyter_server_terminals', '0.5.3', { + 'checksums': ['5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269'], + }), + ('rfc3986_validator', '0.1.1', { + 'checksums': ['3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055'], + }), + ('rfc3339_validator', '0.1.4', { + 'checksums': ['138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b'], + }), + ('rpds_py', '0.20.0', { + 'modulename': 'rpds', + 'checksums': ['d72a210824facfdaf8768cf2d7ca25a042c30320b3020de2fa04640920d4e121'], + }), + ('referencing', '0.35.1', { + 'checksums': ['25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c'], + }), + ('python-json-logger', '2.0.7', { + 'modulename': 'pythonjsonlogger', + 'checksums': ['23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c'], + }), + ('jsonschema_specifications', '2024.10.1', { + 'checksums': ['0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272'], + }), + ('jsonschema', '4.23.0', { + 'checksums': ['d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4'], + }), + ('jupyter_events', '0.10.0', { + 'checksums': ['670b8229d3cc882ec782144ed22e0d29e1c2d639263f92ca8383e66682845e22'], + }), + ('argon2-cffi-bindings', '21.2.0', { + 'modulename': '_argon2_cffi_bindings', + 'checksums': ['bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3'], + }), + ('argon2_cffi', '23.1.0', { + 'modulename': 'argon2', + 'checksums': ['879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08'], + }), + ('sniffio', '1.3.1', { + 'checksums': ['f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc'], + }), + ('anyio', '4.3.0', { + 'checksums': ['f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6'], + }), + ('jupyter_server', version, { + 'checksums': ['66095021aa9638ced276c248b1d81862e4c50f292d575920bbe960de1c56b12b'], + }), + ('jupyterlab_widgets', '3.0.13', { + 'checksums': ['a2966d385328c1942b683a8cd96b89b8dd82c8b8f81dda902bb2bc06d46f5bed'], + }), + ('widgetsnbextension', '4.0.13', { + 'checksums': ['ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6'], + }), + ('comm', '0.2.2', { + 'checksums': ['3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e'], + }), + ('ipywidgets', '8.1.5', { + 'checksums': ['870e43b1a35656a80c18c9503bbf2d16802db1cb487eec6fab27d683381dde17'], + }), + # The following few extensions are needed for e.g. JupyterLab but also nbclassic. + # Avoid duplication by making it part of this bundle + ('notebook_shim', '0.2.4', { + 'checksums': ['b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb'], + }), + ('nest_asyncio', '1.6.0', { + 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], + }), + ('ipykernel', '6.29.5', { + 'checksums': ['f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215'], + }), + ('ipython_genutils', '0.2.0', { + 'checksums': ['eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8'], + }), + ('debugpy', '1.8.7', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['57b00de1c8d2c84a61b90880f7e5b6deaf4c312ecbde3a0e8912f2a56c4ac9ae'], + }), +] + +sanity_check_paths = { + 'files': ['bin/jupyter'], + 'dirs': ['share/jupyter', 'etc/jupyter'], +} + +sanity_check_commands = ['jupyter --help'] + +modextrapaths = {'EB_ENV_JUPYTER_ROOT': ''} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jupyterlmod/jupyterlmod-5.2.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/j/jupyterlmod/jupyterlmod-5.2.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..4521168fc04 --- /dev/null +++ b/easybuild/easyconfigs/j/jupyterlmod/jupyterlmod-5.2.1-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'jupyterlmod' +version = '5.2.1' + +# This easyconfig installs the notebook and lab extension of Jupyter Lmod + +homepage = 'https://github.com/cmd-ntrf/jupyter-lmod' +description = """Jupyter interactive notebook server extension that allows users to interact with +environment modules before launching kernels. The extension uses Lmod's Python +interface to accomplish module-related tasks like loading, unloading, saving +collections, etc.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('JupyterNotebook', '7.2.0'), +] + +exts_list = [ + (name, version, { + 'sources': ['%(name)s-%(version)s-py3-none-any.whl'], + 'checksums': ['6f9c94d80b813792a6b63aeff5f2672f7d485ce43a7fd5bb7f6fce1c0907cad5'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'share/jupyter'], +} + +modextrapaths = {'EB_ENV_JUPYTER_ROOT': ''} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/k/KMC/KMC-3.2.4-GCC-13.2.0.eb b/easybuild/easyconfigs/k/KMC/KMC-3.2.4-GCC-13.2.0.eb new file mode 100644 index 00000000000..954078ee206 --- /dev/null +++ b/easybuild/easyconfigs/k/KMC/KMC-3.2.4-GCC-13.2.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MakeCp' + +name = 'KMC' +version = '3.2.4' + +homepage = 'http://sun.aei.polsl.pl/kmc' +description = "KMC is a disk-based programm for counting k-mers from (possibly gzipped) FASTQ/FASTA files." + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/refresh-bio/KMC/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['KMC-3.2.4_use_EB_pybind11_and_libs.patch'] +checksums = [ + {'v3.2.4.tar.gz': 'dde49d9a3c9b30dd9e231650265f6de335e180e5a642503677ebbcad8e85504c'}, + {'KMC-3.2.4_use_EB_pybind11_and_libs.patch': 'b8cba49891a6243381b8b4efec099c4907499863b3f89c2c7c6348103e9c86ef'}, +] + +builddependencies = [ + ('pybind11', '2.11.1'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('Python', '3.11.5'), +] + +# Makefile does static linking with libc.a, libpthread.a, libm.a +osdependencies = [('glibc-static', 'libc6-dev')] + +prebuildopts = """sed -i 's@^#include.*zlib.h.*@#include @' ./kmc_core/fastq_reader.h && """ +prebuildopts += """sed -i 's@^#include.*zlib.h.*@#include @' ./kmc_tools/fastq_reader.h && """ + +files_to_copy = ['bin'] + +sanity_check_paths = { + 'files': ['bin/kmc', 'bin/kmc_dump'], + 'dirs': [], +} + +sanity_check_commands = [ + "kmc", + "kmc_dump", + "python -c 'import py_kmc_api'", +] + +# Python bindings are also located in bin/ +modextrapaths = {'PYTHONPATH': ['bin']} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/k/KMC/KMC-3.2.4_use_EB_pybind11_and_libs.patch b/easybuild/easyconfigs/k/KMC/KMC-3.2.4_use_EB_pybind11_and_libs.patch new file mode 100644 index 00000000000..0b00174e146 --- /dev/null +++ b/easybuild/easyconfigs/k/KMC/KMC-3.2.4_use_EB_pybind11_and_libs.patch @@ -0,0 +1,57 @@ +Use pybind11 from EasyBuild install +Required to use Python != 3.10 +Also use zlib from EB install + +Åke Sandgren, 2024-12-09 +diff --git a/Makefile b/Makefile +index d5b9f21..e81661c 100644 +--- a/Makefile ++++ b/Makefile +@@ -115,7 +115,7 @@ else + endif + endif + +-LIB_ZLIB=3rd_party/cloudflare/libz.a ++LIB_ZLIB=-lz + LIB_KMC_CORE = $(OUT_BIN_DIR)/libkmc_core.a + + +@@ -144,8 +144,6 @@ $(KMC_TOOLS_DIR)/fastq_writer.o \ + $(KMC_TOOLS_DIR)/percent_progress.o \ + $(KMC_TOOLS_DIR)/kff_info_reader.o + +-$(LIB_ZLIB): +- cd 3rd_party/cloudflare; ./configure; make libz.a + + $(KMC_CLI_OBJS) $(KMC_CORE_OBJS) $(KMC_DUMP_OBJS) $(KMC_API_OBJS) $(KFF_OBJS) $(KMC_TOOLS_OBJS): %.o: %.cpp + $(CC) $(CFLAGS) -I 3rd_party/cloudflare -c $< -o $@ +@@ -169,17 +167,17 @@ $(LIB_KMC_CORE): $(KMC_CORE_OBJS) $(RADULS_OBJS) $(KMC_API_OBJS) $(KFF_OBJS) + -mkdir -p $(OUT_BIN_DIR) + ar rcs $@ $^ + +-kmc: $(KMC_CLI_OBJS) $(LIB_KMC_CORE) $(LIB_ZLIB) ++kmc: $(KMC_CLI_OBJS) $(LIB_KMC_CORE) + -mkdir -p $(OUT_BIN_DIR) +- $(CC) $(CLINK) -o $(OUT_BIN_DIR)/$@ $^ ++ $(CC) $(CLINK) -o $(OUT_BIN_DIR)/$@ $^ $(LIB_ZLIB) + + kmc_dump: $(KMC_DUMP_OBJS) $(KMC_API_OBJS) + -mkdir -p $(OUT_BIN_DIR) + $(CC) $(CLINK) -o $(OUT_BIN_DIR)/$@ $^ + +-kmc_tools: $(KMC_TOOLS_OBJS) $(KMC_API_OBJS) $(KFF_OBJS) $(LIB_ZLIB) ++kmc_tools: $(KMC_TOOLS_OBJS) $(KMC_API_OBJS) $(KFF_OBJS) + -mkdir -p $(OUT_BIN_DIR) +- $(CC) $(CLINK) -I 3rd_party/cloudflare -o $(OUT_BIN_DIR)/$@ $^ ++ $(CC) $(CLINK) -I 3rd_party/cloudflare -o $(OUT_BIN_DIR)/$@ $^ $(LIB_ZLIB) + + $(PY_KMC_API_DIR)/%.o: $(KMC_API_DIR)/%.cpp + $(CC) -c -fPIC -Wall -O3 $(CPU_FLAGS) -std=c++14 $^ -o $@ +@@ -188,7 +186,6 @@ py_kmc_api: $(PY_KMC_API_OBJS) $(PY_KMC_API_OBJS) + -mkdir -p $(OUT_BIN_DIR) + $(CC) $(PY_KMC_API_CFLAGS) $(PY_KMC_API_DIR)/py_kmc_api.cpp $(PY_KMC_API_OBJS) \ + -I $(KMC_API_DIR) \ +- -I $(PY_KMC_API_DIR)/libs/pybind11/include \ + -I `python3 -c "import sysconfig;print(sysconfig.get_paths()['include'])"` \ + -o $(OUT_BIN_DIR)/$@`python3-config --extension-suffix` + diff --git a/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..34e798413ac --- /dev/null +++ b/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,21 @@ +easyblock = 'PythonPackage' + +name = 'Kaleido' +version = '0.2.1' + +homepage = 'https://github.com/plotly/Kaleido' +description = "Fast static image export for web-based visualization libraries with zero dependencies" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = ['%(namelower)s-%(version)s-py2.py3-none-manylinux1_%(arch)s.whl'] +checksums = ['aa21cf1bf1c78f8fa50a9f7d45e1003c387bd3d6fe0a767cfbbf344b95bdc3a8'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Python', '3.12.3'), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3-gompi-2023a.eb b/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3-gompi-2023a.eb new file mode 100644 index 00000000000..f4733d380e3 --- /dev/null +++ b/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3-gompi-2023a.eb @@ -0,0 +1,68 @@ +easyblock = 'PackedBinary' + +name = 'Kraken2' +version = '2.1.3' + +homepage = 'https://github.com/DerrickWood/kraken2/wiki' +description = """Kraken is a system for assigning taxonomic labels to short DNA sequences, + usually obtained through metagenomic studies. Previous attempts by other + bioinformatics software to accomplish this task have often used sequence + alignment or machine learning techniques that were quite slow, leading to + the development of less sensitive but much faster abundance estimation + programs. Kraken aims to achieve high sensitivity and high speed by + utilizing exact alignments of k-mers and a novel classification algorithm.""" + +# part is compiled with $CXX, the rest is in Perl +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'openmp': True, 'cstd': 'c++11'} + +github_account = 'DerrickWood' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-2.1.3_fix_installation_for_easybuild.patch', +] +checksums = [ + {'v2.1.3.tar.gz': '5269fa14adfb02e38c2da2e605e909a432d76c680d73e2e0e80e27ccd04d7c69'}, + {'Kraken2-2.1.3_fix_installation_for_easybuild.patch': + 'd2faecff258133033cb81d5ac70d1a7ff1b4323091411aa835a13de83f2cc174'}, +] + +dependencies = [ + ('Perl', '5.36.1'), + ('BLAST+', '2.14.1'), + ('wget', '1.24.5'), +] + +install_cmd = 'cd %(builddir)s/%(namelower)s-%(version)s && ' +install_cmd += './install_kraken2.sh %(installdir)s/bin' + +# Kraken2 databases can be downloaded from https://benlangmead.github.io/aws-indexes/k2 +# or built as described in https://github.com/DerrickWood/kraken2/wiki/Manual#kraken-2-databases +# The following commands will build and install the standard databases (100GB) in local_db_path +# local_db_path = '%(installdir)s/db' +# postinstallcmds = [ +# 'mkdir %s' % local_db_path, +# 'cd %%(installdir)s/bin && ./kraken2-build --standard --threads %%(parallel)s --db %s' % local_db_path, +# ] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in [ + '16S_gg_installation.sh', '16S_rdp_installation.sh', '16S_silva_installation.sh', 'add_to_library.sh', + 'build_db', 'build_gg_taxonomy.pl', 'build_kraken2_db.sh', 'build_rdp_taxonomy.pl', 'build_silva_taxonomy.pl', + 'classify', 'clean_db.sh', 'cp_into_tempfile.pl', 'download_genomic_library.sh', 'download_taxonomy.sh', + 'dump_table', 'estimate_capacity', 'kraken2', 'kraken2-build', 'kraken2-inspect', 'kraken2lib.pm', + 'lookup_accession_numbers.pl', 'make_seqid2taxid_map.pl', 'mask_low_complexity.sh', 'rsync_from_ncbi.pl', + 'scan_fasta_file.pl']], + 'dirs': [], +} + +sanity_check_commands = [ + 'kraken2 --help', + 'kraken2-build --help', + 'kraken2-inspect --help', + 'build_db -h', + 'classify -h', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3_fix_installation_for_easybuild.patch b/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3_fix_installation_for_easybuild.patch new file mode 100644 index 00000000000..7dbe6fb40db --- /dev/null +++ b/easybuild/easyconfigs/k/Kraken2/Kraken2-2.1.3_fix_installation_for_easybuild.patch @@ -0,0 +1,30 @@ +Fix install script and src/Makefile for EasyBuild. + +Åke Sandgren, 2021-04-30 +Update: Petr Král (INUITS) +diff -u install_kraken2.sh.orig install_kraken2.sh +--- install_kraken2.sh.orig 2023-06-07 02:25:37.000000000 +0200 ++++ install_kraken2.sh 2024-11-12 11:34:20.122193572 +0100 +@@ -23,7 +23,9 @@ + + # Perl cmd used to canonicalize dirname - "readlink -f" doesn't work + # on OS X. +-export KRAKEN2_DIR=$(perl -MCwd=abs_path -le 'print abs_path(shift)' "$1") ++# export KRAKEN2_DIR=$(perl -MCwd=abs_path -le 'print abs_path(shift)' "$1") ++ ++export KRAKEN2_DIR=$1 + + mkdir -p "$KRAKEN2_DIR" + make -C src install +diff -u src/Makefile.orig src/Makefile +--- src/Makefile.orig 2023-06-07 02:25:37.000000000 +0200 ++++ src/Makefile 2024-11-12 10:13:26.330138787 +0100 +@@ -1,6 +1,6 @@ +-CXX = g++ ++CXX ?= g++ + KRAKEN2_SKIP_FOPENMP ?= -fopenmp +-CXXFLAGS = $(KRAKEN2_SKIP_FOPENMP) -Wall -std=c++11 -O3 ++CXXFLAGS ?= $(KRAKEN2_SKIP_FOPENMP) -Wall -std=c++11 -O3 + CXXFLAGS += -DLINEAR_PROBING + + .PHONY: all clean install diff --git a/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023a.eb b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023a.eb index ae831c08a64..5a5f690206c 100644 --- a/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023a.eb +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023a.eb @@ -28,7 +28,7 @@ dependencies = [ ('HTSlib', '1.18'), ] -parallel = 1 +maxparallel = 1 configopts = '-DUSE_HDF5=ON' diff --git a/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023b.eb b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023b.eb index 68cf98992dd..41c612d61bf 100644 --- a/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023b.eb +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023b.eb @@ -28,7 +28,7 @@ dependencies = [ ('HTSlib', '1.19.1'), ] -parallel = 1 +maxparallel = 1 configopts = '-DUSE_HDF5=ON' diff --git a/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22-GCC-12.3.0.eb index 09f36d84790..cc1a30978ca 100644 --- a/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22-GCC-12.3.0.eb @@ -13,7 +13,12 @@ toolchain = {'name': 'GCC', 'version': '12.3.0'} source_urls = [GITHUB_LOWER_SOURCE] sources = ['%(version)s.tar.gz'] -checksums = ['4c829603ba4aed7ddf64255b528cd88850e4557382fca29580d3576c25c5054a'] +patches = ['LASTZ-1.04.22_fix-rpath-wrapper-compat.patch'] +checksums = [ + {'1.04.22.tar.gz': '4c829603ba4aed7ddf64255b528cd88850e4557382fca29580d3576c25c5054a'}, + {'LASTZ-1.04.22_fix-rpath-wrapper-compat.patch': + '565c87e47755d22e44ddb8e60a36f3a65ba69d9f4e1967ba6521a58aefa30f46'}, +] skipsteps = ['configure'] diff --git a/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22_fix-rpath-wrapper-compat.patch b/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22_fix-rpath-wrapper-compat.patch new file mode 100644 index 00000000000..34c2b6e99e3 --- /dev/null +++ b/easybuild/easyconfigs/l/LASTZ/LASTZ-1.04.22_fix-rpath-wrapper-compat.patch @@ -0,0 +1,76 @@ +Avoid requiring score type define to be escaped +This ensures that it works even when our rpath-wrapper removes the quotes passed as `-Dscore_type=\'I\'` +This avoids +> #error ***** undecipherable score type definition ***** + +See https://github.com/lastz/lastz/pull/64 + +Author: Alexander Grund (TU Dresden) + +diff --git a/src/Makefile b/src/Makefile +index 1908774..cd7a55a 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -91,10 +91,10 @@ incFiles = lastz.h infer_scores.h \ + utilities.h dna_utilities.h sequences.h capsule.h + + %.o: %.c version.mak ${incFiles} +- ${CC} -c ${CFLAGS} -Dscore_type=\'I\' $< -o $@ ++ ${CC} -c ${CFLAGS} -Dscore_type=I $< -o $@ + + %_D.o: %.c version.mak ${incFiles} +- ${CC} -c ${CFLAGS} -Dscore_type=\'D\' $< -o $@ ++ ${CC} -c ${CFLAGS} -Dscore_type=D $< -o $@ + + %_32.o: %.c version.mak ${incFiles} + ${CC} -c ${CFLAGS} ${flagsFor32} $< -o $@ +diff --git a/src/Makefile.warnings b/src/Makefile.warnings +index 50109a6..dec9189 100644 +--- a/src/Makefile.warnings ++++ b/src/Makefile.warnings +@@ -91,10 +91,10 @@ incFiles = lastz.h infer_scores.h \ + utilities.h dna_utilities.h sequences.h capsule.h + + %.o: %.c version.mak ${incFiles} +- ${CC} -c ${CFLAGS} -Dscore_type=\'I\' $< -o $@ ++ ${CC} -c ${CFLAGS} -Dscore_type=I $< -o $@ + + %_D.o: %.c version.mak ${incFiles} +- ${CC} -c ${CFLAGS} -Dscore_type=\'D\' $< -o $@ ++ ${CC} -c ${CFLAGS} -Dscore_type=D $< -o $@ + + %_32.o: %.c version.mak ${incFiles} + ${CC} -c ${CFLAGS} ${flagsFor32} $< -o $@ +diff --git a/src/dna_utilities.h b/src/dna_utilities.h +index f3a0ce2..ed4ef23 100644 +--- a/src/dna_utilities.h ++++ b/src/dna_utilities.h +@@ -35,9 +35,7 @@ global int dna_utilities_dbgShowQToBest; + // score values-- + // Scores used for sequence comparisons are normally signed 32-bit integers, + // but the programmer can override this at compile time by defining score_type +-// as one of 'F', 'D', or 'I'. Note that some effort must be taken to get +-// the apostrophes into the definition from the compiler command line, such as +-// -Dscore_type=\'F\' . ++// as one of 'F', 'D', or 'I'. E.g.: -Dscore_type=F + // + //---------- + // +@@ -66,7 +64,16 @@ global int dna_utilities_dbgShowQToBest; + //---------- + + #if defined(score_type) +-#define scoreType score_type ++// Convert the score_type define to one of the valid character constants ++#define LASTZ_CONCAT(a, b) a ## b ++ ++#define LASTZ_SCORE_TYPE_I 'I' ++#define LASTZ_SCORE_TYPE_F 'F' ++#define LASTZ_SCORE_TYPE_D 'D' ++// Indirection required to expand the macro argument ++#define LASTZ_MAKE_SCORE_TYPE(c) LASTZ_CONCAT(LASTZ_SCORE_TYPE_, c) ++#define scoreType LASTZ_MAKE_SCORE_TYPE(score_type) ++ + #else + #define scoreType 'I' + #endif diff --git a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ca6e8c98f6b --- /dev/null +++ b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Updated: Denis Kristak +# Updated: Thomas Hoffmann (EMBL) +easyblock = 'CMakeMake' + +name = 'LERC' +version = '4.0.0' + +homepage = 'https://github.com/Esri/lerc' +description = """LERC is an open-source image or raster format which supports rapid encoding and decoding +for any pixel type (not just RGB or Byte). Users set the maximum compression error per pixel while encoding, +so the precision of the original input image is preserved (within user defined error bounds).""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/Esri/lerc/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['91431c2b16d0e3de6cbaea188603359f87caed08259a645fd5a3805784ee30a0'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) + "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", +] + +sanity_check_commands = [ + "%(installdir)s/LercTest/LercTest", +] + +sanity_check_paths = { + 'files': ['include/Lerc_c_api.h', 'include/Lerc_types.h', 'lib/libLerc.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..cd8ac72a902 --- /dev/null +++ b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.2.0.eb @@ -0,0 +1,53 @@ +easyblock = 'ConfigureMake' + +name = "LIME" +version = "1.3.2" + +homepage = "http://usqcd-software.github.io/c-lime/" +description = """LIME (which can stand for Lattice QCD Interchange Message Encapsulation or more generally, +Large Internet Message Encapsulation) is a simple packaging scheme for combining records containing ASCII +and/or binary data. Its ancestors are the Unix cpio and tar formats and the Microsoft Corporation DIME +(Direct Internet Message Encapsulation) format. It is simpler and allows record sizes up to $2^{63}$ bytes, +making chunking unnecessary for the foreseeable future. Unlike tar and cpio, the records are not associated +with Unix files. They are identified only by a record-type (LIME type) character string, analogous to the +familiar MIME application type. The LIME software package consists of a C-language API for creating, reading, +writing, and manipulating LIME files and a small set of utilities for examining, packing and unpacking LIME files.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40') +] + +sources = [SOURCELOWER_TAR_GZ] +source_urls = ['http://usqcd-software.github.io/downloads/c-lime/'] + +checksums = ['db5c07a72a152244f94a84c8bcc7395ec6fa084b8979ca1c8788b99a2870c881'] + +buildopts = "all" + +sanity_check_paths = { + 'files': [ + "bin/lime_pack", + "bin/lime_unpack", + "bin/lime_contents", + "bin/lime_extract_record", + "bin/lime_extract_type", + "lib/liblime.a", + "include/dcap-overload.h", + "include/lime_binary_header.h", + "include/lime_config.h", + "include/lime_config_internal.h", + "include/lime_defs.h", + "include/lime_fixed_types.h", + "include/lime_fseeko.h", + "include/lime.h", + "include/lime_header.h", + "include/lime_reader.h", + "include/lime_utils.h", + "include/lime_writer.h", + ], + 'dirs': [], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d36f23151c8 --- /dev/null +++ b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-13.3.0.eb @@ -0,0 +1,53 @@ +easyblock = 'ConfigureMake' + +name = "LIME" +version = "1.3.2" + +homepage = "http://usqcd-software.github.io/c-lime/" +description = """LIME (which can stand for Lattice QCD Interchange Message Encapsulation or more generally, +Large Internet Message Encapsulation) is a simple packaging scheme for combining records containing ASCII +and/or binary data. Its ancestors are the Unix cpio and tar formats and the Microsoft Corporation DIME +(Direct Internet Message Encapsulation) format. It is simpler and allows record sizes up to $2^{63}$ bytes, +making chunking unnecessary for the foreseeable future. Unlike tar and cpio, the records are not associated +with Unix files. They are identified only by a record-type (LIME type) character string, analogous to the +familiar MIME application type. The LIME software package consists of a C-language API for creating, reading, +writing, and manipulating LIME files and a small set of utilities for examining, packing and unpacking LIME files.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42') +] + +sources = [SOURCELOWER_TAR_GZ] +source_urls = ['http://usqcd-software.github.io/downloads/c-lime/'] + +checksums = ['db5c07a72a152244f94a84c8bcc7395ec6fa084b8979ca1c8788b99a2870c881'] + +buildopts = "all" + +sanity_check_paths = { + 'files': [ + "bin/lime_pack", + "bin/lime_unpack", + "bin/lime_contents", + "bin/lime_extract_record", + "bin/lime_extract_type", + "lib/liblime.a", + "include/dcap-overload.h", + "include/lime_binary_header.h", + "include/lime_config.h", + "include/lime_config_internal.h", + "include/lime_defs.h", + "include/lime_fixed_types.h", + "include/lime_fseeko.h", + "include/lime.h", + "include/lime_header.h", + "include/lime_reader.h", + "include/lime_utils.h", + "include/lime_writer.h", + ], + 'dirs': [], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/L_RNA_scaffolder/L_RNA_scaffolder-20190530-GCC-13.2.0.eb b/easybuild/easyconfigs/l/L_RNA_scaffolder/L_RNA_scaffolder-20190530-GCC-13.2.0.eb new file mode 100644 index 00000000000..3655f3168bb --- /dev/null +++ b/easybuild/easyconfigs/l/L_RNA_scaffolder/L_RNA_scaffolder-20190530-GCC-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'Tarball' + +name = 'L_RNA_scaffolder' +local_commit = '98f19e3' +version = '20190530' + +homepage = 'https://github.com/CAFS-bioinformatics/L_RNA_scaffolder' +description = "L_RNA_scaffolder is a genome scaffolding tool with long trancriptome reads" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/CAFS-bioinformatics/L_RNA_scaffolder/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['ef4c5bf3511e9947bdb33201bdcaf1ff779ca315a2139f73bb549fb6bfc05f5a'] + +dependencies = [ + ('BioPerl', '1.7.8'), +] + +fix_perl_shebang_for = ['*.pl'] + +# make sure exec permissions are set for all binaries and scripts (everything except README.md and easybuild subdir) +postinstallcmds = ["ls -d %(installdir)s/* | egrep -v '/README.md|/easybuild$' | xargs chmod a+x"] + +sanity_check_paths = { + 'files': ['calculate-lc', 'calculate-pid', 'convert', 'convert_linker', 'count_connection_frequency', + 'delete_block', 'delete_linker', 'delete_same_fragment', 'filter_scaffold.pl', + 'find_end_node', 'find_reliable_connection', 'find_start_node', 'form_block', + 'form_path.pl', 'generate_scaffold.pl', 'generate_unscaffold.pl', 'L_RNA_scaffolder.sh', 'link_block', + 'order', 'overlap', 'route.pl', 'search_guider', 'select_nodes'], + 'dirs': [], +} + +sanity_check_commands = ["L_RNA_scaffolder.sh -? | grep '^Usage: sh L_RNA_scaffolder.sh'"] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/l/LevelDB/LevelDB-1.22-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/LevelDB/LevelDB-1.22-GCCcore-11.3.0.eb index 4fd6d332a99..f9aa9e8fa82 100644 --- a/easybuild/easyconfigs/l/LevelDB/LevelDB-1.22-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/l/LevelDB/LevelDB-1.22-GCCcore-11.3.0.eb @@ -41,6 +41,6 @@ sanity_check_paths = { 'dirs': ['lib/python%(pyshortver)s/site-packages'], } -sanity_check_commands = ["pip check"] +sanity_check_commands = ["PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check"] moduleclass = 'devel' 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..2e7811fc076 --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,52 @@ +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 +] + +# 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, + }), +] + +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..89c2cfe1422 --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb @@ -0,0 +1,50 @@ +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 +] + +# 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, + }), +] + +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..e79a8b8c6bd --- /dev/null +++ b/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb @@ -0,0 +1,27 @@ +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), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/Longshot/Longshot-1.0.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/Longshot/Longshot-1.0.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..0a67a58490f --- /dev/null +++ b/easybuild/easyconfigs/l/Longshot/Longshot-1.0.0-GCCcore-12.3.0.eb @@ -0,0 +1,331 @@ +easyblock = 'Cargo' + +name = 'Longshot' +version = '1.0.0' + +homepage = 'https://github.com/pjedge/longshot' +description = """Longshot is a variant calling tool for diploid genomes using long error prone reads such as Pacific + Biosciences (PacBio) SMRT and Oxford Nanopore Technologies (ONT). It takes as input an aligned BAM file and outputs + a phased VCF file with variants and haplotype information. It can also output haplotype-separated BAM files that can + be used for downstream analysis. Currently, it only calls single nucleotide variants (SNVs).""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +crates = [ + ('addr2line', '0.24.2'), + ('adler2', '2.0.0'), + ('ahash', '0.7.8'), + ('aho-corasick', '1.1.3'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('ansi_term', '0.12.1'), + ('approx', '0.3.2'), + ('atty', '0.2.14'), + ('autocfg', '1.4.0'), + ('backtrace', '0.3.74'), + ('bio', '0.25.0'), + ('bio-types', '1.0.4'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '1.3.2'), + ('bumpalo', '3.16.0'), + ('bv', '0.10.0'), + ('bytecount', '0.3.2'), + ('byteorder', '1.5.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.30'), + ('cfg-if', '1.0.0'), + ('chrono', '0.4.38'), + ('clap', '2.34.0'), + ('cmake', '0.1.51'), + ('core-foundation-sys', '0.8.7'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('curl-sys', '0.4.77+curl-8.10.1'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('derive-new', '0.6.0'), + ('either', '1.13.0'), + ('error-chain', '0.12.4'), + ('feature-probe', '0.1.1'), + ('fishers_exact', '1.0.1'), + ('fnv', '1.0.7'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('fuchsia-cprng', '0.1.1'), + ('fxhash', '0.2.1'), + ('getrandom', '0.2.15'), + ('gimli', '0.31.1'), + ('glob', '0.3.1'), + ('hashbrown', '0.11.2'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('hts-sys', '2.1.4'), + ('iana-time-zone', '0.1.61'), + ('iana-time-zone-haiku', '0.1.2'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('itertools', '0.7.11'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('js-sys', '0.3.72'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.159'), + ('libz-sys', '1.1.20'), + ('linear-map', '1.2.0'), + ('log', '0.4.22'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.1.15'), + ('memchr', '2.7.4'), + ('miniz_oxide', '0.8.0'), + ('multimap', '0.4.0'), + ('ndarray', '0.12.1'), + ('newtype_derive', '0.1.6'), + ('num-complex', '0.2.4'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.19'), + ('object', '0.36.5'), + ('once_cell', '1.20.2'), + ('openssl-src', '300.3.2+3.3.2'), + ('openssl-sys', '0.9.104'), + ('ordered-float', '1.1.1'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.31'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.88'), + ('quick-error', '1.2.3'), + ('quote', '1.0.37'), + ('rand', '0.3.23'), + ('rand', '0.4.6'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.3.1'), + ('rand_core', '0.4.2'), + ('rand_core', '0.6.4'), + ('rawpointer', '0.1.0'), + ('rdrand', '0.4.0'), + ('regex', '1.11.0'), + ('regex-automata', '0.4.8'), + ('regex-syntax', '0.8.5'), + ('rust-htslib', '0.38.2'), + ('rustc-demangle', '0.1.24'), + ('rustc_version', '0.1.7'), + ('rustversion', '1.0.18'), + ('ryu', '1.0.18'), + ('semver', '0.1.20'), + ('serde', '1.0.210'), + ('serde_derive', '1.0.210'), + ('shlex', '1.3.0'), + ('statrs', '0.9.0'), + ('strsim', '0.8.0'), + ('strum_macros', '0.26.4'), + ('syn', '1.0.109'), + ('syn', '2.0.79'), + ('textwrap', '0.11.0'), + ('thiserror', '1.0.64'), + ('thiserror-impl', '1.0.64'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.17'), + ('unicode-ident', '1.0.13'), + ('unicode-normalization', '0.1.24'), + ('unicode-width', '0.1.14'), + ('url', '2.5.2'), + ('vcpkg', '0.2.15'), + ('vec_map', '0.8.2'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.95'), + ('wasm-bindgen-backend', '0.2.95'), + ('wasm-bindgen-macro', '0.2.95'), + ('wasm-bindgen-macro-support', '0.2.95'), + ('wasm-bindgen-shared', '0.2.95'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-core', '0.52.0'), + ('windows-sys', '0.52.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'), +] +source_urls = ['https://github.com/pjedge/longshot/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v1.0.0.tar.gz': 'f6981892beb966eef40986c46928301dec1fef38591cc291e00a546f9866c5e2'}, + {'addr2line-0.24.2.tar.gz': 'dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'ahash-0.7.8.tar.gz': '891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'ansi_term-0.12.1.tar.gz': 'd52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2'}, + {'approx-0.3.2.tar.gz': 'f0e60b75072ecd4168020818c0107f2857bb6c4e64252d8d3983f6263b40a5c3'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.4.0.tar.gz': 'ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26'}, + {'backtrace-0.3.74.tar.gz': '8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a'}, + {'bio-0.25.0.tar.gz': '83fb5223acf893048c6ad04e325eee1233882e76687615bf0d43a6dd9b8d6cc1'}, + {'bio-types-1.0.4.tar.gz': 'f4dcf54f8b7f51450207d54780bab09c05f30b8b0caa991545082842e466ad7e'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'bv-0.10.0.tar.gz': '0d6ef54f583d35d34319ac74510aa2136929e97db601660b250178e7e68b1be4'}, + {'bytecount-0.3.2.tar.gz': 'f861d9ce359f56dbcb6e0c2a1cb84e52ad732cadb57b806adeb3c7668caccbd8'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.1.30.tar.gz': 'b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'chrono-0.4.38.tar.gz': 'a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401'}, + {'clap-2.34.0.tar.gz': 'a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'curl-sys-0.4.77+curl-8.10.1.tar.gz': 'f469e8a5991f277a208224f6c7ad72ecb5f986e36d09ae1f2c1bb9259478a480'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'derive-new-0.6.0.tar.gz': 'd150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'error-chain-0.12.4.tar.gz': '2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fishers_exact-1.0.1.tar.gz': '64993467e77edcbfce160dae38337b4c538aa0e8027039c6eabba8fa335c7b1e'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'fuchsia-cprng-0.1.1.tar.gz': 'a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'gimli-0.31.1.tar.gz': '07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'hashbrown-0.11.2.tar.gz': 'ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'hts-sys-2.1.4.tar.gz': 'e9f348d14cb4e50444e39fcd6b00302fe2ed2bc88094142f6278391d349a386d'}, + {'iana-time-zone-0.1.61.tar.gz': '235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'itertools-0.7.11.tar.gz': '0d47946d458e94a1b7bcabbf6521ea7c037062c81f534615abcad76e84d4970d'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'js-sys-0.3.72.tar.gz': '6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.159.tar.gz': '561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5'}, + {'libz-sys-1.1.20.tar.gz': 'd2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.1.15.tar.gz': 'dcad67dcec2d58ff56f6292582377e6921afdf3bfbd533e26fb8900ae575e002'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'multimap-0.4.0.tar.gz': '2eb04b9f127583ed176e163fb9ec6f3e793b87e21deedd5734a69386a18a0151'}, + {'ndarray-0.12.1.tar.gz': '7cf380a8af901ad627594013a3bbac903ae0a6f94e176e47e46b5bbc1877b928'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-complex-0.2.4.tar.gz': 'b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'object-0.36.5.tar.gz': 'aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e'}, + {'once_cell-1.20.2.tar.gz': '1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775'}, + {'openssl-src-300.3.2+3.3.2.tar.gz': 'a211a18d945ef7e648cc6e0058f4c548ee46aab922ea203e0d30e966ea23647b'}, + {'openssl-sys-0.9.104.tar.gz': '45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741'}, + {'ordered-float-1.1.1.tar.gz': '3305af35278dd29f46fcdd139e0b1fbfae2153f0e5928b39b035542dd31e37b7'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.31.tar.gz': '953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro2-1.0.88.tar.gz': '7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'rand-0.3.23.tar.gz': '64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c'}, + {'rand-0.4.6.tar.gz': '552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.3.1.tar.gz': '7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b'}, + {'rand_core-0.4.2.tar.gz': '9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rawpointer-0.1.0.tar.gz': 'ebac11a9d2e11f2af219b8b8d833b76b1ea0e054aa0e8d8e9e4cbde353bdf019'}, + {'rdrand-0.4.0.tar.gz': '678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2'}, + {'regex-1.11.0.tar.gz': '38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8'}, + {'regex-automata-0.4.8.tar.gz': '368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3'}, + {'regex-syntax-0.8.5.tar.gz': '2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c'}, + {'rust-htslib-0.38.2.tar.gz': '2aca6626496389f6e015e25433b85e2895ad3644b44de91167d847bf2d8c1a1c'}, + {'rustc-demangle-0.1.24.tar.gz': '719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustversion-1.0.18.tar.gz': '0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.210.tar.gz': 'c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a'}, + {'serde_derive-1.0.210.tar.gz': '243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'statrs-0.9.0.tar.gz': '7d8c8660e3867d1a0578cbf7fd9532f1368b7460bd00b080e2d4669618a9bec7'}, + {'strsim-0.8.0.tar.gz': '8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a'}, + {'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.79.tar.gz': '89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590'}, + {'textwrap-0.11.0.tar.gz': 'd326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060'}, + {'thiserror-1.0.64.tar.gz': 'd50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84'}, + {'thiserror-impl-1.0.64.tar.gz': '08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'unicode-bidi-0.3.17.tar.gz': '5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893'}, + {'unicode-ident-1.0.13.tar.gz': 'e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe'}, + {'unicode-normalization-0.1.24.tar.gz': '5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956'}, + {'unicode-width-0.1.14.tar.gz': '7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.95.tar.gz': '128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e'}, + {'wasm-bindgen-backend-0.2.95.tar.gz': 'cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358'}, + {'wasm-bindgen-macro-0.2.95.tar.gz': 'e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56'}, + {'wasm-bindgen-macro-support-0.2.95.tar.gz': '26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68'}, + {'wasm-bindgen-shared-0.2.95.tar.gz': '65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d'}, + {'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'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'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'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('Rust', '1.75.0'), + ('Clang', '16.0.6'), + ('Perl', '5.36.1'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('bzip2', '1.0.8'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +moduleclass = 'bio' 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/libaio/libaio-0.3.113-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libaio/libaio-0.3.113-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b76bc3cecc4 --- /dev/null +++ b/easybuild/easyconfigs/l/libaio/libaio-0.3.113-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'MakeCp' + +name = 'libaio' +version = '0.3.113' +_libversion = '1.0.2' + +homepage = 'https://pagure.io/libaio' +description = "Asynchronous input/output library that uses the kernels native interface." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://pagure.io/%(name)s/archive/%(name)s-%(version)s/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['1c561c20670c5c09cc8437a622008c0693c6a7816c1f30332da3796953b2f454'] + +builddependencies = [('binutils', '2.42')] + +_soname = "libaio.%s.%s" % (SHLIB_EXT, _libversion) + +files_to_copy = [ + (["src/libaio.a", "src/%s" % _soname], "lib"), + (["src/libaio.h"], "include"), +] + +# links to the shared library with generic names +_solinks = [ + "libaio.%s" % SHLIB_EXT, + "libaio.%s.1" % SHLIB_EXT, +] + +postinstallcmds = ["cd %%(installdir)s/lib && ln -s %s %s" % (_soname, l) for l in _solinks] + +sanity_check_paths = { + 'files': ['lib/%s' % l for l in ['libaio.a', _soname] + _solinks] + ['include/libaio.h'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..8f2bb266b13 --- /dev/null +++ b/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'libcerf' +version = '2.4' + +homepage = 'https://jugit.fz-juelich.de/mlz/libcerf' + +description = """ + libcerf is a self-contained numeric library that provides an efficient and + accurate implementation of complex error functions, along with Dawson, + Faddeeva, and Voigt functions. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://jugit.fz-juelich.de/mlz/libcerf/-/archive/v%(version)s/'] +sources = ['libcerf-v%(version)s.tar.gz'] +checksums = ['080b30ae564c3dabe3b89264522adaf5647ec754021572bee54929697b276cdc'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + ('Perl', '5.38.0'), # required for pod2html +] + +sanity_check_paths = { + 'files': ['lib/libcerf.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2714c4d2765 --- /dev/null +++ b/easybuild/easyconfigs/l/libcerf/libcerf-2.4-GCCcore-13.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'libcerf' +version = '2.4' + +homepage = 'https://jugit.fz-juelich.de/mlz/libcerf' + +description = """ + libcerf is a self-contained numeric library that provides an efficient and + accurate implementation of complex error functions, along with Dawson, + Faddeeva, and Voigt functions. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://jugit.fz-juelich.de/mlz/libcerf/-/archive/v%(version)s/'] +sources = ['libcerf-v%(version)s.tar.gz'] +checksums = ['080b30ae564c3dabe3b89264522adaf5647ec754021572bee54929697b276cdc'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), # required for pod2html +] + +sanity_check_paths = { + 'files': ['lib/libcerf.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/libcroco/libcroco-0.6.13-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libcroco/libcroco-0.6.13-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..21b015fd6ed --- /dev/null +++ b/easybuild/easyconfigs/l/libcroco/libcroco-0.6.13-GCCcore-13.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'libcroco' +version = '0.6.13' + +homepage = 'https://gitlab.gnome.org/Archive/libcroco' +description = """Libcroco is a standalone css2 parsing and manipulation library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://download.gnome.org/sources/libcroco/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('libxml2', '2.12.7'), + ('GLib', '2.80.4'), +] + +sanity_check_paths = { + 'files': ['bin/csslint-%(version_major_minor)s', 'lib/libcroco-%%(version_major_minor)s.%s' % SHLIB_EXT, + 'lib/libcroco-%(version_major_minor)s.a'], + 'dirs': ['include/libcroco-%(version_major_minor)s', 'share'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ef7029f258f --- /dev/null +++ b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'libdap' +version = '3.21.0-131' + +homepage = 'https://www.opendap.org/software/libdap' +description = """A C++ SDK which contains an implementation of DAP 2.0 and + DAP4.0. This includes both Client- and Server-side support classes.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['c06b30e108608bc40dcb15df57302af4511023801dca004edb3f2df2cc0a72cc'] + +builddependencies = [ + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('cURL', '8.7.1'), + ('libxml2', '2.12.7'), + ('libtirpc', '1.3.5'), + ('PCRE', '8.45'), + ('util-linux', '2.40'), +] + +preconfigopts = "autoreconf -fi && " +configopts = 'TIRPC_LIBS="-ltirpc"' + + +sanity_check_paths = { + 'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.21.0-27-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-27-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..707b32da095 --- /dev/null +++ b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-27-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'libdap' +version = '3.21.0-27' + +homepage = 'https://www.opendap.org/software/libdap' +description = """A C++ SDK which contains an implementation of DAP 2.0 and + DAP4.0. This includes both Client- and Server-side support classes.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.opendap.org/pub/source/'] +sources = [SOURCE_TAR_GZ] +checksums = ['b5b8229d3aa97fea9bba4a0b11b1ee1c6446bd5f7ad2cff591f86064f465eacf'] + +builddependencies = [ + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('cURL', '8.7.1'), + ('libxml2', '2.12.7'), + ('libtirpc', '1.3.5'), + ('PCRE', '8.45'), + ('util-linux', '2.40'), +] + +configopts = 'TIRPC_LIBS="-ltirpc"' + +sanity_check_paths = { + 'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCC-11.3.0.eb b/easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCCcore-11.3.0.eb similarity index 91% rename from easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCC-11.3.0.eb rename to easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCCcore-11.3.0.eb index 7640cb6a545..b7fbebbccca 100644 --- a/easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/l/libde265/libde265-1.0.11-GCCcore-11.3.0.eb @@ -8,13 +8,14 @@ version = '1.0.11' homepage = 'https://github.com/strukturag/libde265' description = "libde265 is an open source implementation of the h.265 video codec" -toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} source_urls = ['https://github.com/strukturag/libde265/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['2f8f12cabbdb15e53532b7c1eb964d4e15d444db1be802505e6ac97a25035bab'] builddependencies = [ + ('binutils', '2.38'), ('CMake', '3.23.1'), ] diff --git a/easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCC-12.3.0.eb b/easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCCcore-12.3.0.eb similarity index 91% rename from easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCC-12.3.0.eb rename to easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCCcore-12.3.0.eb index 9d6371e84ba..7d6d8ec7ec1 100644 --- a/easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/libde265/libde265-1.0.15-GCCcore-12.3.0.eb @@ -8,13 +8,14 @@ version = '1.0.15' homepage = 'https://github.com/strukturag/libde265' description = "libde265 is an open source implementation of the h.265 video codec" -toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://github.com/strukturag/libde265/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['00251986c29d34d3af7117ed05874950c875dd9292d016be29d3b3762666511d'] builddependencies = [ + ('binutils', '2.40'), ('CMake', '3.26.3'), ] diff --git a/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-11.2.0.eb b/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-10.3.0.eb similarity index 83% rename from easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-11.2.0.eb rename to easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-10.3.0.eb index 38d6c4a7d6e..3cf9fb88dc9 100644 --- a/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-10.3.0.eb @@ -6,13 +6,16 @@ version = '1.0.8' homepage = 'https://github.com/strukturag/libde265' description = "libde265 is an open source implementation of the h.265 video codec" -toolchain = {'name': 'GCC', 'version': '11.2.0'} +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/strukturag/libde265/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['24c791dd334fa521762320ff54f0febfd3c09fc978880a8c5fbc40a88f21d905'] -builddependencies = [('CMake', '3.22.1')] +builddependencies = [ + ('binutils', '2.36.1'), + ('CMake', '3.20.1'), +] sanity_check_paths = { 'files': ['bin/dec265', 'bin/enc265', 'lib/liblibde265.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-10.3.0.eb b/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-11.2.0.eb similarity index 83% rename from easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-10.3.0.eb rename to easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-11.2.0.eb index 647d345e73e..e2065d805b0 100644 --- a/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/l/libde265/libde265-1.0.8-GCCcore-11.2.0.eb @@ -6,13 +6,16 @@ version = '1.0.8' homepage = 'https://github.com/strukturag/libde265' description = "libde265 is an open source implementation of the h.265 video codec" -toolchain = {'name': 'GCC', 'version': '10.3.0'} +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://github.com/strukturag/libde265/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['24c791dd334fa521762320ff54f0febfd3c09fc978880a8c5fbc40a88f21d905'] -builddependencies = [('CMake', '3.20.1')] +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.22.1'), +] sanity_check_paths = { 'files': ['bin/dec265', 'bin/enc265', 'lib/liblibde265.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/l/libdivsufsort/libdivsufsort-2.0.1-foss-2023a.eb b/easybuild/easyconfigs/l/libdivsufsort/libdivsufsort-2.0.1-foss-2023a.eb new file mode 100644 index 00000000000..2ad493ff64d --- /dev/null +++ b/easybuild/easyconfigs/l/libdivsufsort/libdivsufsort-2.0.1-foss-2023a.eb @@ -0,0 +1,36 @@ +# Author: Iñaki Mtz de Ilarduya +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# Update: Petr Král (INUITS) + +easyblock = 'CMakeMake' + +name = 'libdivsufsort' +version = '2.0.1' + +homepage = 'https://github.com/y-256/libdivsufsort' +description = """libdivsufsort is a software library that implements a lightweight suffix + array construction algorithm.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/y-256/libdivsufsort/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['9164cb6044dcb6e430555721e3318d5a8f38871c2da9fd9256665746a69351e0'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +unpack_options = '--strip-components=1' + +# For `divsufsort64.h` to be available. +# See https://github.com/y-256/libdivsufsort/blob/2.0.1/include/CMakeLists.txt#L161 +configopts = '-DBUILD_DIVSUFSORT64=ON' + +sanity_check_paths = { + 'files': ['lib/libdivsufsort.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..bca992c268a --- /dev/null +++ b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.10-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MesonNinja' + +name = 'libepoxy' +version = '1.5.10' + +homepage = 'https://github.com/anholt/libepoxy' +description = "Epoxy is a library for handling OpenGL function pointer management for you" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'anholt' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['a7ced37f4102b745ac86d6a70a9da399cc139ff168ba6b8002b4d8d43c900c15'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('X11', '20240607'), + ('Mesa', '24.1.3'), +] + +configopts = '-Degl=yes --libdir %(installdir)s/lib ' + +sanity_check_paths = { + 'files': ['include/epoxy/%s.h' % x for x in ['common', 'egl_generated', 'egl', 'gl_generated', + 'gl', 'glx_generated', 'glx']] + + ['lib/libepoxy.%s' % SHLIB_EXT], + 'dirs': ['lib'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libffi/libffi-3.4.5.eb b/easybuild/easyconfigs/l/libffi/libffi-3.4.5.eb new file mode 100644 index 00000000000..60ce2defb42 --- /dev/null +++ b/easybuild/easyconfigs/l/libffi/libffi-3.4.5.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'libffi' +version = '3.4.5' + +homepage = 'https://sourceware.org/libffi/' +description = """The libffi library provides a portable, high level programming interface to + various calling conventions. This allows a programmer to call any function + specified by a call interface description at run-time.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/libffi/libffi/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['96fff4e589e3b239d888d9aa44b3ff30693c2ba1617f953925a70ddebcc102b2'] + +configopts = '--disable-exec-static-tramp ' + +sanity_check_paths = { + 'files': ['lib/libffi.a', 'lib/libffi.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'lib' 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/libgeotiff/libgeotiff-1.7.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libgeotiff/libgeotiff-1.7.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..41cba249999 --- /dev/null +++ b/easybuild/easyconfigs/l/libgeotiff/libgeotiff-1.7.3-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'libgeotiff' +version = '1.7.3' + +homepage = 'https://directory.fsf.org/wiki/Libgeotiff' +description = """Library for reading and writing coordinate system information from/to GeoTIFF files""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://download.osgeo.org/geotiff/libgeotiff'] +sources = [SOURCE_TAR_GZ] +checksums = ['ba23a3a35980ed3de916e125c739251f8e3266be07540200125a307d7cf5a704'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('PROJ', '9.4.1'), + ('libjpeg-turbo', '3.0.1'), + ('zlib', '1.3.1'), + ('SQLite', '3.45.3'), + ('LibTIFF', '4.6.0'), + ('cURL', '8.7.1'), +] + +configopts = ' --with-libtiff=$EBROOTLIBTIFF --with-proj=$EBROOTPROJ --with-zlib=$EBROOTZLIB' +configopts += ' --with-jpeg=$EBROOTLIBJPEGMINTURBO' + +sanity_check_paths = { + 'files': ['bin/listgeo', 'lib/libgeotiff.a', 'lib/libgeotiff.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-10.3.0.eb b/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-10.3.0.eb similarity index 89% rename from easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-10.3.0.eb rename to easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-10.3.0.eb index bb5cb6bf57c..93f14603ac1 100644 --- a/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-10.3.0.eb @@ -6,14 +6,16 @@ version = '1.12.0' homepage = 'https://github.com/strukturag/libheif' description = "libheif is an HEIF and AVIF file format decoder and encoder" -toolchain = {'name': 'GCC', 'version': '10.3.0'} +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/strukturag/libheif/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['e1ac2abb354fdc8ccdca71363ebad7503ad731c84022cf460837f0839e171718'] builddependencies = [ + ('binutils', '2.36.1'), ('CMake', '3.20.1'), + ('Doxygen', '1.9.1'), ] dependencies = [ diff --git a/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-11.2.0.eb b/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-11.2.0.eb similarity index 90% rename from easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-11.2.0.eb rename to easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-11.2.0.eb index cf871e99182..164821bc84e 100644 --- a/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/l/libheif/libheif-1.12.0-GCCcore-11.2.0.eb @@ -6,14 +6,16 @@ version = '1.12.0' homepage = 'https://github.com/strukturag/libheif' description = "libheif is an HEIF and AVIF file format decoder and encoder" -toolchain = {'name': 'GCC', 'version': '11.2.0'} +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://github.com/strukturag/libheif/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['e1ac2abb354fdc8ccdca71363ebad7503ad731c84022cf460837f0839e171718'] builddependencies = [ + ('binutils', '2.37'), ('CMake', '3.22.1'), + ('Doxygen', '1.9.1'), ] dependencies = [ diff --git a/easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCC-11.3.0.eb b/easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCCcore-11.3.0.eb similarity index 90% rename from easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCC-11.3.0.eb rename to easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCCcore-11.3.0.eb index 9d966d5571b..c0a02db1292 100644 --- a/easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/l/libheif/libheif-1.16.2-GCCcore-11.3.0.eb @@ -8,14 +8,16 @@ version = '1.16.2' homepage = 'https://github.com/strukturag/libheif' description = "libheif is an HEIF and AVIF file format decoder and encoder" -toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} source_urls = ['https://github.com/strukturag/libheif/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['7f97e4205c0bd9f9b8560536c8bd2e841d1c9a6d610401eb3eb87ed9cdfe78ea'] builddependencies = [ + ('binutils', '2.38'), ('CMake', '3.23.1'), + ('Doxygen', '1.9.4'), ] dependencies = [ diff --git a/easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCC-12.3.0.eb b/easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCCcore-12.3.0.eb similarity index 90% rename from easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCC-12.3.0.eb rename to easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCCcore-12.3.0.eb index ee355100089..9ca2db177a2 100644 --- a/easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/libheif/libheif-1.17.6-GCCcore-12.3.0.eb @@ -8,14 +8,16 @@ version = '1.17.6' homepage = 'https://github.com/strukturag/libheif' description = "libheif is an HEIF and AVIF file format decoder and encoder" -toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://github.com/strukturag/libheif/releases/download/v%(version)s/'] sources = [SOURCE_TAR_GZ] checksums = ['8390baf4913eda0a183e132cec62b875fb2ef507ced5ddddc98dfd2f17780aee'] builddependencies = [ + ('binutils', '2.40'), ('CMake', '3.26.3'), + ('Doxygen', '1.9.7'), ] dependencies = [ diff --git a/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..982f59275b1 --- /dev/null +++ b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'libmad' +version = '0.15.1b' + +homepage = 'https://www.underbit.com/products/mad/' +description = """MAD is a high-quality MPEG audio decoder.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://sourceforge.net/projects/mad/files/%(name)s/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['libmad-0.15.1b-remove-depreciated-gcc-option.patch'] +checksums = [ + 'bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690', # libmad-0.15.1b.tar.gz + # libmad-0.15.1b-remove-depreciated-gcc-option.patch + '8f96a23a22ba66e62f32e20064d01f4c7f6a18ba0aab85d3be9ce63794b2c678', +] + +builddependencies = [('binutils', '2.42')] + +sanity_check_paths = { + 'files': ['include/mad.h', 'lib/libmad.a', 'lib/libmad.la', 'lib/libmad.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib', 'lib64'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d71707d2105 --- /dev/null +++ b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'libnsl' +version = '2.0.1' + +homepage = 'https://github.com/thkukuk/libnsl' +description = """The libnsl package contains the public client interface for NIS(YP).""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/thkukuk/%(name)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['5c9e470b232a7acd3433491ac5221b4832f0c71318618dc6aa04dd05ffcd8fd9'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('libtirpc', '1.3.4'), +] + +# Provide a symlink for libnsl.so.1, which used to be part of glibc. +# This new version of libnsl should be backwards compatible. +postinstallcmds = ['ln -s libnsl.so %(installdir)s/lib/libnsl.so.1'] + +sanity_check_paths = { + 'files': ['include/rpcsvc/yp.h', 'lib/libnsl.a', + 'lib/libnsl.%s' % SHLIB_EXT, 'lib/libnsl.%s.1' % SHLIB_EXT], + 'dirs': ['include'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/l/libreadline/libreadline-8.2-GCCcore-14.2.0.eb b/easybuild/easyconfigs/l/libreadline/libreadline-8.2-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..e36045456fb --- /dev/null +++ b/easybuild/easyconfigs/l/libreadline/libreadline-8.2-GCCcore-14.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'libreadline' +version = '8.2' + +homepage = 'https://tiswww.case.edu/php/chet/readline/rltop.html' +description = """ + The GNU Readline library provides a set of functions for use by applications + that allow users to edit command lines as they are typed in. Both Emacs and + vi editing modes are available. The Readline library includes additional + functions to maintain a list of previously-entered command lines, to recall + and perhaps reedit those lines, and perform csh-like history expansion on + previous commands. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://ftp.gnu.org/gnu/readline'] +sources = ['readline-%(version)s.tar.gz'] +checksums = ['3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('ncurses', '6.5'), +] + +# for the termcap symbols, use EB ncurses +buildopts = "SHLIB_LIBS='-lncurses'" + +sanity_check_paths = { + 'files': ['lib/libreadline.a', 'lib/libhistory.a'] + + ['include/readline/%s' % x + for x in ['chardefs.h', 'history.h', 'keymaps.h', 'readline.h', + 'rlconf.h', 'rlstdc.h', 'rltypedefs.h', 'tilde.h']], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/librsvg/librsvg-2.58.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/librsvg/librsvg-2.58.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..1391bcb955e --- /dev/null +++ b/easybuild/easyconfigs/l/librsvg/librsvg-2.58.0-GCCcore-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'librsvg' +version = '2.58.0' + +homepage = 'https://wiki.gnome.org/Projects/LibRsvg' +description = "Librsvg is a library to render SVG files using cairo." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://download.gnome.org/sources/librsvg/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['d7c444a926406b59790be0deae196e18ed26059da573fa1aa9ec9ca7658a559c'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), + ('Rust', '1.75.0'), +] + +dependencies = [ + ('cairo', '1.17.8'), + ('freetype', '2.13.0'), + ('Gdk-Pixbuf', '2.42.10'), + ('HarfBuzz', '5.3.1'), + ('Pango', '1.50.14'), + ('GObject-Introspection', '1.76.1'), +] + +# don't GdkPixbuf loader (which gets added to the Gdk-Pixbuf installation directory) +configopts = "--disable-pixbuf-loader" + +sanity_check_paths = { + 'files': ['bin/rsvg-convert', 'lib/librsvg-%(version_major)s.a', 'lib/librsvg-%%(version_major)s.%s' % SHLIB_EXT, + 'lib/pkgconfig/librsvg-%(version_major)s.0.pc'], + 'dirs': ['include/librsvg-%(version_major)s.0/librsvg', 'share'], +} + +sanity_check_commands = ["rsvg-convert --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libtool/libtool-2.5.4-GCCcore-14.2.0.eb b/easybuild/easyconfigs/l/libtool/libtool-2.5.4-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..b44f9ef2f77 --- /dev/null +++ b/easybuild/easyconfigs/l/libtool/libtool-2.5.4-GCCcore-14.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'libtool' +version = '2.5.4' + +homepage = 'https://www.gnu.org/software/libtool' + +description = """ + GNU libtool is a generic library support script. Libtool hides the complexity + of using shared libraries behind a consistent, portable interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['da8ebb2ce4dcf46b90098daf962cffa68f4b4f62ea60f798d0ef12929ede6adf'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('M4', '1.4.19'), +] + +sanity_check_paths = { + 'files': ['bin/libtool', 'bin/libtoolize', 'lib/libltdl.%s' % SHLIB_EXT], + 'dirs': ['include/libltdl', 'share/libtool/loaders', 'share/man/man1'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020a.eb index c6769e53157..dd9797af734 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020b.eb index 9dee6b6ef26..0e414c5d729 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2020b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021a.eb index eb7dd54a47d..843a00aaac2 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021b.eb index c5a0fad835b..1050fbf314f 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2021b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2022a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2022a.eb index b1785ef119b..3b14a5ca707 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2022a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2022a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2023a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2023a.eb index 9cf45cc3abe..7c8c009c9d0 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2023a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2023a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2024a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2024a.eb new file mode 100644 index 00000000000..de1dca5e394 --- /dev/null +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2024a.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'libvdwxc' +version = '0.4.0' + +homepage = 'https://libvdwxc.materialsmodeling.org/' +description = """libvdwxc is a general library for evaluating energy and potential for +exchange-correlation (XC) functionals from the vdW-DF family that can be used with various +of density functional theory (DFT) codes.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +source_urls = ['https://launchpad.net/libvdwxc/stable/%(version)s/+download/'] +sources = [SOURCE_TAR_GZ] +checksums = ['3524feb5bb2be86b4688f71653502146b181e66f3f75b8bdaf23dd1ae4a56b33'] + +preconfigopts = 'unset CC && unset FC && ' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['libvdwxc_fdtest', 'libvdwxc_maintest', + 'libvdwxc_q0test', 'libvdwxc_q0test2']] + + ['lib/lib%s.%s' % (x, y) for x in ['vdwxc', 'vdwxcfort'] + for y in ['a', SHLIB_EXT]], + 'dirs': ['include'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2020b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2020b.eb index 751488a0728..a610d3ec773 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2020b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2020b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021a.eb index cdc3abd5a19..e137148b85c 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021b.eb index c8c0d2a8644..5df0f660f1d 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-intel-2021b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'https://libvdwxc.org' +homepage = 'https://libvdwxc.materialsmodeling.org/' description = """libvdwxc is a general library for evaluating energy and potential for exchange-correlation (XC) functionals from the vdW-DF family that can be used with various of density functional theory (DFT) codes.""" 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/libxc/libxc-6.2.2-GCC-13.3.0.eb b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.3.0.eb new file mode 100644 index 00000000000..9e4de5e8082 --- /dev/null +++ b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.3.0.eb @@ -0,0 +1,52 @@ +easyblock = 'CMakeMake' + +name = 'libxc' +version = '6.2.2' + +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.3.0'} + +source_urls = ['https://gitlab.com/%(name)s/%(name)s/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = [ + ('a0f6f1bba7ba5c0c85b2bfe65aca1591025f509a7f11471b4cd651a79491b045', + '3b0523924579cf494cafc6fea92945257f35692b004217d3dfd3ea7ca780e8dc', + 'd1b65ef74615a1e539d87a0e6662f04baf3a2316706b4e2e686da3193b26b20f'), +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), +] + +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" + +# 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/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..c0aa994c3eb --- /dev/null +++ b/easybuild/easyconfigs/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a-CUDA-12.1.1.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'llama-cpp-python' +version = '0.3.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://github.com/abetlen/llama-cpp-python/" +description = """The main goal of llama.cpp is to enable LLM inference with minimal setup and state-of-the-art +performance on a wide range of hardware - locally and in the cloud. Simple Python bindings.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('tqdm', '4.66.1'), +] + +exts_list = [ + ('diskcache', '5.6.3', { + 'checksums': ['2c3a3fa2743d8535d832ec61c2054a1641f41775aa7c556758a109941e33e4fc'], + }), + ('huggingface-hub', '0.26.3', { + 'sources': ['huggingface_hub-%(version)s.tar.gz'], + 'checksums': ['90e1fe62ffc26757a073aaad618422b899ccf9447c2bba8c902a90bef5b42e1d'], + }), + (name, version, { + 'modulename': 'llama_cpp', + 'preinstallopts': 'export CMAKE_ARGS="-DGGML_CUDA=on" && ', + 'source_tmpl': 'llama_cpp_python-%(version)s.tar.gz', + 'checksums': ['8fbf246a55a999f45015ed0d48f91b4ae04ae959827fac1cd6ac6ec65aed2e2f'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a.eb b/easybuild/easyconfigs/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a.eb new file mode 100644 index 00000000000..b43ae968a2d --- /dev/null +++ b/easybuild/easyconfigs/l/llama-cpp-python/llama-cpp-python-0.3.2-gfbf-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'llama-cpp-python' +version = '0.3.2' + +homepage = "https://github.com/abetlen/llama-cpp-python/" +description = """The main goal of llama.cpp is to enable LLM inference with minimal setup and state-of-the-art +performance on a wide range of hardware - locally and in the cloud. Simple Python bindings.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('tqdm', '4.66.1'), +] + +exts_list = [ + ('diskcache', '5.6.3', { + 'checksums': ['2c3a3fa2743d8535d832ec61c2054a1641f41775aa7c556758a109941e33e4fc'], + }), + ('huggingface-hub', '0.26.3', { + 'sources': ['huggingface_hub-%(version)s.tar.gz'], + 'checksums': ['90e1fe62ffc26757a073aaad618422b899ccf9447c2bba8c902a90bef5b42e1d'], + }), + (name, version, { + 'modulename': 'llama_cpp', + 'source_tmpl': 'llama_cpp_python-%(version)s.tar.gz', + 'preinstallopts': 'export CMAKE_ARGS="-DGGML_BLAS=ON -DGGML_BLAS_VENDOR=FlexiBLAS" && ', + 'checksums': ['8fbf246a55a999f45015ed0d48f91b4ae04ae959827fac1cd6ac6ec65aed2e2f'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/MAFFT/MAFFT-7.526-GCC-13.2.0-with-extensions.eb b/easybuild/easyconfigs/m/MAFFT/MAFFT-7.526-GCC-13.2.0-with-extensions.eb new file mode 100644 index 00000000000..175e1013f56 --- /dev/null +++ b/easybuild/easyconfigs/m/MAFFT/MAFFT-7.526-GCC-13.2.0-with-extensions.eb @@ -0,0 +1,51 @@ +# 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) +# 7.305 modified by: +# Adam Huffman (The Francis Crick Institute) +# 7.453 switch to Bundle by: +# Alex Domingo (Vrije Universiteit Brussel) +# Thomas Eylenbosch (Gluo NV) +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'Bundle' + +name = 'MAFFT' +version = '7.526' +versionsuffix = '-with-extensions' +local_commit = 'ee9799916df6a5d5103d46d54933f8eb6d28e244' + +homepage = 'https://mafft.cbrc.jp/alignment/software/source.html' +description = """MAFFT is a multiple sequence alignment program for unix-like operating systems. +It offers a range of multiple alignment methods, L-INS-i (accurate; for alignment +of <∼200 sequences), FFT-NS-2 (fast; for alignment of <∼30,000 sequences), etc.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +default_easyblock = 'ConfigureMake' +default_component_specs = { + 'source_urls': ['https://gitlab.com/sysimm/mafft/-/archive/v%(version)s/'], + 'sources': ['mafft-%(version)s.tar.gz'], + 'checksums': ['6f536ec957b76f4e38e869d935d6626d318361ef8ee95e71c795b924f639ee10'], + 'skipsteps': ['configure'], + 'installopts': 'PREFIX=%(installdir)s', +} + +components = [ + (name, version, { + 'start_dir': 'mafft-v%%(version)s-%s/core' % local_commit, + }), + ('%s Extensions' % name, version, { + 'start_dir': 'mafft-v%%(version)s-%s/extensions' % local_commit, + }), +] + +sanity_check_paths = { + 'files': ['bin/mafft', 'libexec/mafft/mxscarnamod'], # mxscarnamod installed by MAFFT Extensions + 'dirs': ['libexec/mafft'], +} + +sanity_check_commands = ['mafft --version'] + +modextrapaths = {'MAFFT_BINARIES': 'libexec/mafft'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb new file mode 100644 index 00000000000..ffe4080d033 --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'MATES' +version = '0.1.5-20241121' +local_commit = '3846ad5' + +homepage = 'https://github.com/mcgilldinglab/MATES' +description = "A Deep Learning-Based Model for Quantifying Transposable Elements in Single-Cell Sequencing Data." + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('matplotlib', '3.8.2'), + ('anndata', '0.11.1'), + ('pybedtools', '0.10.0'), + ('PyTorch', '2.1.2'), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.2'), + ('SAMtools', '1.19.2'), +] + +exts_list = [ + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + (name, version, { + 'modulename': 'MATES', + # unpin exact versions of dependencies + 'preinstallopts': """sed -i 's/==.*//g' requirements.txt && sed -i 's/==.*/\",/g' setup.py && """, + 'source_urls': ['https://github.com/mcgilldinglab/MATES/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}], + 'checksums': ['40fbb87dd72ca4c9e5347f2e984f9c0a0caa817d4eee692476be71e733e76f61'], + }), +] + +sanity_check_commands = [ + "python -c 'from MATES import bam_processor, data_processor, MATES_model'", + "python -c 'from MATES import TE_quantifier, TE_quantifier_LongRead, TE_quantifier_Intronic'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-foss-2023b.eb new file mode 100644 index 00000000000..826b406a5ec --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-foss-2023b.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'MATES' +version = '0.1.5' + +homepage = 'https://github.com/mcgilldinglab/MATES' +description = "A Deep Learning-Based Model for Quantifying Transposable Elements in Single-Cell Sequencing Data." + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('matplotlib', '3.8.2'), + ('anndata', '0.11.1'), + ('pybedtools', '0.10.0'), + ('PyTorch', '2.1.2'), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.2'), + ('SAMtools', '1.19.2'), +] + +exts_list = [ + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + (name, version, { + 'source_urls': ['https://github.com/mcgilldinglab/MATES/archive'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['be0170d83bf1d039c9de278791e2ad5a61476581c59c245f53ba087b3a5a3407'], + # unpin exact versions of dependencies + 'preinstallopts': """sed -i 's/==.*//g' requirements.txt && sed -i 's/==.*/\",/g' setup.py && """, + 'modulename': 'MATES', + }), +] + +sanity_check_commands = [ + "python -c 'from MATES import bam_processor, data_processor, MATES_model'", + "python -c 'from MATES import TE_quantifier, TE_quantifier_LongRead, TE_quantifier_Intronic'", +] + +moduleclass = 'bio' 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/MCR/MCR-R2024b.eb b/easybuild/easyconfigs/m/MCR/MCR-R2024b.eb new file mode 100644 index 00000000000..17ad8df12f6 --- /dev/null +++ b/easybuild/easyconfigs/m/MCR/MCR-R2024b.eb @@ -0,0 +1,17 @@ +name = 'MCR' +version = 'R2024b' # runtime version 24.2 +local_update = '0' + +homepage = 'https://www.mathworks.com/products/compiler/mcr/' +description = """The MATLAB Runtime is a standalone set of shared libraries + that enables the execution of compiled MATLAB applications + or components on computers that do not have MATLAB installed.""" + +toolchain = SYSTEM + +source_urls = ['https://ssd.mathworks.com/supportfiles/downloads/%%(version)s/Release/%s/deployment_files/' + 'installer/complete/glnxa64/' % local_update] +sources = ['MATLAB_Runtime_%(version)s_glnxa64.zip'] +checksums = ['c46f4b55747aa4a8c03c1ece5bd5360c4dbb2ca402608fbd44688ba55f9b7a54'] + +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/MEME/MEME-5.5.7-gompi-2023b.eb b/easybuild/easyconfigs/m/MEME/MEME-5.5.7-gompi-2023b.eb new file mode 100644 index 00000000000..08fdaab9f31 --- /dev/null +++ b/easybuild/easyconfigs/m/MEME/MEME-5.5.7-gompi-2023b.eb @@ -0,0 +1,63 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'ConfigureMake' + +name = 'MEME' +version = '5.5.7' + +homepage = 'https://meme-suite.org/meme/index.html' +description = """The MEME Suite allows you to: * discover motifs using MEME, DREME (DNA only) or + GLAM2 on groups of related DNA or protein sequences, * search sequence databases with motifs using + MAST, FIMO, MCAST or GLAM2SCAN, * compare a motif to all motifs in a database of motifs, * associate + motifs with Gene Ontology terms via their putative target genes, and * analyse motif enrichment + using SpaMo or CentriMo.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +source_urls = ['https://%(namelower)s-suite.org/%(namelower)s/%(namelower)s-software/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1dca8d0e6d1d36570c1a88ab8dbe7e4b177733fbbeacaa2e8c4674febf57aaf4'] + +dependencies = [ + ('libxml2', '2.11.5'), + ('libxslt', '1.1.38'), + ('zlib', '1.2.13'), + ('Perl', '5.38.0'), + ('Python', '3.11.5'), + ('Ghostscript', '10.02.1'), + ('XML-Compile', '1.63'), +] + +configopts = '--with-perl=${EBROOTPERL}/bin/perl --with-python=${EBROOTPYTHON}/bin/python ' +configopts += '--with-gs=${EBROOTGHOSTSCRIPT}/bin/gs ' +# config.log should indicate that all required/optional dependencies were found (see scripts/dependencies.pl) +configopts += " && grep 'All required and optional Perl modules were found' config.log" + +pretestopts = "OMPI_MCA_rmaps_base_oversubscribe=1 " +# test xstreme4 fails on Ubuntu 20.04, see: https://groups.google.com/g/meme-suite/c/GlfpGwApz1Y +runtest = 'test' + +fix_perl_shebang_for = ['bin/*', 'libexec/meme-%(version)s/*'] +fix_python_shebang_for = ['bin/*', 'libexec/meme-%(version)s/*'] + +sanity_check_paths = { + 'files': ['bin/meme', 'bin/dreme', 'bin/meme-chip', 'libexec/meme-%(version)s/meme2meme'], + 'dirs': ['lib'], +} + +sanity_check_commands = [ + "mpirun meme -h 2>&1 | grep 'Usage:'", + "meme2meme --help", + "perl -e 'require MemeSAX'", + "python -c 'import sequence_py3'", +] + +modextrapaths = { + 'PATH': ['libexec/meme-%(version)s'], + 'PERL5LIB': ['lib/meme-%(version)s/perl'], + 'PYTHONPATH': ['lib/meme-%(version)s/python'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MariaDB/MariaDB-11.7.0-GCC-13.3.0.eb b/easybuild/easyconfigs/m/MariaDB/MariaDB-11.7.0-GCC-13.3.0.eb new file mode 100644 index 00000000000..437ed1edf42 --- /dev/null +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-11.7.0-GCC-13.3.0.eb @@ -0,0 +1,65 @@ +easyblock = 'CMakeMake' + +name = 'MariaDB' +version = '11.7.0' + +homepage = 'https://mariadb.org/' +description = """MariaDB is an enhanced, drop-in replacement for MySQL. +Included engines: myISAM, Aria, InnoDB, RocksDB, TokuDB, OQGraph, Mroonga.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = [ + 'https://archive.mariadb.org/mariadb-%(version)s/source/', + 'http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-%(version)s/source', +] +sources = [SOURCELOWER_TAR_GZ] +patches = ['MariaDB-10.1.13-link-rt-for-jemalloc.patch'] +checksums = [ + {'mariadb-11.7.0.tar.gz': 'b0059a9550bb277790f1ec51e0eb329a8fbb8acfd98b5adb259bc0560ff70553'}, + {'MariaDB-10.1.13-link-rt-for-jemalloc.patch': '8295837e623f6c782e1d64b00e0877ea98cce4bf8846755bb86c8a7732797c19'}, +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('libaio', '0.3.113'), +] + +dependencies = [ + ('ncurses', '6.5'), + ('zlib', '1.3.1'), + ('LZO', '2.10'), # optional + ('lz4', '1.9.4'), # optional + ('XZ', '5.4.5'), # optional + ('jemalloc', '5.3.0'), # optional + ('snappy', '1.1.10'), # needed by RocksDB; optional for InnoDB + ('libxml2', '2.12.7'), # needed by Connect XML + ('Boost', '1.85.0'), # needed by OQGraph + ('Judy', '1.0.5'), # needed by OQGraph + ('PCRE2', '10.43'), + ('OpenSSL', '3', '', SYSTEM), # runtime dep for mysql and PCRE2 for mysqltest +] + +configopts = "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker +configopts += "-DMYSQL_MAINTAINER_MODE=OFF " # disabled to not treat warnings as errors (-Werror) +configopts += "-DWITH_PCRE=auto " # External download sometimes fails so we build PCRE2 directly. +configopts += "-DWITH_ZLIB=system " +configopts += "-DWITH_EMBEDDED_SERVER=ON " # for libmysqld.so & co +configopts += "-DWITH_SAFEMALLOC=OFF " # Disable memory debugger with jemalloc + +sanity_check_commands = ["mysql --help", "mysqltest --help"] + +sanity_check_paths = { + 'files': ['bin/mysql', 'bin/mysqld_safe', 'lib/libmysqlclient.%s' % SHLIB_EXT, 'lib/libmysqld.%s' % SHLIB_EXT, + 'lib/plugin/ha_connect.%s' % SHLIB_EXT, 'lib/plugin/ha_rocksdb.%s' % SHLIB_EXT, + 'lib/plugin/ha_oqgraph.%s' % SHLIB_EXT, 'scripts/mysql_install_db'], + 'dirs': ['include', 'share'], +} + +modextrapaths = {'PATH': 'scripts'} + +# Ensure that jemalloc does not use transparent hugepages. +# Database workloads with THP can cause memory bloat, potentially hiting OOM errors. +modextravars = {'MALLOC_CONF': 'thp:never'} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/m/Mash/Mash-2.3-GCC-13.2.0.eb b/easybuild/easyconfigs/m/Mash/Mash-2.3-GCC-13.2.0.eb new file mode 100644 index 00000000000..e2b387eaecb --- /dev/null +++ b/easybuild/easyconfigs/m/Mash/Mash-2.3-GCC-13.2.0.eb @@ -0,0 +1,50 @@ +# Contribution by +# DeepThought, Flinders University +# Updated to v2.2 +# R.QIAO + +easyblock = 'ConfigureMake' + +name = 'Mash' +version = '2.3' + +homepage = 'http://mash.readthedocs.org' +description = "Fast genome and metagenome distance estimation using MinHash" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/marbl/Mash/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'Mash-2.2_fix-hardcoding.patch', + 'Mash-2.1_disable-memcpy-wrap.patch', + 'Mash-2.3_fix-GCC-11.patch', + 'Mash-2.3_fix_missing_cstdint.patch', +] +checksums = [ + {'v2.3.tar.gz': 'f96cf7305e010012c3debed966ac83ceecac0351dbbfeaa6cd7ad7f068d87fe1'}, + {'Mash-2.2_fix-hardcoding.patch': '0c7315af727a06f408ab3ca69da0860fc671aa870b448a41a509b1e6d7027db5'}, + {'Mash-2.1_disable-memcpy-wrap.patch': '40990cf3d192b533736374bc67a54dbd839d90b0310a0a66f994891da1f85b6e'}, + {'Mash-2.3_fix-GCC-11.patch': '47a55459d4e8c57949648e0f33f3ffc3529563db0efe60f495fdec046f48d94e'}, + {'Mash-2.3_fix_missing_cstdint.patch': 'cd760fe1f5703ed5e4a859e0ebdc088d02fef23ce85e99e916de7c8721d1ebeb'}, +] + +builddependencies = [('Autotools', '20220317')] + +dependencies = [ + ('zlib', '1.2.13'), + ('GSL', '2.7'), + ('CapnProto', '1.0.1.1'), +] + +preconfigopts = "./bootstrap.sh && " +configopts = "--with-capnp=$EBROOTCAPNPROTO --with-gsl=$EBROOTGSL" + +sanity_check_paths = { + 'files': ['bin/mash', 'lib/libmash.a'], + 'dirs': ['include/mash'], +} + +sanity_check_commands = ['mash --version'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Mash/Mash-2.3_fix_missing_cstdint.patch b/easybuild/easyconfigs/m/Mash/Mash-2.3_fix_missing_cstdint.patch new file mode 100644 index 00000000000..8a83ae49613 --- /dev/null +++ b/easybuild/easyconfigs/m/Mash/Mash-2.3_fix_missing_cstdint.patch @@ -0,0 +1,14 @@ +Add missing include of cstdint + +Åke Sandgren, 2024-12-13 +diff -ru Mash-2.3.orig/src/mash/Command.cpp Mash-2.3/src/mash/Command.cpp +--- Mash-2.3.orig/src/mash/Command.cpp 2021-02-27 00:13:33.000000000 +0100 ++++ Mash-2.3/src/mash/Command.cpp 2024-12-13 08:08:30.586895593 +0100 +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + + #include "Command.h" + #include "version.h" diff --git a/easybuild/easyconfigs/m/Mashtree/Mashtree-1.4.6-GCC-13.2.0.eb b/easybuild/easyconfigs/m/Mashtree/Mashtree-1.4.6-GCC-13.2.0.eb new file mode 100644 index 00000000000..6806c56e037 --- /dev/null +++ b/easybuild/easyconfigs/m/Mashtree/Mashtree-1.4.6-GCC-13.2.0.eb @@ -0,0 +1,61 @@ +easyblock = 'Bundle' + +name = 'Mashtree' +version = '1.4.6' + +homepage = 'https://github.com/lskatz/mashtree' +description = "Create a tree using Mash distances." + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +builddependencies = [ + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('Perl', '5.38.0'), + ('BioPerl', '1.7.8'), + ('Mash', '2.3'), + ('QuickTree', '2.5'), +] + +# this is a bundle of Perl modules +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", '') + +exts_list = [ + ('Class::Interface', '1.01', { + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SI/SINISTER/'], + 'sources': ['Class-Interface-1.01.tar.gz'], + 'checksums': ['9fba15cda745ad37f451a0b9e698da3dfc12c2e8589016416a1e3ad77e444b7b'], + }), + ('Bio::Sketch', '0.3', { + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LS/LSKATZ/'], + 'sources': ['Bio-Sketch-0.3.tar.gz'], + 'checksums': ['7ac38552c80ae38e0c72ba3cfa4ecf667aca8b4080616415027bcba1420c8ae2'], + }), + ('Bio::Sketch::Mash', '0.9', { + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LS/LSKATZ/'], + 'sources': ['Bio-Sketch-Mash-0.9.tar.gz'], + 'checksums': ['ea15858bc75674e22bb26d570d5f94c1b4eb5476bbc7bbabdf07359ebd041280'], + }), + (name, version, { + 'source_urls': ['https://github.com/lskatz/mashtree/archive/refs/tags/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['1bd427aba025886d9df99c95f685e06dc2226bca080a64a9cb9d341b5a3d6dac'], + }), +] + +sanity_check_paths = { + 'files': ['bin/mashtree'], + 'dirs': [] +} + +modextrapaths = {'PERL5LIB': [ + 'lib/perl5/site_perl/%(perlver)s', + 'lib/perl5/site_perl/%(perlver)s/x86_64-linux-thread-multi', +]} + +sanity_check_commands = ["mashtree -h"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Miniconda3/Miniconda3-24.7.1-0.eb b/easybuild/easyconfigs/m/Miniconda3/Miniconda3-24.7.1-0.eb new file mode 100644 index 00000000000..c70f0086763 --- /dev/null +++ b/easybuild/easyconfigs/m/Miniconda3/Miniconda3-24.7.1-0.eb @@ -0,0 +1,17 @@ +easyblock = 'EB_Anaconda' + +name = 'Miniconda3' +version = '24.7.1-0' + +homepage = 'https://docs.conda.io/en/latest/miniconda.html' +description = """Miniconda is a free minimal installer for conda. It is a small, + bootstrap version of Anaconda that includes only conda, Python, the packages they + depend on, and a small number of other useful packages.""" + +toolchain = SYSTEM + +source_urls = ['https://repo.anaconda.com/miniconda/'] +sources = ['%(name)s-py312_%(version)s-Linux-x86_64.sh'] +checksums = ['33442cd3813df33dcbb4a932b938ee95398be98344dff4c30f7e757cd2110e4f'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/m/MitoFinder/MitoFinder-1.4.2-foss-2023a-Python-2.7.18.eb b/easybuild/easyconfigs/m/MitoFinder/MitoFinder-1.4.2-foss-2023a-Python-2.7.18.eb new file mode 100644 index 00000000000..b0262f35599 --- /dev/null +++ b/easybuild/easyconfigs/m/MitoFinder/MitoFinder-1.4.2-foss-2023a-Python-2.7.18.eb @@ -0,0 +1,55 @@ +easyblock = 'Tarball' + +name = 'MitoFinder' +version = '1.4.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/RemiAllio/MitoFinder' +description = """MitoFinder is a pipeline to assemble mitochondrial genomes and +annotate mitochondrial genes from trimmed read sequencing data""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/RemiAllio/MitoFinder/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['2d6d3925fb014777df97f272134143cc518944ae05d000a44ada2862d46ec95a'] + +dependencies = [ + ('Java', '11', '', SYSTEM), + ('Python', '2.7.18'), + ('IDBA-UD', '1.1.3'), + ('Infernal', '1.1.5'), + ('tRNAscan-SE', '2.0.12'), + ('Automake', '1.16.5'), +] + +postinstallcmds = [ + # avoid run install.sh + link EB modules + "rm -rf %(installdir)s/idba/bin && cd %(installdir)s/idba && ln -s $EBROOTIDBAMINUD/bin && " + "cd %(installdir)s/metaspades/bin && ln -s spades.py metaspades.py && " + "cd %(installdir)s/trnascanSE && mkdir -p infernal-1.1.3/exec && cd infernal-1.1.3/exec && " + "ln -s $EBROOTINFERNAL/bin && ln -s $EBROOTINFERNAL/share && " + "cd %(installdir)s/trnascanSE && mkdir -p automake-1.13.4/exec && cd automake-1.13.4/exec && " + "ln -s $EBROOTAUTOMAKE/bin && ln -s $EBROOTAUTOMAKE/share && " + "cd %(installdir)s/trnascanSE && mkdir -p tRNAscan-SE-2.0/exec && cd tRNAscan-SE-2.0/exec && " + "ln -s $EBROOTTRNASCANMINSE/bin && ln -s $EBROOTTRNASCANMINSE/lib && ln -s $EBROOTTRNASCANMINSE/include && " + "cd %(installdir)s/mitfi && mkdir -p infernal-1.0.2/exec && cd infernal-1.0.2/exec && " + "ln -s $EBROOTINFERNAL/bin && ln -s $EBROOTINFERNAL/share && " + "cd %(installdir)s/mitfi/infernal-1.0.2 && ln -s $EBROOTINFERNAL/bin src && " + 'cd %(installdir)s && touch install.sh.ok && ' + # fix mitofinder - https://github.com/RemiAllio/MitoFinder/issues/26 + "sed -i 's/os.devnull, \'wb\')/os.devnull, \'wb\'), shell=True/g' mitofinder" +] + +fix_python_shebang_for = ['mitofinder', '*.py'] + +sanity_check_paths = { + 'files': ['mitofinder'], + 'dirs': ['idba', 'megahit', 'metaspades', 'mitfi', 'trnascanSE'], +} + +sanity_check_commands = ['mitofinder -h'] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e885cc05ec0 --- /dev/null +++ b/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-13.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'MakeCp' + +name = 'Molden' +version = '7.3' + +homepage = 'https://www.theochem.ru.nl/molden/' +description = """Molden is a package for displaying Molecular Density from the + Ab Initio packages GAMESS-UK, GAMESS-US and GAUSSIAN and the Semi-Empirical + packages Mopac/Ampac""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.science.ru.nl/Molden/'] +sources = ['%(namelower)s%(version)s.tar.gz'] +patches = [ + 'Molden-7.3_fix_makefile_for_easybuild.patch', + 'Molden-7.3_fix_arg_handling.patch', +] +checksums = [ + {'molden7.3.tar.gz': '870f4fa6635229791bb09bbbd07f51456b2c90101d73564dc47ed7769b8c07a1'}, + {'Molden-7.3_fix_makefile_for_easybuild.patch': 'b97d794cf92978d151d70485250367eebf719885c6a909ca3404a800903e3f7a'}, + {'Molden-7.3_fix_arg_handling.patch': 'e7d0654a7c7a0b069ff4a904d3334ea19f6b0147003bc460745db8b8d5f931cf'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('makedepend', '1.0.9'), +] + +dependencies = [ + ('X11', '20240607'), + ('libglvnd', '1.7.0'), + ('libGLU', '9.0.3'), +] + +buildopts = 'CC="$CC" FC="$F90" FFLAGS="$FFLAGS -fallow-argument-mismatch" all' + +maxparallel = 1 + +files_to_copy = [(['bin/%s' % x for x in ['ambfor', 'ambmd', 'gmolden', 'molden', 'surf']], 'bin'), + 'CopyRight', 'README', 'REGISTER'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ambfor', 'ambmd', 'gmolden', 'molden', 'surf']] + ['README', 'REGISTER'], + 'dirs': [], +} + +sanity_check_commands = ["molden -h"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/Monocle3/Monocle3-1.3.1-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/m/Monocle3/Monocle3-1.3.1-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..4c6da7d43e0 --- /dev/null +++ b/easybuild/easyconfigs/m/Monocle3/Monocle3-1.3.1-foss-2023a-R-4.3.2.eb @@ -0,0 +1,79 @@ +easyblock = 'Bundle' + +name = 'Monocle3' +version = '1.3.1' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cole-trapnell-lab.github.io/monocle3/' +description = """ An analysis toolkit for single-cell RNA-seq. """ + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('pkgconf', '1.9.5')] # for textshaping + +dependencies = [ + ('R', '4.3.2'), + ('Python', '3.11.3'), + ('R-bundle-Bioconductor', '3.18', versionsuffix), + ('GDAL', '3.7.1'), + ('HarfBuzz', '5.3.1'), # for textshaping + ('FriBidi', '1.0.12'), # for textshaping +] + +github_account = 'cole-trapnell-lab' +exts_defaultclass = 'RPackage' +exts_default_options = { + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz', +} + +exts_list = [ + ('grr', '0.9.5', { + 'checksums': ['292606de2983ac5840c90d3e0977441b482c9e73c1674b662f8b4fb8f3632b2b'], + }), + ('Matrix.utils', '0.9.8', { + 'checksums': ['ebc59d3ef751775515586ff1f2396e429a1e9d91a10099d804134fcf74c0ae28'], + }), + ('pbmcapply', '1.5.1', { + 'checksums': ['7ffc2854a384962f0dd523aa9ef33ce8fc290997206b71b840a49049d87112dd'], + }), + ('furrr', '0.3.1', { + 'checksums': ['0d91735e2e9be759b1ab148d115c2c7429b79740514778828e5dab631dc0e48b'], + }), + ('RhpcBLASctl', '0.21-247.1', { + 'checksums': ['5be55fd5ddd8173167a48b9f072835a34062ad0268308f2b3fbd1781a5c99769'], + }), + ('spdep', '1.2-7', { + 'checksums': ['9dac594825bf2d0aa31e845bfec05d8ce206327840fe455391741dbbdf9c9eea'], + }), + ('biglm', '0.9-2.1', { + 'checksums': ['6dcf3c9e7c3f56cdaac94cc0c427f606880467e1e753fe7ea45c10bc44eec947'], + }), + ('speedglm', '0.3-5', { + 'checksums': ['f8663677c10ff324c5639402060ddd2b1a1e917445cb0f8f84e146b85e82bb4b'], + }), + ('leidenbase', '0.1.9', { + 'source_urls': ['https://github.com/%(github_account)s/leidenbase/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': 'leidenbase-%(version)s.tar.gz'}], + 'checksums': ['dd893b13b04d4b943243e7ac8d2ef1850b60d0437b2e4d36a9cff57cd4953f54'], + }), + (name, version, { + 'modulename': '%(namelower)s', + 'source_urls': ['https://github.com/%(github_account)s/monocle3/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': 'Monocle3-%(version)s.tar.gz'}], + 'checksums': ['30e86d5323ea22b302614813ecf102f26774b42710589671a1f1d51ef9ad183d'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['leidenbase', '%(namelower)s'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MrBayes/MrBayes-3.2.7-gompi-2023a.eb b/easybuild/easyconfigs/m/MrBayes/MrBayes-3.2.7-gompi-2023a.eb new file mode 100644 index 00000000000..a3537244720 --- /dev/null +++ b/easybuild/easyconfigs/m/MrBayes/MrBayes-3.2.7-gompi-2023a.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'MrBayes' +version = '3.2.7' + +homepage = "https://nbisweden.github.io/MrBayes/" +description = """MrBayes is a program for Bayesian inference and model choice across + a wide range of phylogenetic and evolutionary models.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://github.com/NBISweden/MrBayes/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['39d9eb269969b501268d5c27f77687c6eaa2c71ccf15c724e6f330fc405f24b9'] + +dependencies = [ + ('libreadline', '8.2'), + ('beagle-lib', '4.0.1', '-CUDA-12.1.1'), +] + +configopts = "--with-mpi --with-readline --with-beagle=$EBROOTBEAGLEMINLIB " + +sanity_check_paths = { + 'files': ['bin/mb'], + 'dirs': ['share'], +} + +sanity_check_commands = ['mb -h'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Mustache/Mustache-1.3.3-foss-2023b.eb b/easybuild/easyconfigs/m/Mustache/Mustache-1.3.3-foss-2023b.eb new file mode 100644 index 00000000000..d637e4db5bb --- /dev/null +++ b/easybuild/easyconfigs/m/Mustache/Mustache-1.3.3-foss-2023b.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'Mustache' +version = '1.3.3' + +homepage = 'https://github.com/ay-lab/mustache' +description = """Mustache (Multi-scale Detection of Chromatin Loops from Hi-C and Micro-C Maps using +Scale-Space Representation) is a tool for multi-scale detection of chromatin loops from Hi-C and Micro-C +contact maps in high resolutions (10kbp all the way to 500bp and even more). +Mustache uses recent technical advances in scale-space theory in +Computer Vision to detect chromatin loops caused by interaction of DNA segments with a variable size.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://pypi.python.org/packages/source/m/mustache_hic'] +sources = [{'download_filename': 'mustache_hic-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['fd7cca927e36145bf6e43903a79c3222ecfeeb497c8f57657d7647ec6eee5a6b'] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('h5py', '3.11.0'), + ('HDF5', '1.14.3'), + ('cooler', '0.10.2'), + ('statsmodels', '0.14.1'), + ('hic-straw', '1.3.1'), +] + +# delete pathlib dependency from setup.py +preinstallopts = "sed -i 's/pathlib//' setup.py && " + +options = {'modulename': 'mustache'} + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/m/makedepend/makedepend-1.0.9-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/makedepend/makedepend-1.0.9-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..20f151d30e1 --- /dev/null +++ b/easybuild/easyconfigs/m/makedepend/makedepend-1.0.9-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'makedepend' +version = '1.0.9' + +homepage = 'https://linux.die.net/man/1/makedepend' +description = "The makedepend package contains a C-preprocessor like utility to determine build-time dependencies." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [XORG_UTIL_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['bc94ffda6cd4671603a69c39dbe8f96b317707b9185b2aaa3b54b5d134b41884'] + +builddependencies = [ + ('binutils', '2.42'), + ('xproto', '7.0.31'), + ('xorg-macros', '1.20.1'), +] + +sanity_check_paths = { + 'files': ['bin/makedepend'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb index 35435c4c92b..29479bab2d2 100644 --- a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb +++ b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb @@ -55,6 +55,9 @@ exts_list = [ ('wurlitzer', '3.0.3', { 'checksums': ['224f5fe70618be3872c05dfddc8c457191ec1870654596279fcc1edadebe3e5b'], }), + ('pyabpoa', '1.5.3', { + 'checksums': ['94714bb5c6be9f5ca35b66a5c63490237ebff2498ff93b82a842a9512b0bbc08'], + }), (name, version, { 'checksums': ['940568212d152f573270967b02f6e841561cc43138b6aa15783c371457fef7b9'], # remove TensorFlow version requirement which is too strict diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2023a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2023a.eb index 57408658cea..1be30a3a90e 100644 --- a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2023a.eb +++ b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2023a.eb @@ -54,6 +54,9 @@ exts_list = [ ('wurlitzer', '3.0.3', { 'checksums': ['224f5fe70618be3872c05dfddc8c457191ec1870654596279fcc1edadebe3e5b'], }), + ('pyabpoa', '1.5.3', { + 'checksums': ['94714bb5c6be9f5ca35b66a5c63490237ebff2498ff93b82a842a9512b0bbc08'], + }), (name, version, { 'checksums': ['940568212d152f573270967b02f6e841561cc43138b6aa15783c371457fef7b9'], # Some requirements are too strict. diff --git a/easybuild/easyconfigs/m/mlst/mlst-2.23.0-foss-2023a.eb b/easybuild/easyconfigs/m/mlst/mlst-2.23.0-foss-2023a.eb new file mode 100644 index 00000000000..7962db95bf6 --- /dev/null +++ b/easybuild/easyconfigs/m/mlst/mlst-2.23.0-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'Tarball' + +name = 'mlst' +version = '2.23.0' + +homepage = "https://github.com/tseemann/mlst" +description = "Scan contig files against PubMLST typing schemes" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/tseemann/mlst/archive/refs/tags/'] +sources = ['v2.23.0.tar.gz'] +checksums = ['35bdbde309ba25293c3cce417d82e79594b9f78365133062923dc3d629bd8846'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('any2fasta', '0.4.2'), + ('BLAST+', '2.14.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': ['scripts', 'db'], +} + +sanity_check_commands = [ + "mlst --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/modin/modin-0.32.0-foss-2024a.eb b/easybuild/easyconfigs/m/modin/modin-0.32.0-foss-2024a.eb new file mode 100644 index 00000000000..d51b9af49a8 --- /dev/null +++ b/easybuild/easyconfigs/m/modin/modin-0.32.0-foss-2024a.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'modin' +version = '0.32.0' + +homepage = 'https://github.com/modin-project/modin' +description = """Modin uses Ray, Dask or Unidist to provide an effortless way to speed up your pandas notebooks, +scripts, and libraries. """ + +toolchain = {'name': 'foss', 'version': '2024a'} + +builddependencies = [ + ('Cython', '3.0.10'), + # Needed for tests + ('boto3', '1.35.36'), + ('s3fs', '2024.9.0'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('dask', '2024.9.1'), + ('OpenMPI', '5.0.3'), + ('Ray-project', '2.37.0'), + ('Arrow', '17.0.0'), +] + +exts_list = [ + ('unidist', '0.7.2', { + 'checksums': ['6386e1ad5143fe132b9f96e232fe85fc39830ed2886515440e4ba1473255e4a0'], + }), + # The oversubscription is done in their own CI as well. + # Ray has limitations on unix socket path length, so it is not tested here. + (name, version, { + 'patches': ['modin-0.32.0_fix-pytest-config.patch'], + 'runtest': ( + "MODIN_ENGINE=unidist UNIDIST_ENGINE=mpi " + "mpiexec -n=1 --map-by :OVERSUBSCRIBE pytest modin/tests/pandas/test_general.py &&" + "MODIN_ENGINE=dask pytest modin/tests/pandas/test_general.py" + ), + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/modin-project/%(name)s/archive/refs/tags'], + 'testinstall': True, + 'checksums': [ + {'0.32.0.tar.gz': 'f2ef11f384a7d47eb6680a2f6f4bbc3404fa6290163d36384032daff3837b063'}, + {'modin-0.32.0_fix-pytest-config.patch': + 'c49bd5c072a87321760c7c5eebc957f4f6962763a3526a500fe6330cf3f2b765'}, + ], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/modin/modin-0.32.0_fix-pytest-config.patch b/easybuild/easyconfigs/m/modin/modin-0.32.0_fix-pytest-config.patch new file mode 100644 index 00000000000..990e053d328 --- /dev/null +++ b/easybuild/easyconfigs/m/modin/modin-0.32.0_fix-pytest-config.patch @@ -0,0 +1,20 @@ +Removes unnecessary options for pytest that induce additional dependencies. + +--- 0.32.0/foss-2024a/modin/modin-0.32.0/setup.cfg.orig 2024-10-17 15:56:55.245266649 +0200 ++++ 0.32.0/foss-2024a/modin/modin-0.32.0/setup.cfg 2024-10-17 15:57:34.748841878 +0200 +@@ -11,15 +11,6 @@ + tag_prefix = + parentdir_prefix = modin- + +-[tool:pytest] +-addopts = --cov-config=setup.cfg --cov=modin --cov-append --cov-report= -m "not exclude_by_default" +-xfail_strict=true +-markers = +- exclude_in_sanity +- exclude_by_default +-filterwarnings = +- error:.*defaulting to pandas.*:UserWarning +- + [isort] + profile = black + diff --git a/easybuild/easyconfigs/m/modkit/modkit-0.3.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/m/modkit/modkit-0.3.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..63e5c0110bf --- /dev/null +++ b/easybuild/easyconfigs/m/modkit/modkit-0.3.3-GCCcore-12.3.0.eb @@ -0,0 +1,572 @@ +easyblock = 'Cargo' + +name = 'modkit' +version = '0.3.3' + +homepage = 'https://github.com/nanoporetech/modkit' +description = 'A bioinformatics tool for working with modified bases.' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/nanoporetech/modkit/archive/'] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [ + ('binutils', '2.40'), + ('Rust', '1.75.0'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +crates = [ + ('adler2', '2.0.0'), + ('ahash', '0.8.11'), + ('aho-corasick', '1.1.3'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('ansi_term', '0.12.1'), + ('anstream', '0.6.15'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.5'), + ('anstyle-query', '1.1.1'), + ('anstyle-wincon', '3.0.4'), + ('anyhow', '1.0.91'), + ('approx', '0.5.1'), + ('arc-swap', '1.7.1'), + ('assert_approx_eq', '1.1.0'), + ('autocfg', '1.4.0'), + ('bio', '1.6.0'), + ('bio-types', '1.0.4'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '2.6.0'), + ('bitvec', '1.0.1'), + ('block-buffer', '0.10.4'), + ('bstr', '1.10.0'), + ('bumpalo', '3.16.0'), + ('bv', '0.11.1'), + ('bytecount', '0.6.8'), + ('bytemuck', '1.19.0'), + ('byteorder', '1.5.0'), + ('bytes', '1.8.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.31'), + ('cfg-if', '1.0.0'), + ('charming', '0.3.1'), + ('chrono', '0.4.38'), + ('clap', '4.5.20'), + ('clap_builder', '4.5.20'), + ('clap_derive', '4.5.18'), + ('clap_lex', '0.7.2'), + ('cmake', '0.1.51'), + ('colorchoice', '1.0.2'), + ('common_macros', '0.1.1'), + ('console', '0.15.8'), + ('core-foundation-sys', '0.8.7'), + ('cpufeatures', '0.2.14'), + ('crc32fast', '1.4.2'), + ('crossbeam', '0.8.4'), + ('crossbeam-channel', '0.5.13'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-queue', '0.3.11'), + ('crossbeam-utils', '0.8.20'), + ('crypto-common', '0.1.6'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('curl-sys', '0.4.77+curl-8.10.1'), + ('custom_derive', '0.1.7'), + ('derivative', '2.2.0'), + ('derive-new', '0.5.9'), + ('derive-new', '0.6.0'), + ('destructure_traitobject', '0.2.0'), + ('digest', '0.10.7'), + ('dirs-next', '2.0.0'), + ('dirs-sys-next', '0.1.2'), + ('doc-comment', '0.3.3'), + ('editdistancek', '1.0.2'), + ('either', '1.13.0'), + ('encode_unicode', '0.3.6'), + ('encode_unicode', '1.0.0'), + ('enum-map', '2.7.3'), + ('enum-map-derive', '0.17.0'), + ('equivalent', '1.0.1'), + ('errno', '0.3.9'), + ('fastrand', '2.1.1'), + ('feature-probe', '0.1.1'), + ('fixedbitset', '0.4.2'), + ('flate2', '1.0.34'), + ('fnv', '1.0.7'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('funty', '2.0.0'), + ('fxhash', '0.2.1'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.15'), + ('glob', '0.3.1'), + ('handlebars', '4.5.0'), + ('hashbrown', '0.13.2'), + ('hashbrown', '0.15.0'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.3.9'), + ('hermit-abi', '0.4.0'), + ('hts-sys', '2.1.4'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.61'), + ('iana-time-zone-haiku', '0.1.2'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '2.6.0'), + ('indicatif', '0.17.8'), + ('instant', '0.1.13'), + ('is-terminal', '0.4.13'), + ('is_terminal_polyfill', '1.70.1'), + ('itertools', '0.11.0'), + ('itertools', '0.12.1'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('js-sys', '0.3.72'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.161'), + ('libm', '0.2.8'), + ('libredox', '0.1.3'), + ('libz-sys', '1.1.20'), + ('linear-map', '1.2.0'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.12'), + ('log', '0.4.22'), + ('log-mdc', '0.1.0'), + ('log-once', '0.4.1'), + ('log4rs', '1.3.0'), + ('lru', '0.9.0'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.9'), + ('memchr', '2.7.4'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.8.0'), + ('multimap', '0.9.1'), + ('nalgebra', '0.29.0'), + ('nalgebra-macros', '0.1.0'), + ('ndarray', '0.15.6'), + ('newtype_derive', '0.1.6'), + ('nom', '7.1.3'), + ('noodles', '0.50.0'), + ('noodles-bgzf', '0.24.0'), + ('noodles-core', '0.12.0'), + ('noodles-csi', '0.24.0'), + ('noodles-tabix', '0.29.0'), + ('num', '0.4.3'), + ('num-bigint', '0.4.6'), + ('num-complex', '0.4.6'), + ('num-integer', '0.1.46'), + ('num-iter', '0.1.45'), + ('num-rational', '0.4.2'), + ('num-traits', '0.2.19'), + ('num_cpus', '1.16.0'), + ('number_prefix', '0.4.0'), + ('once_cell', '1.20.2'), + ('openssl-src', '300.4.0+3.4.0'), + ('openssl-sys', '0.9.104'), + ('order-stat', '0.1.3'), + ('ordered-float', '2.10.1'), + ('ordered-float', '3.9.2'), + ('parking_lot', '0.12.3'), + ('parking_lot_core', '0.9.10'), + ('paste', '1.0.15'), + ('percent-encoding', '2.3.1'), + ('peroxide', '0.32.1'), + ('peroxide-ad', '0.3.0'), + ('pest', '2.7.14'), + ('pest_derive', '2.7.14'), + ('pest_generator', '2.7.14'), + ('pest_meta', '2.7.14'), + ('petgraph', '0.6.5'), + ('pkg-config', '0.3.31'), + ('portable-atomic', '1.9.0'), + ('ppv-lite86', '0.2.20'), + ('prettytable-rs', '0.10.0'), + ('proc-macro2', '1.0.89'), + ('pulp', '0.18.22'), + ('puruspe', '0.2.5'), + ('quick-error', '1.2.3'), + ('quote', '1.0.37'), + ('radium', '0.7.0'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_distr', '0.4.3'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('reborrow', '0.5.5'), + ('redox_syscall', '0.5.7'), + ('redox_users', '0.4.6'), + ('regex', '1.11.0'), + ('regex-automata', '0.4.8'), + ('regex-syntax', '0.8.5'), + ('rust-htslib', '0.46.0'), + ('rust-lapper', '1.1.0'), + ('rustc-hash', '1.1.0'), + ('rustc_version', '0.1.7'), + ('rustix', '0.38.37'), + ('rustversion', '1.0.18'), + ('rv', '0.16.0'), + ('ryu', '1.0.18'), + ('safe_arch', '0.7.2'), + ('scopeguard', '1.2.0'), + ('semver', '0.1.20'), + ('serde', '1.0.213'), + ('serde-value', '0.7.0'), + ('serde_derive', '1.0.213'), + ('serde_json', '1.0.132'), + ('serde_yaml', '0.9.34+deprecated'), + ('sha2', '0.10.8'), + ('shlex', '1.3.0'), + ('simba', '0.6.0'), + ('similar', '2.6.0'), + ('similar-asserts', '1.6.0'), + ('smallvec', '1.13.2'), + ('special', '0.10.3'), + ('statrs', '0.16.1'), + ('strsim', '0.11.1'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.3'), + ('strum_macros', '0.26.4'), + ('substring', '1.4.5'), + ('syn', '1.0.109'), + ('syn', '2.0.82'), + ('tap', '1.0.1'), + ('tempfile', '3.13.0'), + ('term', '0.7.0'), + ('terminal_size', '0.4.0'), + ('thiserror', '1.0.65'), + ('thiserror-impl', '1.0.65'), + ('thread-id', '4.2.2'), + ('thread-tree', '0.3.3'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('triple_accel', '0.4.0'), + ('typemap-ors', '1.0.0'), + ('typenum', '1.17.0'), + ('ucd-trie', '0.1.7'), + ('unicode-bidi', '0.3.17'), + ('unicode-ident', '1.0.13'), + ('unicode-normalization', '0.1.24'), + ('unicode-segmentation', '1.12.0'), + ('unicode-width', '0.1.14'), + ('unsafe-any-ors', '1.0.0'), + ('unsafe-libyaml', '0.2.11'), + ('url', '2.5.2'), + ('utf8parse', '0.2.2'), + ('vcpkg', '0.2.15'), + ('vec_map', '0.8.2'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.95'), + ('wasm-bindgen-backend', '0.2.95'), + ('wasm-bindgen-macro', '0.2.95'), + ('wasm-bindgen-macro-support', '0.2.95'), + ('wasm-bindgen-shared', '0.2.95'), + ('wide', '0.7.28'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-core', '0.52.0'), + ('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'), + ('wyz', '0.5.1'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + +checksums = [ + {'v0.3.3.tar.gz': 'f61674c48ef6b9e3ebd547067d693e128c1da66761ddda08d479d58d52017b2b'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'ahash-0.8.11.tar.gz': 'e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'ansi_term-0.12.1.tar.gz': 'd52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2'}, + {'anstream-0.6.15.tar.gz': '64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'anstyle-parse-0.2.5.tar.gz': 'eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb'}, + {'anstyle-query-1.1.1.tar.gz': '6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a'}, + {'anstyle-wincon-3.0.4.tar.gz': '5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8'}, + {'anyhow-1.0.91.tar.gz': 'c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'arc-swap-1.7.1.tar.gz': '69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457'}, + {'assert_approx_eq-1.1.0.tar.gz': '3c07dab4369547dbe5114677b33fbbf724971019f3818172d59a97a61c774ffd'}, + {'autocfg-1.4.0.tar.gz': 'ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26'}, + {'bio-1.6.0.tar.gz': '7a72cb93babf08c85b375c2938ac678cc637936b3ebb72266d433cec2577f6c2'}, + {'bio-types-1.0.4.tar.gz': 'f4dcf54f8b7f51450207d54780bab09c05f30b8b0caa991545082842e466ad7e'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bitvec-1.0.1.tar.gz': '1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'bstr-1.10.0.tar.gz': '40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'bv-0.11.1.tar.gz': '8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'bytemuck-1.19.0.tar.gz': '8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.8.0.tar.gz': '9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.1.31.tar.gz': 'c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'charming-0.3.1.tar.gz': 'f4c6b6990238a64b4ae139e7085ce2a11815cb67a0c066a3333ce40f3a329be3'}, + {'chrono-0.4.38.tar.gz': 'a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401'}, + {'clap-4.5.20.tar.gz': 'b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8'}, + {'clap_builder-4.5.20.tar.gz': '19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54'}, + {'clap_derive-4.5.18.tar.gz': '4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab'}, + {'clap_lex-0.7.2.tar.gz': '1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'colorchoice-1.0.2.tar.gz': 'd3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0'}, + {'common_macros-0.1.1.tar.gz': 'f3f6d59c71e7dc3af60f0af9db32364d96a16e9310f3f5db2b55ed642162dd35'}, + {'console-0.15.8.tar.gz': '0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'cpufeatures-0.2.14.tar.gz': '608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'crossbeam-0.8.4.tar.gz': '1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8'}, + {'crossbeam-channel-0.5.13.tar.gz': '33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-queue-0.3.11.tar.gz': 'df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crypto-common-0.1.6.tar.gz': '1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'curl-sys-0.4.77+curl-8.10.1.tar.gz': 'f469e8a5991f277a208224f6c7ad72ecb5f986e36d09ae1f2c1bb9259478a480'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derivative-2.2.0.tar.gz': 'fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'derive-new-0.6.0.tar.gz': 'd150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad'}, + {'destructure_traitobject-0.2.0.tar.gz': '3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7'}, + {'digest-0.10.7.tar.gz': '9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292'}, + {'dirs-next-2.0.0.tar.gz': 'b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1'}, + {'dirs-sys-next-0.1.2.tar.gz': '4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d'}, + {'doc-comment-0.3.3.tar.gz': 'fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10'}, + {'editdistancek-1.0.2.tar.gz': '3e02df23d5b1c6f9e69fa603b890378123b93073df998a21e6e33b9db0a32613'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'encode_unicode-1.0.0.tar.gz': '34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0'}, + {'enum-map-2.7.3.tar.gz': '6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9'}, + {'enum-map-derive-0.17.0.tar.gz': 'f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'fastrand-2.1.1.tar.gz': 'e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'flate2-1.0.34.tar.gz': 'a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'funty-2.0.0.tar.gz': 'e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'handlebars-4.5.0.tar.gz': 'faa67bab9ff362228eb3d00bd024a4965d8231bbb7921167f0cfa66c6626b225'}, + {'hashbrown-0.13.2.tar.gz': '43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e'}, + {'hashbrown-0.15.0.tar.gz': '1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.3.9.tar.gz': 'd231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024'}, + {'hermit-abi-0.4.0.tar.gz': 'fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc'}, + {'hts-sys-2.1.4.tar.gz': 'e9f348d14cb4e50444e39fcd6b00302fe2ed2bc88094142f6278391d349a386d'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.61.tar.gz': '235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'indexmap-2.6.0.tar.gz': '707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da'}, + {'indicatif-0.17.8.tar.gz': '763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3'}, + {'instant-0.1.13.tar.gz': 'e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222'}, + {'is-terminal-0.4.13.tar.gz': '261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b'}, + {'is_terminal_polyfill-1.70.1.tar.gz': '7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'js-sys-0.3.72.tar.gz': '6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.161.tar.gz': '8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libredox-0.1.3.tar.gz': 'c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d'}, + {'libz-sys-1.1.20.tar.gz': 'd2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.12.tar.gz': '07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'log-mdc-0.1.0.tar.gz': 'a94d21414c1f4a51209ad204c1776a3d0765002c76c6abcb602a6f09f1e881c7'}, + {'log-once-0.4.1.tar.gz': '6d8a05e3879b317b1b6dbf353e5bba7062bedcc59815267bb23eaa0c576cebf0'}, + {'log4rs-1.3.0.tar.gz': '0816135ae15bd0391cf284eab37e6e3ee0a6ee63d2ceeb659862bd8d0a984ca6'}, + {'lru-0.9.0.tar.gz': '71e7d46de488603ffdd5f30afbc64fbba2378214a2c3a2fb83abf3d33126df17'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.9.tar.gz': '9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'multimap-0.9.1.tar.gz': 'e1a5d38b9b352dbd913288736af36af41c48d61b1a8cd34bcecd727561b7d511'}, + {'nalgebra-0.29.0.tar.gz': 'd506eb7e08d6329505faa8a3a00a5dcc6de9f76e0c77e4b75763ae3c770831ff'}, + {'nalgebra-macros-0.1.0.tar.gz': '01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'noodles-0.50.0.tar.gz': '86c1d34ec18d6b3d7699fae207ba766a5b969764d2cad072dc769cb6eca06b36'}, + {'noodles-bgzf-0.24.0.tar.gz': '8f4c43ff0879c542c1d8fd570c03e368f629587721d10267f2619e36afc9c9b0'}, + {'noodles-core-0.12.0.tar.gz': '94fbe3192fe33acacabaedd387657f39b0fc606f1996d546db0dfe14703b843a'}, + {'noodles-csi-0.24.0.tar.gz': '1b2bb780250c88bc9ea69b56c1aa9df75decc6b79035f3f5ab10c0cd84d24fc6'}, + {'noodles-tabix-0.29.0.tar.gz': '056e394ddb4c64bcc9806551a69833294062159600aa8ecf7167a922512bda4f'}, + {'num-0.4.3.tar.gz': '35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23'}, + {'num-bigint-0.4.6.tar.gz': 'a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9'}, + {'num-complex-0.4.6.tar.gz': '73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-iter-0.1.45.tar.gz': '1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf'}, + {'num-rational-0.4.2.tar.gz': 'f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'num_cpus-1.16.0.tar.gz': '4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'once_cell-1.20.2.tar.gz': '1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775'}, + {'openssl-src-300.4.0+3.4.0.tar.gz': 'a709e02f2b4aca747929cca5ed248880847c650233cf8b8cdc48f40aaf4898a6'}, + {'openssl-sys-0.9.104.tar.gz': '45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741'}, + {'order-stat-0.1.3.tar.gz': 'efa535d5117d3661134dbf1719b6f0ffe06f2375843b13935db186cd094105eb'}, + {'ordered-float-2.10.1.tar.gz': '68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c'}, + {'ordered-float-3.9.2.tar.gz': 'f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc'}, + {'parking_lot-0.12.3.tar.gz': 'f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27'}, + {'parking_lot_core-0.9.10.tar.gz': '1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8'}, + {'paste-1.0.15.tar.gz': '57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'peroxide-0.32.1.tar.gz': '703b5fbdc1f9018a66e2db8758633cec31d39ad3127bfd38c9b6ad510637519c'}, + {'peroxide-ad-0.3.0.tar.gz': 'f6fba8ff3f40b67996f7c745f699babaa3e57ef5c8178ec999daf7eedc51dc8c'}, + {'pest-2.7.14.tar.gz': '879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442'}, + {'pest_derive-2.7.14.tar.gz': 'd214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd'}, + {'pest_generator-2.7.14.tar.gz': 'eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e'}, + {'pest_meta-2.7.14.tar.gz': 'b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d'}, + {'petgraph-0.6.5.tar.gz': 'b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db'}, + {'pkg-config-0.3.31.tar.gz': '953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2'}, + {'portable-atomic-1.9.0.tar.gz': 'cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'prettytable-rs-0.10.0.tar.gz': 'eea25e07510aa6ab6547308ebe3c036016d162b8da920dbb079e3ba8acf3d95a'}, + {'proc-macro2-1.0.89.tar.gz': 'f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e'}, + {'pulp-0.18.22.tar.gz': 'a0a01a0dc67cf4558d279f0c25b0962bd08fc6dec0137699eae304103e882fe6'}, + {'puruspe-0.2.5.tar.gz': '3804877ffeba468c806c2ad9057bbbae92e4b2c410c2f108baaa0042f241fa4c'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'radium-0.7.0.tar.gz': 'dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rand_distr-0.4.3.tar.gz': '32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'reborrow-0.5.5.tar.gz': '03251193000f4bd3b042892be858ee50e8b3719f2b08e5833ac4353724632430'}, + {'redox_syscall-0.5.7.tar.gz': '9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f'}, + {'redox_users-0.4.6.tar.gz': 'ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43'}, + {'regex-1.11.0.tar.gz': '38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8'}, + {'regex-automata-0.4.8.tar.gz': '368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3'}, + {'regex-syntax-0.8.5.tar.gz': '2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c'}, + {'rust-htslib-0.46.0.tar.gz': 'aec6f9ca4601beb4ae75ff8c99144dd15de5a873f6adf058da299962c760968e'}, + {'rust-lapper-1.1.0.tar.gz': 'ee43d8e721ac803031dbab6a944b957b49a3b11eadbc099880c8aaaebf23ed27'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustix-0.38.37.tar.gz': '8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811'}, + {'rustversion-1.0.18.tar.gz': '0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248'}, + {'rv-0.16.0.tar.gz': 'c64081d5a5cd97b60822603f9900df77d67c8258e9a8143b6aff950753f2bbe1'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'safe_arch-0.7.2.tar.gz': 'c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.213.tar.gz': '3ea7893ff5e2466df8d720bb615088341b295f849602c6956047f8f80f0e9bc1'}, + {'serde-value-0.7.0.tar.gz': 'f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c'}, + {'serde_derive-1.0.213.tar.gz': '7e85ad2009c50b58e87caa8cd6dac16bdf511bbfb7af6c33df902396aa480fa5'}, + {'serde_json-1.0.132.tar.gz': 'd726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03'}, + {'serde_yaml-0.9.34+deprecated.tar.gz': '6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47'}, + {'sha2-0.10.8.tar.gz': '793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'simba-0.6.0.tar.gz': 'f0b7840f121a46d63066ee7a99fc81dcabbc6105e437cae43528cea199b5a05f'}, + {'similar-2.6.0.tar.gz': '1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e'}, + {'similar-asserts-1.6.0.tar.gz': 'cfe85670573cd6f0fa97940f26e7e6601213c3b0555246c24234131f88c5709e'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'special-0.10.3.tar.gz': 'b89cf0d71ae639fdd8097350bfac415a41aabf1d5ddd356295fdc95f09760382'}, + {'statrs-0.16.1.tar.gz': 'b35a062dbadac17a42e0fc64c27f419b25d6fae98572eb43c8814c9e873d7721'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum-0.25.0.tar.gz': '290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}, + {'substring-1.4.5.tar.gz': '42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.82.tar.gz': '83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021'}, + {'tap-1.0.1.tar.gz': '55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369'}, + {'tempfile-3.13.0.tar.gz': 'f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b'}, + {'term-0.7.0.tar.gz': 'c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f'}, + {'terminal_size-0.4.0.tar.gz': '4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef'}, + {'thiserror-1.0.65.tar.gz': '5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5'}, + {'thiserror-impl-1.0.65.tar.gz': 'ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602'}, + {'thread-id-4.2.2.tar.gz': 'cfe8f25bbdd100db7e1d34acf7fd2dc59c4bf8f7483f505eaa7d4f12f76cc0ea'}, + {'thread-tree-0.3.3.tar.gz': 'ffbd370cb847953a25954d9f63e14824a36113f8c72eecf6eccef5dc4b45d630'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'triple_accel-0.4.0.tar.gz': '22048bc95dfb2ffd05b1ff9a756290a009224b60b2f0e7525faeee7603851e63'}, + {'typemap-ors-1.0.0.tar.gz': 'a68c24b707f02dd18f1e4ccceb9d49f2058c2fb86384ef9972592904d7a28867'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'ucd-trie-0.1.7.tar.gz': '2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971'}, + {'unicode-bidi-0.3.17.tar.gz': '5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893'}, + {'unicode-ident-1.0.13.tar.gz': 'e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe'}, + {'unicode-normalization-0.1.24.tar.gz': '5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956'}, + {'unicode-segmentation-1.12.0.tar.gz': 'f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493'}, + {'unicode-width-0.1.14.tar.gz': '7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af'}, + {'unsafe-any-ors-1.0.0.tar.gz': 'e0a303d30665362d9680d7d91d78b23f5f899504d4f08b3c4cf08d055d87c0ad'}, + {'unsafe-libyaml-0.2.11.tar.gz': '673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.95.tar.gz': '128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e'}, + {'wasm-bindgen-backend-0.2.95.tar.gz': 'cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358'}, + {'wasm-bindgen-macro-0.2.95.tar.gz': 'e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56'}, + {'wasm-bindgen-macro-support-0.2.95.tar.gz': '26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68'}, + {'wasm-bindgen-shared-0.2.95.tar.gz': '65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d'}, + {'wide-0.7.28.tar.gz': 'b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690'}, + {'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'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'wyz-0.5.1.tar.gz': '05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/modkit/modkit-0.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/modkit/modkit-0.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..cae76ec0a45 --- /dev/null +++ b/easybuild/easyconfigs/m/modkit/modkit-0.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,586 @@ +easyblock = 'Cargo' + +name = 'modkit' +version = '0.4.1' + +homepage = 'https://github.com/nanoporetech/modkit' +description = 'A bioinformatics tool for working with modified bases.' + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/nanoporetech/modkit/archive/'] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [ + ('binutils', '2.42'), + ('Rust', '1.78.0'), + ('Perl-bundle-CPAN', '5.38.2'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +crates = [ + ('adler2', '2.0.0'), + ('ahash', '0.8.11'), + ('aho-corasick', '1.1.3'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('ansi_term', '0.12.1'), + ('anstream', '0.6.15'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.5'), + ('anstyle-query', '1.1.1'), + ('anstyle-wincon', '3.0.4'), + ('anyhow', '1.0.90'), + ('approx', '0.5.1'), + ('arc-swap', '1.7.1'), + ('assert_approx_eq', '1.1.0'), + ('autocfg', '1.4.0'), + ('bio', '1.6.0'), + ('bio-types', '1.0.4'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '2.6.0'), + ('bitvec', '1.0.1'), + ('block-buffer', '0.10.4'), + ('bstr', '1.10.0'), + ('bumpalo', '3.16.0'), + ('bv', '0.11.1'), + ('bytecount', '0.6.8'), + ('bytemuck', '1.19.0'), + ('byteorder', '1.5.0'), + ('bytes', '1.8.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.31'), + ('cfg-if', '1.0.0'), + ('charming', '0.3.1'), + ('chrono', '0.4.38'), + ('clap', '4.5.20'), + ('clap_builder', '4.5.20'), + ('clap_derive', '4.5.18'), + ('clap_lex', '0.7.2'), + ('cmake', '0.1.51'), + ('colorchoice', '1.0.2'), + ('common_macros', '0.1.1'), + ('console', '0.15.8'), + ('core-foundation-sys', '0.8.7'), + ('core_affinity', '0.8.1'), + ('cpufeatures', '0.2.14'), + ('crc32fast', '1.4.2'), + ('crossbeam', '0.8.4'), + ('crossbeam-channel', '0.5.13'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-queue', '0.3.11'), + ('crossbeam-utils', '0.8.20'), + ('crypto-common', '0.1.6'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('curl-sys', '0.4.77+curl-8.10.1'), + ('custom_derive', '0.1.7'), + ('derivative', '2.2.0'), + ('derive-new', '0.5.9'), + ('derive-new', '0.6.0'), + ('destructure_traitobject', '0.2.0'), + ('digest', '0.10.7'), + ('dirs-next', '2.0.0'), + ('dirs-sys-next', '0.1.2'), + ('doc-comment', '0.3.3'), + ('editdistancek', '1.0.2'), + ('either', '1.13.0'), + ('encode_unicode', '0.3.6'), + ('encode_unicode', '1.0.0'), + ('enum-map', '2.7.3'), + ('enum-map-derive', '0.17.0'), + ('equivalent', '1.0.1'), + ('errno', '0.3.9'), + ('fastrand', '2.1.1'), + ('feature-probe', '0.1.1'), + ('fixedbitset', '0.4.2'), + ('flate2', '1.0.34'), + ('flume', '0.10.14'), + ('fnv', '1.0.7'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('funty', '2.0.0'), + ('futures-core', '0.3.31'), + ('futures-sink', '0.3.31'), + ('fxhash', '0.2.1'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.15'), + ('glob', '0.3.1'), + ('gzp', '0.11.3'), + ('handlebars', '4.5.0'), + ('hashbrown', '0.13.2'), + ('hashbrown', '0.15.0'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.3.9'), + ('hermit-abi', '0.4.0'), + ('hts-sys', '2.1.4'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.61'), + ('iana-time-zone-haiku', '0.1.2'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '2.6.0'), + ('indicatif', '0.17.8'), + ('instant', '0.1.13'), + ('is-terminal', '0.4.13'), + ('is_terminal_polyfill', '1.70.1'), + ('itertools', '0.11.0'), + ('itertools', '0.12.1'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('js-sys', '0.3.72'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.161'), + ('libdeflate-sys', '0.12.0'), + ('libdeflater', '0.12.0'), + ('libm', '0.2.8'), + ('libredox', '0.1.3'), + ('libz-sys', '1.1.20'), + ('linear-map', '1.2.0'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.12'), + ('log', '0.4.22'), + ('log-mdc', '0.1.0'), + ('log-once', '0.4.1'), + ('log4rs', '1.3.0'), + ('lru', '0.9.0'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.9'), + ('memchr', '2.7.4'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.8.0'), + ('multimap', '0.9.1'), + ('nalgebra', '0.29.0'), + ('nalgebra-macros', '0.1.0'), + ('nanorand', '0.7.0'), + ('ndarray', '0.15.6'), + ('newtype_derive', '0.1.6'), + ('nom', '7.1.3'), + ('num', '0.4.3'), + ('num-bigint', '0.4.6'), + ('num-complex', '0.4.6'), + ('num-integer', '0.1.46'), + ('num-iter', '0.1.45'), + ('num-rational', '0.4.2'), + ('num-traits', '0.2.19'), + ('num_cpus', '1.16.0'), + ('number_prefix', '0.4.0'), + ('once_cell', '1.20.2'), + ('openssl-src', '300.3.2+3.3.2'), + ('openssl-sys', '0.9.104'), + ('order-stat', '0.1.3'), + ('ordered-float', '2.10.1'), + ('ordered-float', '3.9.2'), + ('parking_lot', '0.12.3'), + ('parking_lot_core', '0.9.10'), + ('paste', '1.0.15'), + ('percent-encoding', '2.3.1'), + ('peroxide', '0.32.1'), + ('peroxide-ad', '0.3.0'), + ('pest', '2.7.14'), + ('pest_derive', '2.7.14'), + ('pest_generator', '2.7.14'), + ('pest_meta', '2.7.14'), + ('petgraph', '0.6.5'), + ('pin-project', '1.1.6'), + ('pin-project-internal', '1.1.6'), + ('pkg-config', '0.3.31'), + ('portable-atomic', '1.9.0'), + ('ppv-lite86', '0.2.20'), + ('prettytable-rs', '0.10.0'), + ('proc-macro2', '1.0.88'), + ('pulp', '0.18.22'), + ('puruspe', '0.2.5'), + ('quick-error', '1.2.3'), + ('quote', '1.0.37'), + ('radium', '0.7.0'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_distr', '0.4.3'), + ('random_color', '1.0.0'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('reborrow', '0.5.5'), + ('redox_syscall', '0.5.7'), + ('redox_users', '0.4.6'), + ('regex', '1.11.0'), + ('regex-automata', '0.4.8'), + ('regex-syntax', '0.8.5'), + ('rust-htslib', '0.46.0'), + ('rust-lapper', '1.1.0'), + ('rustc-hash', '1.1.0'), + ('rustc_version', '0.1.7'), + ('rustix', '0.38.37'), + ('rustversion', '1.0.18'), + ('rv', '0.16.0'), + ('ryu', '1.0.18'), + ('safe_arch', '0.7.2'), + ('scopeguard', '1.2.0'), + ('semver', '0.1.20'), + ('serde', '1.0.211'), + ('serde-value', '0.7.0'), + ('serde_derive', '1.0.211'), + ('serde_json', '1.0.132'), + ('serde_yaml', '0.9.34+deprecated'), + ('sha2', '0.10.8'), + ('shlex', '1.3.0'), + ('simba', '0.6.0'), + ('similar', '2.6.0'), + ('similar-asserts', '1.6.0'), + ('smallvec', '1.13.2'), + ('special', '0.10.3'), + ('spin', '0.9.8'), + ('statrs', '0.16.1'), + ('strsim', '0.11.1'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.3'), + ('strum_macros', '0.26.4'), + ('substring', '1.4.5'), + ('syn', '1.0.109'), + ('syn', '2.0.82'), + ('tap', '1.0.1'), + ('tempfile', '3.13.0'), + ('term', '0.7.0'), + ('terminal_size', '0.4.0'), + ('thiserror', '1.0.64'), + ('thiserror-impl', '1.0.64'), + ('thread-id', '4.2.2'), + ('thread-tree', '0.3.3'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('triple_accel', '0.4.0'), + ('typemap-ors', '1.0.0'), + ('typenum', '1.17.0'), + ('ucd-trie', '0.1.7'), + ('unicode-bidi', '0.3.17'), + ('unicode-ident', '1.0.13'), + ('unicode-normalization', '0.1.24'), + ('unicode-segmentation', '1.12.0'), + ('unicode-width', '0.1.14'), + ('unsafe-any-ors', '1.0.0'), + ('unsafe-libyaml', '0.2.11'), + ('url', '2.5.2'), + ('utf8parse', '0.2.2'), + ('vcpkg', '0.2.15'), + ('vec_map', '0.8.2'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.95'), + ('wasm-bindgen-backend', '0.2.95'), + ('wasm-bindgen-macro', '0.2.95'), + ('wasm-bindgen-macro-support', '0.2.95'), + ('wasm-bindgen-shared', '0.2.95'), + ('wide', '0.7.28'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-core', '0.52.0'), + ('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'), + ('wyz', '0.5.1'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + +checksums = [ + {'v0.4.1.tar.gz': '45cd7d4ee69092db7412a15f02799c3118bf5fa4e40e193e30e8c65c4f762f79'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'ahash-0.8.11.tar.gz': 'e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'ansi_term-0.12.1.tar.gz': 'd52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2'}, + {'anstream-0.6.15.tar.gz': '64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'anstyle-parse-0.2.5.tar.gz': 'eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb'}, + {'anstyle-query-1.1.1.tar.gz': '6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a'}, + {'anstyle-wincon-3.0.4.tar.gz': '5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8'}, + {'anyhow-1.0.90.tar.gz': '37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'arc-swap-1.7.1.tar.gz': '69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457'}, + {'assert_approx_eq-1.1.0.tar.gz': '3c07dab4369547dbe5114677b33fbbf724971019f3818172d59a97a61c774ffd'}, + {'autocfg-1.4.0.tar.gz': 'ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26'}, + {'bio-1.6.0.tar.gz': '7a72cb93babf08c85b375c2938ac678cc637936b3ebb72266d433cec2577f6c2'}, + {'bio-types-1.0.4.tar.gz': 'f4dcf54f8b7f51450207d54780bab09c05f30b8b0caa991545082842e466ad7e'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bitvec-1.0.1.tar.gz': '1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'bstr-1.10.0.tar.gz': '40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'bv-0.11.1.tar.gz': '8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'bytemuck-1.19.0.tar.gz': '8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.8.0.tar.gz': '9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.1.31.tar.gz': 'c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'charming-0.3.1.tar.gz': 'f4c6b6990238a64b4ae139e7085ce2a11815cb67a0c066a3333ce40f3a329be3'}, + {'chrono-0.4.38.tar.gz': 'a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401'}, + {'clap-4.5.20.tar.gz': 'b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8'}, + {'clap_builder-4.5.20.tar.gz': '19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54'}, + {'clap_derive-4.5.18.tar.gz': '4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab'}, + {'clap_lex-0.7.2.tar.gz': '1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'colorchoice-1.0.2.tar.gz': 'd3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0'}, + {'common_macros-0.1.1.tar.gz': 'f3f6d59c71e7dc3af60f0af9db32364d96a16e9310f3f5db2b55ed642162dd35'}, + {'console-0.15.8.tar.gz': '0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'core_affinity-0.8.1.tar.gz': '622892f5635ce1fc38c8f16dfc938553ed64af482edb5e150bf4caedbfcb2304'}, + {'cpufeatures-0.2.14.tar.gz': '608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'crossbeam-0.8.4.tar.gz': '1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8'}, + {'crossbeam-channel-0.5.13.tar.gz': '33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-queue-0.3.11.tar.gz': 'df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crypto-common-0.1.6.tar.gz': '1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'curl-sys-0.4.77+curl-8.10.1.tar.gz': 'f469e8a5991f277a208224f6c7ad72ecb5f986e36d09ae1f2c1bb9259478a480'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derivative-2.2.0.tar.gz': 'fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'derive-new-0.6.0.tar.gz': 'd150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad'}, + {'destructure_traitobject-0.2.0.tar.gz': '3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7'}, + {'digest-0.10.7.tar.gz': '9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292'}, + {'dirs-next-2.0.0.tar.gz': 'b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1'}, + {'dirs-sys-next-0.1.2.tar.gz': '4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d'}, + {'doc-comment-0.3.3.tar.gz': 'fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10'}, + {'editdistancek-1.0.2.tar.gz': '3e02df23d5b1c6f9e69fa603b890378123b93073df998a21e6e33b9db0a32613'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'encode_unicode-1.0.0.tar.gz': '34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0'}, + {'enum-map-2.7.3.tar.gz': '6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9'}, + {'enum-map-derive-0.17.0.tar.gz': 'f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'fastrand-2.1.1.tar.gz': 'e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'flate2-1.0.34.tar.gz': 'a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0'}, + {'flume-0.10.14.tar.gz': '1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'funty-2.0.0.tar.gz': 'e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c'}, + {'futures-core-0.3.31.tar.gz': '05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e'}, + {'futures-sink-0.3.31.tar.gz': 'e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'gzp-0.11.3.tar.gz': 'e7c65d1899521a11810501b50b898464d133e1afc96703cff57726964cfa7baf'}, + {'handlebars-4.5.0.tar.gz': 'faa67bab9ff362228eb3d00bd024a4965d8231bbb7921167f0cfa66c6626b225'}, + {'hashbrown-0.13.2.tar.gz': '43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e'}, + {'hashbrown-0.15.0.tar.gz': '1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.3.9.tar.gz': 'd231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024'}, + {'hermit-abi-0.4.0.tar.gz': 'fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc'}, + {'hts-sys-2.1.4.tar.gz': 'e9f348d14cb4e50444e39fcd6b00302fe2ed2bc88094142f6278391d349a386d'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.61.tar.gz': '235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'indexmap-2.6.0.tar.gz': '707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da'}, + {'indicatif-0.17.8.tar.gz': '763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3'}, + {'instant-0.1.13.tar.gz': 'e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222'}, + {'is-terminal-0.4.13.tar.gz': '261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b'}, + {'is_terminal_polyfill-1.70.1.tar.gz': '7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'js-sys-0.3.72.tar.gz': '6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.161.tar.gz': '8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1'}, + {'libdeflate-sys-0.12.0.tar.gz': 'e1f7b0817f85e2ba608892f30fbf4c9d03f3ebf9db0c952d1b7c8f7387b54785'}, + {'libdeflater-0.12.0.tar.gz': '671e63282f642c7bcc7d292b212d5a4739fef02a77fe98429a75d308f96e7931'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libredox-0.1.3.tar.gz': 'c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d'}, + {'libz-sys-1.1.20.tar.gz': 'd2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.12.tar.gz': '07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'log-mdc-0.1.0.tar.gz': 'a94d21414c1f4a51209ad204c1776a3d0765002c76c6abcb602a6f09f1e881c7'}, + {'log-once-0.4.1.tar.gz': '6d8a05e3879b317b1b6dbf353e5bba7062bedcc59815267bb23eaa0c576cebf0'}, + {'log4rs-1.3.0.tar.gz': '0816135ae15bd0391cf284eab37e6e3ee0a6ee63d2ceeb659862bd8d0a984ca6'}, + {'lru-0.9.0.tar.gz': '71e7d46de488603ffdd5f30afbc64fbba2378214a2c3a2fb83abf3d33126df17'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.9.tar.gz': '9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'multimap-0.9.1.tar.gz': 'e1a5d38b9b352dbd913288736af36af41c48d61b1a8cd34bcecd727561b7d511'}, + {'nalgebra-0.29.0.tar.gz': 'd506eb7e08d6329505faa8a3a00a5dcc6de9f76e0c77e4b75763ae3c770831ff'}, + {'nalgebra-macros-0.1.0.tar.gz': '01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218'}, + {'nanorand-0.7.0.tar.gz': '6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-0.4.3.tar.gz': '35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23'}, + {'num-bigint-0.4.6.tar.gz': 'a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9'}, + {'num-complex-0.4.6.tar.gz': '73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-iter-0.1.45.tar.gz': '1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf'}, + {'num-rational-0.4.2.tar.gz': 'f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'num_cpus-1.16.0.tar.gz': '4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'once_cell-1.20.2.tar.gz': '1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775'}, + {'openssl-src-300.3.2+3.3.2.tar.gz': 'a211a18d945ef7e648cc6e0058f4c548ee46aab922ea203e0d30e966ea23647b'}, + {'openssl-sys-0.9.104.tar.gz': '45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741'}, + {'order-stat-0.1.3.tar.gz': 'efa535d5117d3661134dbf1719b6f0ffe06f2375843b13935db186cd094105eb'}, + {'ordered-float-2.10.1.tar.gz': '68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c'}, + {'ordered-float-3.9.2.tar.gz': 'f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc'}, + {'parking_lot-0.12.3.tar.gz': 'f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27'}, + {'parking_lot_core-0.9.10.tar.gz': '1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8'}, + {'paste-1.0.15.tar.gz': '57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'peroxide-0.32.1.tar.gz': '703b5fbdc1f9018a66e2db8758633cec31d39ad3127bfd38c9b6ad510637519c'}, + {'peroxide-ad-0.3.0.tar.gz': 'f6fba8ff3f40b67996f7c745f699babaa3e57ef5c8178ec999daf7eedc51dc8c'}, + {'pest-2.7.14.tar.gz': '879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442'}, + {'pest_derive-2.7.14.tar.gz': 'd214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd'}, + {'pest_generator-2.7.14.tar.gz': 'eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e'}, + {'pest_meta-2.7.14.tar.gz': 'b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d'}, + {'petgraph-0.6.5.tar.gz': 'b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db'}, + {'pin-project-1.1.6.tar.gz': 'baf123a161dde1e524adf36f90bc5d8d3462824a9c43553ad07a8183161189ec'}, + {'pin-project-internal-1.1.6.tar.gz': 'a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8'}, + {'pkg-config-0.3.31.tar.gz': '953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2'}, + {'portable-atomic-1.9.0.tar.gz': 'cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'prettytable-rs-0.10.0.tar.gz': 'eea25e07510aa6ab6547308ebe3c036016d162b8da920dbb079e3ba8acf3d95a'}, + {'proc-macro2-1.0.88.tar.gz': '7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9'}, + {'pulp-0.18.22.tar.gz': 'a0a01a0dc67cf4558d279f0c25b0962bd08fc6dec0137699eae304103e882fe6'}, + {'puruspe-0.2.5.tar.gz': '3804877ffeba468c806c2ad9057bbbae92e4b2c410c2f108baaa0042f241fa4c'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'radium-0.7.0.tar.gz': 'dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rand_distr-0.4.3.tar.gz': '32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31'}, + {'random_color-1.0.0.tar.gz': '38803f546aaf7a3bd5af56b139d7b432d3eb43318bf4a91342eff8a125b4fe06'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'reborrow-0.5.5.tar.gz': '03251193000f4bd3b042892be858ee50e8b3719f2b08e5833ac4353724632430'}, + {'redox_syscall-0.5.7.tar.gz': '9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f'}, + {'redox_users-0.4.6.tar.gz': 'ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43'}, + {'regex-1.11.0.tar.gz': '38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8'}, + {'regex-automata-0.4.8.tar.gz': '368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3'}, + {'regex-syntax-0.8.5.tar.gz': '2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c'}, + {'rust-htslib-0.46.0.tar.gz': 'aec6f9ca4601beb4ae75ff8c99144dd15de5a873f6adf058da299962c760968e'}, + {'rust-lapper-1.1.0.tar.gz': 'ee43d8e721ac803031dbab6a944b957b49a3b11eadbc099880c8aaaebf23ed27'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustix-0.38.37.tar.gz': '8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811'}, + {'rustversion-1.0.18.tar.gz': '0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248'}, + {'rv-0.16.0.tar.gz': 'c64081d5a5cd97b60822603f9900df77d67c8258e9a8143b6aff950753f2bbe1'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'safe_arch-0.7.2.tar.gz': 'c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.211.tar.gz': '1ac55e59090389fb9f0dd9e0f3c09615afed1d19094284d0b200441f13550793'}, + {'serde-value-0.7.0.tar.gz': 'f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c'}, + {'serde_derive-1.0.211.tar.gz': '54be4f245ce16bc58d57ef2716271d0d4519e0f6defa147f6e081005bcb278ff'}, + {'serde_json-1.0.132.tar.gz': 'd726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03'}, + {'serde_yaml-0.9.34+deprecated.tar.gz': '6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47'}, + {'sha2-0.10.8.tar.gz': '793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'simba-0.6.0.tar.gz': 'f0b7840f121a46d63066ee7a99fc81dcabbc6105e437cae43528cea199b5a05f'}, + {'similar-2.6.0.tar.gz': '1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e'}, + {'similar-asserts-1.6.0.tar.gz': 'cfe85670573cd6f0fa97940f26e7e6601213c3b0555246c24234131f88c5709e'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'special-0.10.3.tar.gz': 'b89cf0d71ae639fdd8097350bfac415a41aabf1d5ddd356295fdc95f09760382'}, + {'spin-0.9.8.tar.gz': '6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67'}, + {'statrs-0.16.1.tar.gz': 'b35a062dbadac17a42e0fc64c27f419b25d6fae98572eb43c8814c9e873d7721'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum-0.25.0.tar.gz': '290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}, + {'substring-1.4.5.tar.gz': '42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.82.tar.gz': '83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021'}, + {'tap-1.0.1.tar.gz': '55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369'}, + {'tempfile-3.13.0.tar.gz': 'f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b'}, + {'term-0.7.0.tar.gz': 'c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f'}, + {'terminal_size-0.4.0.tar.gz': '4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef'}, + {'thiserror-1.0.64.tar.gz': 'd50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84'}, + {'thiserror-impl-1.0.64.tar.gz': '08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3'}, + {'thread-id-4.2.2.tar.gz': 'cfe8f25bbdd100db7e1d34acf7fd2dc59c4bf8f7483f505eaa7d4f12f76cc0ea'}, + {'thread-tree-0.3.3.tar.gz': 'ffbd370cb847953a25954d9f63e14824a36113f8c72eecf6eccef5dc4b45d630'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'triple_accel-0.4.0.tar.gz': '22048bc95dfb2ffd05b1ff9a756290a009224b60b2f0e7525faeee7603851e63'}, + {'typemap-ors-1.0.0.tar.gz': 'a68c24b707f02dd18f1e4ccceb9d49f2058c2fb86384ef9972592904d7a28867'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'ucd-trie-0.1.7.tar.gz': '2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971'}, + {'unicode-bidi-0.3.17.tar.gz': '5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893'}, + {'unicode-ident-1.0.13.tar.gz': 'e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe'}, + {'unicode-normalization-0.1.24.tar.gz': '5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956'}, + {'unicode-segmentation-1.12.0.tar.gz': 'f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493'}, + {'unicode-width-0.1.14.tar.gz': '7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af'}, + {'unsafe-any-ors-1.0.0.tar.gz': 'e0a303d30665362d9680d7d91d78b23f5f899504d4f08b3c4cf08d055d87c0ad'}, + {'unsafe-libyaml-0.2.11.tar.gz': '673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.95.tar.gz': '128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e'}, + {'wasm-bindgen-backend-0.2.95.tar.gz': 'cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358'}, + {'wasm-bindgen-macro-0.2.95.tar.gz': 'e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56'}, + {'wasm-bindgen-macro-support-0.2.95.tar.gz': '26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68'}, + {'wasm-bindgen-shared-0.2.95.tar.gz': '65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d'}, + {'wide-0.7.28.tar.gz': 'b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690'}, + {'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'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'wyz-0.5.1.tar.gz': '05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/mosdepth/mosdepth-0.3.9-GCC-12.3.0.eb b/easybuild/easyconfigs/m/mosdepth/mosdepth-0.3.9-GCC-12.3.0.eb new file mode 100644 index 00000000000..8fcad4de92b --- /dev/null +++ b/easybuild/easyconfigs/m/mosdepth/mosdepth-0.3.9-GCC-12.3.0.eb @@ -0,0 +1,48 @@ +easyblock = 'Binary' + +name = 'mosdepth' +version = '0.3.9' +local_hts_nim_ver = '0.3.25' + +homepage = 'https://github.com/brentp/mosdepth' +description = "Fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +sources = [ + { + 'source_urls': ['https://github.com/brentp/hts-nim/archive/'], + 'download_filename': 'v%s.tar.gz' % local_hts_nim_ver, + 'filename': 'hts-nim-%s.tar.gz' % local_hts_nim_ver, + }, + { + 'source_urls': ['https://github.com/brentp/mosdepth/archive/'], + 'download_filename': 'v%(version)s.tar.gz', + 'filename': SOURCE_TAR_GZ, + }, +] +checksums = [ + {'hts-nim-0.3.25.tar.gz': 'b13b9bb5aa567a69bf17547aadbbd39e37beb4f71a28f267b83dfea9ea4d05e8'}, + {'mosdepth-0.3.9.tar.gz': '9171ea9a6ddaccd0091db5b85fa9e6cb79516bbe005c47ffc8dcfe49c978eb69'}, +] + +dependencies = [ + ('Nim', '2.2.0'), + ('HTSlib', '1.18'), + ('PCRE', '8.45'), +] + +extract_sources = True + +install_cmd = "cd %(builddir)s/hts-nim-*/ && nimble install --nimbleDir:%(installdir)s --verbose -y && " +install_cmd += "cd ../mosdepth-*/ && " +install_cmd += "nimble install --nimbleDir:%(installdir)s --verbose -y" + +sanity_check_paths = { + 'files': ['bin/mosdepth'], + 'dirs': [], +} + +sanity_check_commands = ["mosdepth --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/mpi4py/mpi4py-4.0.1-gompi-2024a.eb b/easybuild/easyconfigs/m/mpi4py/mpi4py-4.0.1-gompi-2024a.eb new file mode 100644 index 00000000000..7eaa068c6e5 --- /dev/null +++ b/easybuild/easyconfigs/m/mpi4py/mpi4py-4.0.1-gompi-2024a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonBundle' + +name = 'mpi4py' +version = '4.0.1' + +homepage = 'https://github.com/mpi4py/mpi4py' +description = """MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for + the Python programming language, allowing any Python program to exploit multiple processors.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), +] + +exts_list = [ + (name, version, { + 'checksums': ['f3174b245775d556f4fddb32519a2066ef0592edc810c5b5a59238f9a0a40c89'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023a.eb b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023a.eb new file mode 100644 index 00000000000..874fec6236b --- /dev/null +++ b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonBundle' + +name = 'mpl-ascii' +version = '0.10.0' + +homepage = 'https://github.com/chriscave/mpl_ascii' +description = "A matplotlib backend that produces plots using only ASCII characters" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('matplotlib', '3.7.2'), +] + +exts_list = [ + (name, version, { + 'source_tmpl': 'mpl_ascii-%(version)s.tar.gz', + 'checksums': ['8e4ae770d5a612dab0e8055c7677c6c3d271da4f5127cce46a60ce3ce4a4e72c'], + # relax version constraint for rich + 'preinstallopts': """sed -i 's/"rich>=.*"/"rich"/g' pyproject.toml && """, + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023b.eb b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023b.eb new file mode 100644 index 00000000000..2986c9ffdab --- /dev/null +++ b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023b.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonBundle' + +name = 'mpl-ascii' +version = '0.10.0' + +homepage = 'https://github.com/chriscave/mpl_ascii' +description = "A matplotlib backend that produces plots using only ASCII characters" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('matplotlib', '3.8.2'), +] + +exts_list = [ + (name, version, { + 'source_tmpl': 'mpl_ascii-%(version)s.tar.gz', + 'checksums': ['8e4ae770d5a612dab0e8055c7677c6c3d271da4f5127cce46a60ce3ce4a4e72c'], + # relax version constraint for rich + 'preinstallopts': """sed -i 's/"rich>=.*"/"rich"/g' pyproject.toml && """, + }), +] + +moduleclass = 'vis' 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/m/multiprocess/multiprocess-0.70.16-gfbf-2023b.eb b/easybuild/easyconfigs/m/multiprocess/multiprocess-0.70.16-gfbf-2023b.eb new file mode 100644 index 00000000000..6867ab4cabb --- /dev/null +++ b/easybuild/easyconfigs/m/multiprocess/multiprocess-0.70.16-gfbf-2023b.eb @@ -0,0 +1,20 @@ +easyblock = 'PythonPackage' + +name = 'multiprocess' +version = '0.70.16' + +homepage = 'https://github.com/uqfoundation/multiprocess' +description = "better multiprocessing and multithreading in python" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['161af703d4652a0e1410be6abccecde4a7ddffd19341be0a7011b94aeb171ac1'] + +dependencies = [ + ('Python', '3.11.5'), + ('dill', '0.3.8'), + ('Arrow', '16.1.0'), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-3.0-foss-2024a-mpi.eb b/easybuild/easyconfigs/n/NAMD/NAMD-3.0-foss-2024a-mpi.eb new file mode 100644 index 00000000000..081fb8af634 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-3.0-foss-2024a-mpi.eb @@ -0,0 +1,38 @@ +name = 'NAMD' +version = '3.0' +versionsuffix = '-mpi' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True, 'openmp': False, 'pic': True} + +source_urls = [ + 'https://www.ks.uiuc.edu/Research/%(namelower)s/%(version)s/download/946183/', + 'https://www.ks.uiuc.edu/Research/%(namelower)s/%(version)s/download/342056/', +] +sources = ['NAMD_%(version)s_Source.tar.gz'] + +patches = ['NAMD-3.0_fix_hwloc_build.patch'] + +checksums = [ + '301c64f0f1db860f7336efdb26223ccf66b5ab42bfc9141df8d81ec1e20bf472', # NAMD_3.0_Source.tar.gz + '03f7caa4027604e0483a9b149ebb5de310653a2aad99403faf3359ccc0015f02', # NAMD-3.0_fix_hwloc_build.patch +] + +# /bin/csh is required by 'config' script +builddependencies = [ + ('tcsh', '6.24.13'), + ('Autotools', '20231222'), +] +dependencies = [ + ('Tcl', '8.6.14'), +] + +# Hard to make charm build the mpi version with gcc on POWER, so we don't currently try +charm_arch = 'mpi-linux-%(arch)s' +charm_extra_cxxflags = '-fpermissive' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-3.0_fix_hwloc_build.patch b/easybuild/easyconfigs/n/NAMD/NAMD-3.0_fix_hwloc_build.patch new file mode 100644 index 00000000000..4b6683cf226 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-3.0_fix_hwloc_build.patch @@ -0,0 +1,54 @@ +# What: Fix hwloc cmake build issue in charm-8.0.0, see https://github.com/charmplusplus/charm/issues/3843 +# This patch is based on the following PR: https://github.com/charmplusplus/charm/pull/3847 +# Author: maxim-masterov (SURF) +diff -Nru NAMD_3.0_Source.orig/charm-8.0.0/contrib/hwloc/config/hwloc.m4 NAMD_3.0_Source/charm-8.0.0/contrib/hwloc/config/hwloc.m4 +--- NAMD_3.0_Source.orig/charm-8.0.0/contrib/hwloc/config/hwloc.m4 2024-10-02 14:22:40.779651616 +0200 ++++ NAMD_3.0_Source/charm-8.0.0/contrib/hwloc/config/hwloc.m4 2024-10-23 17:15:35.921883766 +0200 +@@ -140,28 +140,43 @@ + AC_CONFIG_HEADERS(hwloc_config_prefix[include/private/autogen/config.h]) + AC_CONFIG_HEADERS(hwloc_config_prefix[include/hwloc/autogen/config.h]) + ++ + # What prefix are we using? +- AC_MSG_CHECKING([for hwloc symbol prefix]) ++ AH_VERBATIM([prefix_details_ifndef], ++ [ /* hwloc details should only be set once */ ++ #ifndef HWLOC_SYM_DETAILS ++ #define HWLOC_SYM_DETAILS ++ ]) ++ AC_MSG_CHECKING([for hwloc symbol prefix]) + AS_IF([test "$hwloc_symbol_prefix_value" = ""], + [AS_IF([test "$with_hwloc_symbol_prefix" = ""], + [hwloc_symbol_prefix_value=hwloc_], + [hwloc_symbol_prefix_value=$with_hwloc_symbol_prefix])]) ++ ++ + AC_DEFINE_UNQUOTED(HWLOC_SYM_PREFIX, [$hwloc_symbol_prefix_value], + [The hwloc symbol prefix]) + # Ensure to [] escape the whole next line so that we can get the + # proper tr tokens + [hwloc_symbol_prefix_value_caps="`echo $hwloc_symbol_prefix_value | tr '[:lower:]' '[:upper:]'`"] +- AC_DEFINE_UNQUOTED(HWLOC_SYM_PREFIX_CAPS, [$hwloc_symbol_prefix_value_caps], +- [The hwloc symbol prefix in all caps]) ++ AC_CHECK_DEFINE([HWLOC_SYM_PREFIX_CAPS],[0],AC_DEFINE_UNQUOTED(HWLOC_SYM_PREFIX_CAPS, [$hwloc_symbol_prefix_value_caps], ++ [The hwloc symbol prefix in all caps])) + AC_MSG_RESULT([$hwloc_symbol_prefix_value]) + +- # Give an easy #define to know if we need to transform all the ++ ++ # Give an easy #define to know if we need to transform all the + # hwloc names + AH_TEMPLATE([HWLOC_SYM_TRANSFORM], [Whether we need to re-define all the hwloc public symbols or not]) + AS_IF([test "$hwloc_symbol_prefix_value" = "hwloc_"], + [AC_DEFINE([HWLOC_SYM_TRANSFORM], [0])], + [AC_DEFINE([HWLOC_SYM_TRANSFORM], [1])]) + ++ AH_VERBATIM([prefix_details_endif], ++ [ /* HWLOC_DETAILS_SET */ ++ #endif ++ ]) ++ ++ + # Disabled for Charm++ due to https://github.com/charmplusplus/charm/issues/2606 + # hwloc 2.0+ requires a C99 compliant compiler + # AC_PROG_CC_C99 obsolete, detected inside AC_PROG_CC, since autoconf 2.70 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/NCO/NCO-5.2.9-foss-2024a.eb b/easybuild/easyconfigs/n/NCO/NCO-5.2.9-foss-2024a.eb new file mode 100644 index 00000000000..1bfcd346a3a --- /dev/null +++ b/easybuild/easyconfigs/n/NCO/NCO-5.2.9-foss-2024a.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'NCO' +version = '5.2.9' + +homepage = "https://github.com/nco/nco" +description = """The NCO toolkit manipulates and analyzes data stored in netCDF-accessible formats, +including DAP, HDF4, and HDF5.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +source_urls = ['https://github.com/nco/nco/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['6245886e2a18a4821b0fb768cf9906de09aeb47c303462c8e85f0d1a4f34956d'] + +builddependencies = [ + ('Bison', '3.8.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('UDUNITS', '2.2.28'), + ('expat', '2.6.2'), + ('ANTLR', '2.7.7', '-Java-21.0.2'), + ('libdap', '3.21.0-131'), + ('GSL', '2.8'), + ('netCDF', '4.9.2'), + ('ESMF', '8.7.0'), # ncremap needs ESMF_RegridWeightGen +] + +configopts = "--enable-nco_cplusplus" + +sanity_check_paths = { + 'files': ['bin/nc%s' % x for x in ('ap2', 'atted', 'bo', 'diff', 'ea', 'ecat', 'es', + 'flint', 'ks', 'pdq', 'ra', 'rcat', 'rename', 'wa')] + + ['lib/libnco.a', 'lib/libnco.%s' % SHLIB_EXT, 'lib/libnco_c++.a', 'lib/libnco_c++.%s' % SHLIB_EXT], + 'dirs': ['include'], +} +sanity_check_commands = [ + "ncks -O -7 --cnk_dmn time,10 " + "%(builddir)s/%(namelower)s-%(version)s/data/in.nc %(builddir)s/%(namelower)s-%(version)s/data/in4.cdl" +] + +moduleclass = 'tools' 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/NSPR/NSPR-4.35-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/NSPR/NSPR-4.35-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9157abca1c4 --- /dev/null +++ b/easybuild/easyconfigs/n/NSPR/NSPR-4.35-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'NSPR' +version = '4.35' + +homepage = 'https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR' +description = """Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level + and libc-like functions.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.mozilla.org/pub/%(namelower)s/releases/v%(version)s/src/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f'] + +builddependencies = [ + ('binutils', '2.42'), +] + +configopts = "--disable-debug --enable-optimize --enable-64bit" + + +sanity_check_paths = { + 'files': ['bin/nspr-config', 'lib/libnspr%(version_major)s.a', 'lib/libnspr%%(version_major)s.%s' % SHLIB_EXT, + 'lib/libplc%(version_major)s.a', 'lib/libplc%%(version_major)s.%s' % SHLIB_EXT, + 'lib/libplds%(version_major)s.a', 'lib/libplds%%(version_major)s.%s' % SHLIB_EXT, + 'lib/pkgconfig/%(namelower)s.pc'], + 'dirs': ['include/%(namelower)s'], +} + +sanity_check_commands = ['%(namelower)s-config --version'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NSS/NSS-3.104-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/NSS/NSS-3.104-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..56569b6c0ba --- /dev/null +++ b/easybuild/easyconfigs/n/NSS/NSS-3.104-GCCcore-13.3.0.eb @@ -0,0 +1,64 @@ +easyblock = 'MakeCp' + +name = 'NSS' +version = '3.104' + +homepage = 'https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS' +description = """Network Security Services (NSS) is a set of libraries designed to support cross-platform development + of security-enabled client and server applications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.mozilla.org/pub/security/nss/releases/NSS_%s_RTM/src/' % version.replace('.', '_')] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-3.39_pkgconfig.patch', + '%(name)s-3.55_fix-ftbfs-glibc-invalid-oob-error.patch', +] +checksums = [ + {'nss-3.104.tar.gz': 'e2763223622d1e76b98a43030873856f248af0a41b03b2fa2ca06a91bc50ac8e'}, + {'NSS-3.39_pkgconfig.patch': '5c4b55842e5afd1e8e67b90635f6474510b89242963c4ac2622d3e3da9062774'}, + {'NSS-3.55_fix-ftbfs-glibc-invalid-oob-error.patch': + '15768297c5dd6918132af281531afcfe3e358f45a00bc2655d20a6cbe4310a9b'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('Perl', '5.38.2'), +] +dependencies = [ + ('NSPR', '4.35'), + ('zlib', '1.3.1'), +] + +# disable use of -Werror to work around compilation errors with newer glibc versions, +# see also https://sourceware.org/bugzilla/show_bug.cgi?id=27476 +buildopts = 'NSS_ENABLE_WERROR=0 BUILD_OPT=1 USE_64=1 ' +buildopts += 'CPATH="$EBROOTNSPR/include/nspr:$CPATH" OS_REL_CFLAGS="-D_XOPEN_SOURCE "' +buildopts += ' && cd config && make PREFIX=%(installdir)s BUILD_OPT=1 USE_64=1 && cd -' + +# building in parallel fails +maxparallel = 1 + +# optional testsuite (takes a long time) +# buildopts += " && cd %(builddir)s/%(namelower)s-%(version)s/%(namelower)s/tests && " +# buildopts += " BUILD_OPT=1 USE_64=1 ./all.sh " + +files_to_copy = [ + '../dist/Linux*.OBJ/*', + (['../dist/public/*'], 'include'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s-config', 'bin/multinit', 'lib/libnss.a'], + 'dirs': ['include/dbm', 'include/%(namelower)s'], +} + +sanity_check_commands = [ + "multinit --help", + "%(namelower)s-config --version", +] + +modextrapaths = {'CPATH': 'include/%(namelower)s'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NTL/NTL-11.5.1-GCC-13.3.0.eb b/easybuild/easyconfigs/n/NTL/NTL-11.5.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..29fdd6e848f --- /dev/null +++ b/easybuild/easyconfigs/n/NTL/NTL-11.5.1-GCC-13.3.0.eb @@ -0,0 +1,44 @@ +# contributed by Guilherme Peretti-Pezzi (CSCS) +# updated by Alex Domingo (Vrije Universiteit Brussel) +# updated by Åke Sandgren(Umeå University) +# Update: Petr Král (INUITS) +easyblock = 'ConfigureMake' + +name = 'NTL' +version = '11.5.1' + +homepage = 'https://shoup.net/ntl/' + +description = """NTL is a high-performance, portable C++ library providing data structures and +algorithms for manipulating signed, arbitrary length integers, and for vectors, +matrices, and polynomials over the integers and over finite fields.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'libntl' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['ef578fa8b6c0c64edd1183c4c303b534468b58dd3eb8df8c9a5633f984888de5'] + +builddependencies = [ + ('Perl', '5.38.2'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +start_dir = 'src' + +prefix_opt = 'PREFIX=' +configopts = 'CXX="$CXX" CXXFLAGS="$CXXFLAGS" GMP_PREFIX="$EBROOTGMP" SHARED=on' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libntl.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['include/NTL', 'share/doc'], +} + +moduleclass = 'math' 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/NWChem/NWChem-7.2.3-intel-2024a.eb b/easybuild/easyconfigs/n/NWChem/NWChem-7.2.3-intel-2024a.eb new file mode 100644 index 00000000000..7b3190a3cd4 --- /dev/null +++ b/easybuild/easyconfigs/n/NWChem/NWChem-7.2.3-intel-2024a.eb @@ -0,0 +1,34 @@ +name = 'NWChem' +version = '7.2.3' + +homepage = 'https://nwchemgit.github.io/' +description = """NWChem aims to provide its users with computational chemistry tools that are scalable both in + their ability to treat large scientific computational chemistry problems efficiently, and in their use of available + parallel computing resources from high-performance parallel supercomputers to conventional workstation clusters. + NWChem software can handle: biomolecules, nanostructures, and solid-state; from quantum to classical, and all + combinations; Gaussian basis functions or plane-waves; scaling from one to thousands of processors; properties + and relativity.""" + +toolchain = {'name': 'intel', 'version': '2024a'} +toolchainopts = {'i8': True} + +source_urls = ['https://github.com/nwchemgit/nwchem/archive/refs/tags/'] +sources = ['v%(version)s-release.tar.gz'] +patches = [ + 'NWChem-7.0.2_fix_gnumakefile.patch', +] +checksums = [ + {'v7.2.3-release.tar.gz': 'fec76fbe650cdab8b00c8c1d7a5671554313e04a8e9e2fb300a7aad486910e6f'}, + {'NWChem-7.0.2_fix_gnumakefile.patch': '89c634a652d4c8c358f8388ac01ee441659e3c0256c39b6494e2885c91f9aca4'}, +] + +dependencies = [ + ('GlobalArrays', '5.8.2'), + ('Python', '3.12.3'), +] + +preconfigopts = "export EXTRA_LIBS=-lutil && " + +modules = "all python" + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb similarity index 50% rename from easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCCcore-12.3.0.eb rename to easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb index 811b5b54b43..58c814b003c 100644 --- a/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb @@ -6,7 +6,7 @@ version = '1.4.1' homepage = 'https://github.com/Nextomics/NextPolish' description = 'NextDenovo is a string graph-based de novo assembler for long reads.' -toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchain = {'name': 'GCC', 'version': '12.3.0'} source_urls = ['https://github.com/Nextomics/NextPolish/releases/download/'] sources = [{ @@ -15,11 +15,14 @@ sources = [{ }] checksums = ['2a5f66f3db7f76e583a6b6e28f9c1f3c392258b8d755050d7abe129a2fbb48c4'] -builddependencies = [('binutils', '2.40')] +builddependencies = [('patchelf', '0.18.0')] dependencies = [ ('Python', '3.11.3'), ('Python-bundle-PyPI', '2023.06'), ('BWA', '0.7.17'), + ('SAMtools', '1.18'), + ('minimap2', '2.26'), + ('bzip2', '1.0.8'), ] exts_defaultclass = 'PythonPackage' @@ -40,26 +43,45 @@ exts_list = [ maxparallel = 1 # fix bwa bug - https://github.com/Nextomics/NextPolish/issues/83 -prebuildopts = "sed -i 's/seq_count bwa samtools minimap2/seq_count samtools minimap2/' Makefile && " -prebuildopts += "rm -rf util/bwa && " +# + use SAMtools and minimap2 from EB +prebuildopts = "sed -i 's/seq_count bwa samtools minimap2/seq_count/' Makefile && " +prebuildopts += "rm -rf util/bwa && rm -fr util/minimap2 && rm -rf util/samtools && " prebuildopts += ( "sed -i" - " -e 's/seq_count bwa_ samtools_/seq_count samtools_/'" - " -e '29d'" # @+make clean -C $(BWADIR) - " -e '18,20d'" # bwa_: @+make -C $(BWADIR) - " -e '1d'" # BWADIR = ./bwa + " -e 's/seq_split seq_count bwa_ samtools_ minimap2_/seq_split seq_count/'" + " -e '/BWADIR/d'" + " -e '/bwa_:/d'" + " -e '/SAMTOOLSDIR/d'" + " -e '/MINIMAP2DIR/d'" + " -e '/samtools_:/d'" + " -e '/minimap2_:/d'" " util/Makefile && " ) -postinstallcmds = ['cd %(installdir)s/bin && ln -s $EBROOTBWA/bin/bwa'] +postinstallcmds = [ + # links to binaries + "cd %(installdir)s/bin && ln -s $EBROOTBWA/bin/bwa && " + "ln -s $EBROOTSAMTOOLS/bin/samtools && ln -s $EBROOTMINIMAP2/bin/minimap2", + # set RPATH to calgs.so, nextpolish1.so and nextpolish2.so + "if %(rpath_enabled)s; then " + "patchelf --force-rpath --set-rpath '$ORIGIN:$ORIGIN/../lib'" + '":$EBROOTZLIB/lib" %(installdir)s/lib/calgs.so && ' + "patchelf --force-rpath --set-rpath '$ORIGIN:$ORIGIN/../lib'" + '"$EBROOTZLIB/lib:$EBROOTBZIP2/lib:$EBROOTXZ/lib" %(installdir)s/lib/nextpolish1.so && ' + "patchelf --force-rpath --set-rpath '$ORIGIN:$ORIGIN/../lib'" + '"$EBROOTZLIB/lib:$EBROOTBZIP2/lib:$EBROOTXZ/lib" %(installdir)s/lib/nextpolish2.so; fi', +] files_to_copy = ['bin', 'lib', 'test_data', 'LICENSE', 'nextPolish'] sanity_check_paths = { - 'files': ['nextPolish', 'bin/minimap2', 'bin/paralleltask', 'bin/bwa'], + 'files': ['nextPolish', 'bin/minimap2', 'bin/paralleltask', 'bin/bwa', 'bin/samtools'], 'dirs': ['test_data', 'lib/python%(pyshortver)s/site-packages'], } -sanity_check_commands = ['nextPolish --help'] +sanity_check_commands = [ + 'nextPolish --help', + 'nextPolish %(installdir)s/test_data/run.cfg' +] modextrapaths = { 'PATH': '', diff --git a/easybuild/easyconfigs/n/Nextflow/Nextflow-24.04.4.eb b/easybuild/easyconfigs/n/Nextflow/Nextflow-24.04.4.eb new file mode 100644 index 00000000000..c718972b663 --- /dev/null +++ b/easybuild/easyconfigs/n/Nextflow/Nextflow-24.04.4.eb @@ -0,0 +1,35 @@ +easyblock = 'Binary' + +name = 'Nextflow' +version = '24.04.4' + +homepage = 'https://www.nextflow.io/' +description = """Nextflow is a reactive workflow framework and a programming DSL + that eases writing computational pipelines with complex data""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/nextflow-io/nextflow/releases/download/v%(version)s/'] +sources = ['nextflow-%(version)s-all'] +checksums = ['9077cfb151d4bc8682f09a65a77f45346bf34dac5931e371dba0d51bf13a5076'] + +dependencies = [('Java', '11')] + +install_cmds = [ + "mkdir -p %(installdir)s/bin", + "cp %(builddir)s/nextflow-%(version)s-all %(installdir)s/bin", + "cd %(installdir)s/bin && ln -s nextflow-%(version)s-all nextflow", + "cd %(installdir)s/bin && chmod +x %(installdir)s/bin/nextflow-%(version)s-all", +] + +sanity_check_paths = { + 'files': ['bin/nextflow-%(version)s-all', 'bin/nextflow'], + 'dirs': [] +} + +sanity_check_commands = [ + "nextflow -v", + "nextflow help", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/Nextflow/Nextflow-24.10.2.eb b/easybuild/easyconfigs/n/Nextflow/Nextflow-24.10.2.eb new file mode 100644 index 00000000000..75b0cb4a2d6 --- /dev/null +++ b/easybuild/easyconfigs/n/Nextflow/Nextflow-24.10.2.eb @@ -0,0 +1,36 @@ +easyblock = 'Binary' + +name = 'Nextflow' +version = '24.10.2' + +homepage = 'https://www.nextflow.io/' +description = """Nextflow is a reactive workflow framework and a programming DSL + that eases writing computational pipelines with complex data""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/nextflow-io/nextflow/releases/download/v%(version)s/'] +sources = ['nextflow-%(version)s-dist'] +checksums = ['972bb4f4bcd30bb474c29c247ccf79289bbcd444f799f0307f61123e6b0f7475'] + +dependencies = [('Java', '21')] + +install_cmds = [ + "mkdir -p %(installdir)s/bin", + "cp %(builddir)s/nextflow-%(version)s-dist %(installdir)s/bin", + "cd %(installdir)s/bin && ln -s nextflow-%(version)s-dist nextflow", + "cd %(installdir)s/bin && chmod +x %(installdir)s/bin/nextflow-%(version)s-dist", +] + +sanity_check_paths = { + 'files': ['bin/nextflow-%(version)s-dist', 'bin/nextflow'], + 'dirs': [] +} + +sanity_check_commands = [ + "nextflow -v", + "nextflow help", + "nextflow info", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/Nim/Nim-2.2.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/n/Nim/Nim-2.2.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..2214b1c9493 --- /dev/null +++ b/easybuild/easyconfigs/n/Nim/Nim-2.2.0-GCCcore-12.3.0.eb @@ -0,0 +1,17 @@ +name = 'Nim' +version = '2.2.0' + +homepage = 'https://nim-lang.org/' +description = "Nim is a systems and applications programming language." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://nim-lang.org/download/'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ce9842849c9760e487ecdd1cdadf7c0f2844cafae605401c7c72ae257644893c'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('libreadline', '8.2')] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/n/ncdu/ncdu-1.20-GCC-13.3.0.eb b/easybuild/easyconfigs/n/ncdu/ncdu-1.20-GCC-13.3.0.eb new file mode 100644 index 00000000000..e8f91407acf --- /dev/null +++ b/easybuild/easyconfigs/n/ncdu/ncdu-1.20-GCC-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'ncdu' +version = '1.20' + +homepage = 'https://dev.yorhel.nl/ncdu' +description = """Ncdu is a disk usage analyzer with an ncurses interface. It is designed to find space hogs on a + remote server where you don't have an entire graphical setup available, but it is a useful tool even on regular + desktop systems. Ncdu aims to be fast, simple and easy to use, and should be able to run in any minimal POSIX-like + environment with ncurses installed.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://dev.yorhel.nl/download/'] +sources = [SOURCE_TAR_GZ] +checksums = ['5fe2bb841abe72374bb242dbb93293c4ae053078432d896a7481b2ff10be9572'] + +dependencies = [ + ('ncurses', '6.5'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/ncview/ncview-2.1.11-gompi-2024a.eb b/easybuild/easyconfigs/n/ncview/ncview-2.1.11-gompi-2024a.eb new file mode 100644 index 00000000000..6ae831a2287 --- /dev/null +++ b/easybuild/easyconfigs/n/ncview/ncview-2.1.11-gompi-2024a.eb @@ -0,0 +1,42 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +## +easyblock = 'ConfigureMake' + +name = 'ncview' +version = '2.1.11' + +homepage = 'http://meteora.ucsd.edu/~pierce/ncview_home_page.html' +description = """Ncview is a visual browser for netCDF format files. +Typically you would use ncview to get a quick and easy, push-button +look at your netCDF files. You can view simple movies of the data, +view along various dimensions, take a look at the actual data values, +change color maps, invert the data, etc.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://cirrus.ucsd.edu/~pierce/ncview/'] +sources = [SOURCE_TAR_GZ] +checksums = ['597cfddf9c2d7993e9b0b86bca1b73839567ee9116ee33f6d750a449b5033d91'] + +# specified compiler is hard checked against (full path to) compiler used for netCDF... +preconfigopts = "CC=$(nc-config --cc) " +configopts = "--with-udunits2_incdir=$EBROOTUDUNITS/include --with-udunits2_libdir=$EBROOTUDUNITS/lib " +configopts += "--with-nc-config=$EBROOTNETCDF/bin/nc-config" + +dependencies = [ + ('netCDF', '4.9.2'), + ('netCDF-Fortran', '4.6.1'), + ('UDUNITS', '2.2.28'), + ('X11', '20240607'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), +] + +sanity_check_paths = { + 'files': ['bin/ncview'], + 'dirs': [], +} + +moduleclass = 'vis' 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..94ac5d42f94 --- /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) +maxparallel = 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..344d1e0852e --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb @@ -0,0 +1,55 @@ +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/*'] + +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/n/networkx/networkx-3.1-gfbf-2023a.eb b/easybuild/easyconfigs/n/networkx/networkx-3.1-gfbf-2023a.eb index 557dab9ac99..2fcf3d3fb25 100644 --- a/easybuild/easyconfigs/n/networkx/networkx-3.1-gfbf-2023a.eb +++ b/easybuild/easyconfigs/n/networkx/networkx-3.1-gfbf-2023a.eb @@ -10,7 +10,11 @@ and study of the structure, dynamics, and functions of complex networks.""" toolchain = {'name': 'gfbf', 'version': '2023a'} sources = [SOURCE_TAR_GZ] -checksums = ['de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61'] +patches = ['networkx-3.1_zero_division.patch'] +checksums = [ + {'networkx-3.1.tar.gz': 'de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61'}, + {'networkx-3.1_zero_division.patch': 'fb225e9942f18c87c67b49093b86e9f949e043fdf2f3c1ed467b6d3ad857aa35'}, +] dependencies = [ ('Python', '3.11.3'), diff --git a/easybuild/easyconfigs/n/networkx/networkx-3.1_zero_division.patch b/easybuild/easyconfigs/n/networkx/networkx-3.1_zero_division.patch new file mode 100644 index 00000000000..3110ca55530 --- /dev/null +++ b/easybuild/easyconfigs/n/networkx/networkx-3.1_zero_division.patch @@ -0,0 +1,42 @@ +Fixes the zero division bug `ZeroDivisionError: division by zero` +patch source: https://github.com/networkx/networkx/pull/6791 + +From 6e47bef10ba7c17514b0cbd2ec27c1f58ca21200 Mon Sep 17 00:00:00 2001 +From: juanis2112 +Date: Sat, 15 Jul 2023 14:22:02 -0500 +Subject: [PATCH] Fix empty graph zero division error for louvain + +--- + networkx/algorithms/community/louvain.py | 3 +++ + networkx/algorithms/community/tests/test_louvain.py | 7 +++++++ + 2 files changed, 10 insertions(+) + +diff --git a/networkx/algorithms/community/louvain.py b/networkx/algorithms/community/louvain.py +index ca71c0c30cb..94a8f7c98b9 100644 +--- a/networkx/algorithms/community/louvain.py ++++ b/networkx/algorithms/community/louvain.py +@@ -163,6 +163,9 @@ def louvain_partitions( + """ + + partition = [{u} for u in G.nodes()] ++ if nx.is_empty(G): ++ yield partition ++ return + mod = modularity(G, partition, resolution=resolution, weight=weight) + is_directed = G.is_directed() + if G.is_multigraph(): +diff --git a/networkx/algorithms/community/tests/test_louvain.py b/networkx/algorithms/community/tests/test_louvain.py +index ed5c2a38db6..e4942dfeb58 100644 +--- a/networkx/algorithms/community/tests/test_louvain.py ++++ b/networkx/algorithms/community/tests/test_louvain.py +@@ -185,3 +185,10 @@ def test_threshold(): + mod2 = nx.community.modularity(G, partition2) + + assert mod1 < mod2 ++ ++ ++def test_empty_graph(): ++ G = nx.Graph() ++ G.add_nodes_from(range(5)) ++ expected = [{0}, {1}, {2}, {3}, {4}] ++ assert nx.community.louvain_communities(G) == expected diff --git a/easybuild/easyconfigs/n/networkx/networkx-3.4.2-gfbf-2024a.eb b/easybuild/easyconfigs/n/networkx/networkx-3.4.2-gfbf-2024a.eb new file mode 100644 index 00000000000..41707723e85 --- /dev/null +++ b/easybuild/easyconfigs/n/networkx/networkx-3.4.2-gfbf-2024a.eb @@ -0,0 +1,20 @@ +easyblock = 'PythonPackage' + +name = 'networkx' +version = '3.4.2' + +homepage = 'https://pypi.python.org/pypi/networkx' +description = """NetworkX is a Python package for the creation, manipulation, +and study of the structure, dynamics, and functions of complex networks.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['307c3669428c5362aab27c8a1260aa8f47c4e91d3891f48be0141738d8d053e1'] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), # required for numpy, scipy, ... +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/o/OPERA-MS/OPERA-MS-0.9.0-20240703-foss-2023a.eb b/easybuild/easyconfigs/o/OPERA-MS/OPERA-MS-0.9.0-20240703-foss-2023a.eb new file mode 100644 index 00000000000..620366c965b --- /dev/null +++ b/easybuild/easyconfigs/o/OPERA-MS/OPERA-MS-0.9.0-20240703-foss-2023a.eb @@ -0,0 +1,67 @@ +easyblock = 'MakeCp' + +name = 'OPERA-MS' +local_commit = '026f9a5' +version = '0.9.0-20240703' + +homepage = 'https://github.com/CSB5/OPERA-MS' +description = """OPERA-MS is a hybrid metagenomic assembler which combines the + advantages of short and long-read technologies to provide high quality + assemblies, addressing issues of low contiguity for short-read only assemblies, + and low base-pair quality for long-read only assemblies.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/CSB5/OPERA-MS/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['72a3e16287dd1f2098adac41930d6a54779a033f5bf78c2659580afae5a7280c'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('Statistics-R', '0.34'), + ('Python', '3.11.3'), + ('SAMtools', '0.1.20'), +] + +prebuildopts = 'rm %(start_dir)s/tools_opera_ms/samtools && ' +prebuildopts += 'cd %(start_dir)s/tools_opera_ms && ln -s $EBROOTSAMTOOLS/bin/samtools && ' +prebuildopts += 'cd %(start_dir)s &&' +buildopts = 'CFLAGS="$CFLAGS"' + +files_to_copy = [ + 'OPERA-MS.pl', + 'bin', + 'src_utils', + 'tools_opera_ms', + (['OPERA-LG/bin'], 'OPERA-LG'), +] + +postinstallcmds = [ + "echo '#!/bin/sh\n exec perl %(installdir)s/OPERA-MS.pl $@' > %(installdir)s/bin/OPERA-MS", + 'chmod +x %(installdir)s/bin/OPERA-MS', + 'ln -s $EBROOTPERL/bin/perl %(installdir)s/tools_opera_ms/perl', + '%(installdir)s/bin/OPERA-MS ' + ' '.join([ + '--contig-file test_files/contigs.fasta', + '--short-read1 test_files/R1.fastq.gz', + '--short-read2 test_files/R2.fastq.gz', + '--long-read test_files/long_read.fastq', + '--no-ref-clustering', + '--out-dir $TMPDIR', + ]), +] + +fix_perl_shebang_for = ['bin/*.pl', 'OPERA-MS.pl', 'OPERA-LG/bin/*.pl'] +fix_python_shebang_for = ['bin/*.py', 'OPERA-LG/bin/*.py'] + +sanity_check_paths = { + 'files': ['bin/OPERA-MS'], + 'dirs': [], +} + +sanity_check_commands = [ + 'OPERA-MS --help', + 'OPERA-MS check-dependency', +] + +moduleclass = 'bio' 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/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.5-gompi-2023b-CUDA-12.4.0.eb b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.5-gompi-2023b-CUDA-12.4.0.eb new file mode 100644 index 00000000000..52593680dff --- /dev/null +++ b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.5-gompi-2023b-CUDA-12.4.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'OSU-Micro-Benchmarks' +version = '7.5' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://mvapich.cse.ohio-state.edu/benchmarks/' +description = """OSU Micro-Benchmarks""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://mvapich.cse.ohio-state.edu/download/mvapich/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1cf84ac5419456202757a757c5f9a4f5c6ecd05c65783c7976421cfd6020b3b3'] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('NCCL', '2.20.5', versionsuffix), + ('UCX-CUDA', '1.15.0', versionsuffix), + ('UCC-CUDA', '1.2.0', versionsuffix), +] + +configopts = ' --enable-cuda --with-cuda=$EBROOTCUDA --enable-ncclomb --with-nccl=$EBROOTNCCL' + +local_benchmark_dirs = [ + 'libexec/osu-micro-benchmarks/mpi/%s' % x for x in ['collective', 'one-sided', 'pt2pt', 'startup'] +] + [ + 'libexec/osu-micro-benchmarks/xccl/%s' % x for x in ['collective', 'pt2pt'] +] +modextrapaths = {'PATH': local_benchmark_dirs} + +sanity_check_paths = { + 'files': [], + 'dirs': local_benchmark_dirs, +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.2.0-seq-iface64.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.2.0-seq-iface64.eb new file mode 100644 index 00000000000..f205e063da9 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.2.0-seq-iface64.eb @@ -0,0 +1,60 @@ +name = 'OpenBLAS' +version = '0.3.27' +versionsuffix = '-seq-iface64' + +homepage = 'https://www.openblas.net/' +description = "OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version." + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = [ + # order matters, trying to download the large.tgz/timing.tgz LAPACK tarballs from GitHub causes trouble + 'https://www.netlib.org/lapack/timing/', + 'https://github.com/xianyi/OpenBLAS/archive/', +] +sources = ['v%(version)s.tar.gz'] +patches = [ + ('large.tgz', '.'), + ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + 'OpenBLAS-0.3.21_fix-order-vectorization.patch', + 'OpenBLAS-0.3.26_lapack_qr_noninittest.patch', + 'OpenBLAS-0.3.27_fix_zscal.patch', + 'OpenBLAS-0.3.27_riscv-drop-static-fortran-flag.patch', +] +checksums = [ + {'v0.3.27.tar.gz': 'aa2d68b1564fe2b13bc292672608e9cdeeeb6dc34995512e65c3b10f4599e897'}, + {'large.tgz': 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1'}, + {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, + {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.21_fix-order-vectorization.patch': + '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, + {'OpenBLAS-0.3.26_lapack_qr_noninittest.patch': '4781bf1d7b239374fd8069e15b4e2c0ef0e8efaa1a7d4c33557bd5b27e5de77c'}, + {'OpenBLAS-0.3.27_fix_zscal.patch': '9210d7b66538dabaddbe1bfceb16f8225708856f60876ca5561b19d3599f9fd1'}, + {'OpenBLAS-0.3.27_riscv-drop-static-fortran-flag.patch': + 'f374e41efffd592ab1c9034df9e7abf1045ed151f4fc0fd0da618ce9826f2d4b'}, +] + +builddependencies = [ + ('make', '4.4.1'), + # required by LAPACK test suite + ('Python', '3.11.5'), +] + +# INTERFACE64=1 needs if you link OpenBLAS for fortran code compied with 64 bit integers (-i8) +# This would be in intel library naming convention ilp64 +# The USE_OPENMP=0 and USE_THREAD=0 needs for the single threaded version +# The USE_LOCKING=1 needs for thread safe version (if threaded software calls OpenBLAS, without it +# OpenBLAS is not thread safe (so only single threaded software would be able to use it) +buildopts = "INTERFACE64=1 USE_OPENMP=0 USE_THREAD=0 USE_LOCKING=1 " +testopts = buildopts +installopts = buildopts + +run_lapack_tests = True +max_failing_lapack_tests_num_errors = 150 + +# extensive testing can be enabled by uncommenting the line below +# runtest = 'PATH=.:$PATH lapack-timing' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.3.0-seq-iface64.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.3.0-seq-iface64.eb new file mode 100644 index 00000000000..5527c667f66 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.27-GCC-13.3.0-seq-iface64.eb @@ -0,0 +1,60 @@ +name = 'OpenBLAS' +version = '0.3.27' +versionsuffix = '-seq-iface64' + +homepage = 'https://www.openblas.net/' +description = "OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version." + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = [ + # order matters, trying to download the large.tgz/timing.tgz LAPACK tarballs from GitHub causes trouble + 'https://www.netlib.org/lapack/timing/', + 'https://github.com/xianyi/OpenBLAS/archive/', +] +sources = ['v%(version)s.tar.gz'] +patches = [ + ('large.tgz', '.'), + ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + 'OpenBLAS-0.3.21_fix-order-vectorization.patch', + 'OpenBLAS-0.3.26_lapack_qr_noninittest.patch', + 'OpenBLAS-0.3.27_fix_zscal.patch', + 'OpenBLAS-0.3.27_riscv-drop-static-fortran-flag.patch', +] +checksums = [ + {'v0.3.27.tar.gz': 'aa2d68b1564fe2b13bc292672608e9cdeeeb6dc34995512e65c3b10f4599e897'}, + {'large.tgz': 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1'}, + {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, + {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.21_fix-order-vectorization.patch': + '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, + {'OpenBLAS-0.3.26_lapack_qr_noninittest.patch': '4781bf1d7b239374fd8069e15b4e2c0ef0e8efaa1a7d4c33557bd5b27e5de77c'}, + {'OpenBLAS-0.3.27_fix_zscal.patch': '9210d7b66538dabaddbe1bfceb16f8225708856f60876ca5561b19d3599f9fd1'}, + {'OpenBLAS-0.3.27_riscv-drop-static-fortran-flag.patch': + 'f374e41efffd592ab1c9034df9e7abf1045ed151f4fc0fd0da618ce9826f2d4b'}, +] + +builddependencies = [ + ('make', '4.4.1'), + # required by LAPACK test suite + ('Python', '3.12.3'), +] + +# INTERFACE64=1 needs if you link OpenBLAS for fortran code compied with 64 bit integers (-i8) +# This would be in intel library naming convention ilp64 +# The USE_OPENMP=0 and USE_THREAD=0 needs for the single threaded version +# The USE_LOCKING=1 needs for thread safe version (if threaded software calls OpenBLAS, without it +# OpenBLAS is not thread safe (so only single threaded software would be able to use it) +buildopts = "INTERFACE64=1 USE_OPENMP=0 USE_THREAD=0 USE_LOCKING=1 " +testopts = buildopts +installopts = buildopts + +run_lapack_tests = True +max_failing_lapack_tests_num_errors = 150 + +# extensive testing can be enabled by uncommenting the line below +# runtest = 'PATH=.:$PATH lapack-timing' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/o/OpenMEEG/OpenMEEG-2.5.7-foss-2023a.eb b/easybuild/easyconfigs/o/OpenMEEG/OpenMEEG-2.5.7-foss-2023a.eb index 04079894182..9cbfe782d47 100644 --- a/easybuild/easyconfigs/o/OpenMEEG/OpenMEEG-2.5.7-foss-2023a.eb +++ b/easybuild/easyconfigs/o/OpenMEEG/OpenMEEG-2.5.7-foss-2023a.eb @@ -46,8 +46,8 @@ sanity_check_paths = { sanity_check_commands = [ "om_mesh_info --help", - "pip check", - "python -c 'import openmeeg'", + "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check", + "python -s -c 'import openmeeg'", ] moduleclass = 'data' 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/o/Optuna/Optuna-4.1.0-foss-2024a.eb b/easybuild/easyconfigs/o/Optuna/Optuna-4.1.0-foss-2024a.eb new file mode 100644 index 00000000000..68995744661 --- /dev/null +++ b/easybuild/easyconfigs/o/Optuna/Optuna-4.1.0-foss-2024a.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'Optuna' +version = '4.1.0' + +homepage = "https://optuna.org/" +description = """Optuna is an automatic hyperparameter optimization software framework, +particularly designed for machine learning. It features an imperative, +define-by-run style user API. Thanks to our define-by-run API, the code written +with Optuna enjoys high modularity, and the user of Optuna can dynamically +construct the search spaces for the hyperparameters.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('PyYAML', '6.0.2'), + ('SciPy-bundle', '2024.05'), + ('tqdm', '4.66.5'), + ('SQLAlchemy', '2.0.36'), + ('matplotlib', '3.9.2'), # optional + ('plotly.py', '5.24.1'), # optional + ('redis-py', '5.1.1'), # optional + ('scikit-learn', '1.5.2'), # optional +] + +exts_list = [ + ('cmaes', '0.11.1', { # optional + 'checksums': ['cf71fa3679814723be771f2c9edd85f465b1bc1e409e1ad6d8a9e481efcd5160'], + }), + ('colorlog', '6.9.0', { + 'checksums': ['bfba54a1b93b94f54e1f4fe48395725a3d92fd2a4af702f6bd70946bdc0c6ac2'], + }), + ('%(namelower)s', version, { + 'checksums': ['b364e87a2038f9946c5e2770c130597538aac528b4a82c1cab5267f337ea7679'], + }), +] + +sanity_check_paths = { + 'files': ['bin/optuna'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} +sanity_check_commands = [('optuna', '--help')] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/o/Osi/Osi-0.108.9-GCC-13.2.0.eb b/easybuild/easyconfigs/o/Osi/Osi-0.108.9-GCC-13.2.0.eb new file mode 100644 index 00000000000..81f021f837c --- /dev/null +++ b/easybuild/easyconfigs/o/Osi/Osi-0.108.9-GCC-13.2.0.eb @@ -0,0 +1,48 @@ +easyblock = 'ConfigureMake' + +name = 'Osi' +version = '0.108.9' + +homepage = "https://github.com/coin-or/Osi" +description = """Osi (Open Solver Interface) provides an abstract base class to a generic linear +programming (LP) solver, along with derived classes for specific solvers. Many +applications may be able to use the Osi to insulate themselves from a specific +LP solver. That is, programs written to the OSI standard may be linked to any +solver with an OSI interface and should produce correct results. The OSI has +been significantly extended compared to its first incarnation. Currently, the +OSI supports linear programming solvers and has rudimentary support for integer +programming.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/coin-or/Osi/archive/refs/tags/releases/'] +sources = ['%(version)s.tar.gz'] +checksums = ['8b09802960d7d4fd9579b3e4320bfb36e7f8dca5e5094bf1f5edf1b7003f5562'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.8'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('CoinUtils', '2.11.10'), + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +# Disable GLPK because Osi requires GLPK<=4.48 +configopts = '--without-glpk ' +# Use CoinUtils from EB +configopts += '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' + +sanity_check_paths = { + 'files': ['lib/libOsi.%s' % SHLIB_EXT, 'lib/libOsiCommonTests.%s' % SHLIB_EXT], + 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] +} + +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + +moduleclass = "math" diff --git a/easybuild/easyconfigs/o/orjson/orjson-3.10.10-GCCcore-13.2.0.eb b/easybuild/easyconfigs/o/orjson/orjson-3.10.10-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..6cab6dc9204 --- /dev/null +++ b/easybuild/easyconfigs/o/orjson/orjson-3.10.10-GCCcore-13.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'orjson' +version = '3.10.10' + +homepage = 'https://github.com/ijl/orjson' +description = """Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('maturin', '1.5.0', '-Rust-1.76.0'), +] +dependencies = [ + ('Python', '3.11.5'), +] + +exts_list = [ + ('ruff', '0.7.0', { + 'checksums': ['47a86360cf62d9cd53ebfb0b5eb0e882193fc191c6d717e8bef4462bc3b9ea2b'], + }), + ('mypy_extensions', '1.0.0', { + 'checksums': ['75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782'], + }), + ('mypy', '1.13.0', { + 'checksums': ['0291a61b6fbf3e6673e3405cfcc0e7650bebc7939659fdca2702958038bd835e'], + }), + (name, version, { + 'checksums': ['37949383c4df7b4337ce82ee35b6d7471e55195efa7dcb45ab8226ceadb0fe3b'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PASA/PASA-2.5.3-foss-2023a.eb b/easybuild/easyconfigs/p/PASA/PASA-2.5.3-foss-2023a.eb new file mode 100644 index 00000000000..8d42086755c --- /dev/null +++ b/easybuild/easyconfigs/p/PASA/PASA-2.5.3-foss-2023a.eb @@ -0,0 +1,57 @@ +easyblock = 'ConfigureMake' + +name = 'PASA' +version = '2.5.3' + +homepage = 'https://github.com/PASApipeline/PASApipeline' +description = """PASA, acronym for Program to Assemble Spliced Alignments (and pronounced 'pass-uh'), + is a eukaryotic genome annotation tool that exploits spliced alignments of expressed transcript + sequences to automatically model gene structures, and to maintain gene structure annotation consistent + with the most recently available experimental sequence data. PASA also identifies and classifies all + splicing variations supported by the transcript alignments.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/PASApipeline/PASApipeline/archive/'] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +checksums = ['9b2f6a301b73fd8c713af0977cf6e97f3d928988d6b79715ebe81e19b51152eb'] + +dependencies = [ + ('SQLite', '3.42.0'), + ('GMAP-GSNAP', '2023-04-20'), + ('pblat', '2.5.1'), + ('minimap2', '2.26'), + ('FASTA', '36.3.8i'), +] + +buildininstalldir = True + +skipsteps = ['configure', 'install'] + +unpack_options = '--strip-components=1' + +local_bins = [ + '%(namelower)s', + 'cdbfasta', + 'cdbyank', + 'cln2qual', + 'mdust', + 'psx', + 'seqclean', + 'seqclean.psx', + 'slclust', + 'trimpoly', +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bins], + 'dirs': [] +} + +modextrapaths = { + 'PASAHOME': '', +} + +sanity_check_commands = ['command -v %(namelower)s'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PCL/PCL-1.14.1-foss-2023a.eb b/easybuild/easyconfigs/p/PCL/PCL-1.14.1-foss-2023a.eb new file mode 100644 index 00000000000..97f57817025 --- /dev/null +++ b/easybuild/easyconfigs/p/PCL/PCL-1.14.1-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'PCL' +version = '1.14.1' + +homepage = 'https://pointclouds.org/' +description = """The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and + point cloud processing.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/PointCloudLibrary/pcl/archive/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5dc5e09509644f703de9a3fb76d99ab2cc67ef53eaf5637db2c6c8b933b28af6'] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Boost', '1.82.0'), + ('Eigen', '3.4.0'), + ('FLANN', '1.9.2'), + ('VTK', '9.3.0'), + ('Qhull', '2020.2'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin', 'include/pcl-%(version_major_minor)s/pcl', 'lib', 'share/pcl-%(version_major_minor)s'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..c378f2e1bab --- /dev/null +++ b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'PCRE' +version = '8.45' + +homepage = 'https://www.pcre.org/' +description = """ + The PCRE library is a set of functions that implement regular expression + pattern matching using the same syntax and semantics as Perl 5. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + SOURCEFORGE_SOURCE, + 'https://ftp.%(namelower)s.org/pub/%(namelower)s/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4e6ce03e0336e8b4a3d6c2b70b1c5e18590a5673a98186da90d4f33c23defc09'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.3.1'), +] + +configopts = "--enable-utf --enable-unicode-properties --enable-pcre16 --enable-pcre32" + + +sanity_check_paths = { + 'files': [ + 'bin/%(namelower)s-config', + 'include/%(namelower)s.h', + 'share/man/man3/%(namelower)s.3', + 'lib/libpcre32.%s' % SHLIB_EXT + ], + 'dirs': ['lib/pkgconfig', 'share/doc/%(namelower)s/html', 'share/man/man1'], +} + +moduleclass = 'devel' 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..15591cc1b35 --- /dev/null +++ b/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,44 @@ +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'), +] + +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..d553ecfc1da --- /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 096d73dd60a..794dd1fa919 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/Paraver/Paraver-4.11.4-GCC-13.2.0.eb b/easybuild/easyconfigs/p/Paraver/Paraver-4.11.4-GCC-13.2.0.eb new file mode 100644 index 00000000000..49f5d0511e8 --- /dev/null +++ b/easybuild/easyconfigs/p/Paraver/Paraver-4.11.4-GCC-13.2.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': '13.2.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.83.0'), + ('wxWidgets', '3.2.6'), +] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1-foss-2023b.eb b/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1-foss-2023b.eb new file mode 100644 index 00000000000..3dc97f84c49 --- /dev/null +++ b/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1-foss-2023b.eb @@ -0,0 +1,84 @@ +easyblock = 'ConfigureMake' + +name = 'Parsnp' +version = '2.1.1' + +homepage = 'https://harvest.readthedocs.io/en/latest/content/parsnp.html' +description = """Parsnp was designed to align the core genome of +hundreds to thousands of bacterial genomes within a few minutes to few +hours. Input can be both draft assemblies and finished genomes, and +output includes variant (SNP) calls, core genome phylogeny and +multi-alignments. Parsnp leverages contextual information provided by +multi-alignments surrounding SNP sites for filtration/cleaning, in +addition to existing tools for recombination detection/filtration and +phylogenetic reconstruction.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True} + +github_account = 'marbl' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'Parsnp-2.1.1_fix_configure_search_for_libMUSCLE.patch', +] +checksums = [ + {'v2.1.1.tar.gz': '7887ee4030dad6f30a4b735f1ee463024204030adbdcb0fa96562e6e8664474e'}, + {'Parsnp-2.1.1_fix_configure_search_for_libMUSCLE.patch': + '7b601c442ed4f64b53195b9adefafbb0d9639296513e22961a8e0de672dbb3fb'}, +] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('tqdm', '4.66.2'), + ('Biopython', '1.84'), + ('FastTree', '2.1.11'), + ('harvest-tools', '1.3'), + ('RAxML', '8.2.13', '-avx2'), + ('pyspoa', '0.2.1'), + ('Mash', '2.3'), + ('FastANI', '1.34'), + ('PhiPack', '2016.06.14'), +] + +preconfigopts = ' && '.join([ + 'cd muscle', + './autogen.sh', + './configure --prefix=%(installdir)s', + 'make install', + 'cd ..', + './autogen.sh', + '', +]) + +configopts = '--with-libmuscle=%(installdir)s' + +preinstallopts = ' && '.join([ + 'cd muscle', + 'make install', + 'cd ..', + '', +]) + +postinstallcmds = [ + 'cp parsnp %(installdir)s/bin', + 'cp template.ini %(installdir)s', + 'mkdir -p %(installdir)s/lib/python%(pyshortver)s/site-packages', + 'cp partition.py extend.py logger.py %(installdir)s/lib/python%(pyshortver)s/site-packages', +] + +sanity_check_paths = { + 'files': ['bin/parsnp_core', 'bin/parsnp', 'template.ini'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +modextravars = { + 'PARSNPDIR': '', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1_fix_configure_search_for_libMUSCLE.patch b/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1_fix_configure_search_for_libMUSCLE.patch new file mode 100644 index 00000000000..eba4332c436 --- /dev/null +++ b/easybuild/easyconfigs/p/Parsnp/Parsnp-2.1.1_fix_configure_search_for_libMUSCLE.patch @@ -0,0 +1,27 @@ +Fix search for libMUSCLE's include files and install target + +Åke Sandgren, 2024-12-13 +diff -ru parsnp-2.1.1.orig/configure.ac parsnp-2.1.1/configure.ac +--- parsnp-2.1.1.orig/configure.ac 2024-11-21 00:54:04.000000000 +0100 ++++ parsnp-2.1.1/configure.ac 2024-12-13 12:33:40.964024323 +0100 +@@ -11,7 +11,7 @@ + + AC_LANG(C++) + +-CPPFLAGS="-I$with_libmuscle" ++CPPFLAGS="-I$with_libmuscle/include" + AC_CHECK_HEADER(libMUSCLE/muscle.h, [result=1], [result=0]) + + if test $result == 0 +diff -ru parsnp-2.1.1.orig/src/Makefile.am parsnp-2.1.1/src/Makefile.am +--- parsnp-2.1.1.orig/src/Makefile.am 2024-11-21 00:54:04.000000000 +0100 ++++ parsnp-2.1.1/src/Makefile.am 2024-12-13 12:55:02.385984661 +0100 +@@ -2,6 +2,6 @@ + parsnp_core_LDFLAGS = -fopenmp -lstdc++ -lpthread -std=gnu++0x -Wl,-rpath,$(libmuscle)/lib -L$(libmuscle)/lib -L${CONDA_PREFIX}/lib -lMUSCLE-3.7 + bin_PROGRAMS = parsnp_core + parsnp_core_SOURCES = MuscleInterface.cpp MuscleInterface.h parsnp.cpp parsnp.hh LCB.cpp LCB.hh LCR.cpp LCR.hh TMum.cpp TMum.hh Converter.cpp Converter.hh ./ext/iniFile.cpp ./ext/iniFile.h +-bindir = $(top_srcdir)/bin +-libdir = $(top_srcdir)/lib ++#bindir = $(top_srcdir)/bin ++#libdir = $(top_srcdir)/lib + diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Crypt-DES-2.07_expose-perl_des_expand_key-and-perl_des_crypt.patch b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Crypt-DES-2.07_expose-perl_des_expand_key-and-perl_des_crypt.patch new file mode 100644 index 00000000000..fef8544d3eb --- /dev/null +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Crypt-DES-2.07_expose-perl_des_expand_key-and-perl_des_crypt.patch @@ -0,0 +1,23 @@ +From 51fda02d223f516c4948606c050bfc732b95f481 Mon Sep 17 00:00:00 2001 +From: Brian Fraser +Date: Thu, 24 Sep 2020 15:00:20 +0200 +Subject: [PATCH] _des.h: expose perl_des_expand_key() and perl_des_crypt() to + prevent implicit delaration errors/warnings + +--- + _des.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/_des.h b/_des.h +index ec56b27..b636cda 100644 +--- a/_des.h ++++ b/_des.h +@@ -4,4 +4,6 @@ typedef unsigned long des_ks[32]; + + void _des_crypt( des_cblock in, des_cblock out, des_ks key, int encrypt ); + void _des_expand_key( des_user_key userKey, des_ks key ); ++void perl_des_expand_key(des_user_key userKey, des_ks ks); ++void perl_des_crypt( des_cblock input, des_cblock output, des_ks ks, int encrypt ); + +-- +2.24.3 (Apple Git-128) diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.40.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.40.0-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..b76649ae62e --- /dev/null +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.40.0-GCCcore-14.2.0.eb @@ -0,0 +1,2170 @@ +easyblock = 'PerlBundle' + +name = 'Perl-bundle-CPAN' +version = '5.40.0' + +homepage = 'https://www.perl.org/' +description = """A set of common packages from CPAN""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.42'), + ('groff', '1.23.0'), +] + +dependencies = [ + ('Perl', version), + ('zlib', '1.3.1'), # for Net::SSLeay + ('expat', '2.6.4'), # for XML::Parser + ('ncurses', '6.5'), # for Term::ReadLine::Gnu + ('libreadline', '8.2'), # for Term::ReadLine::Gnu + ('OpenSSL', '3', '', SYSTEM), # required for Net::SSLeay +] + +# !! order of extensions is important !! +# extensions updated on 2024-07-08 +exts_list = [ + ('Config::General', '2.65', { + 'source_tmpl': 'Config-General-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TL/TLINDEN'], + 'checksums': ['4d6d5754be3a9f30906836f0cc10e554c8832e14e7a1341efb15b05d706fc58f'], + }), + ('HTTP::Date', '6.06', { + 'source_tmpl': 'HTTP-Date-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['7b685191c6acc3e773d1fc02c95ee1f9fae94f77783175f5e78c181cc92d2b52'], + }), + ('File::Listing', '6.16', { + 'source_tmpl': 'File-Listing-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['189b3a13fc0a1ba412b9d9ec5901e9e5e444cc746b9f0156d4399370d33655c6'], + }), + ('ExtUtils::Config', '0.010', { + 'source_tmpl': 'ExtUtils-Config-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['82e7e4e90cbe380e152f5de6e3e403746982d502dd30197a123652e46610c66d'], + }), + ('ExtUtils::InstallPaths', '0.014', { + 'source_tmpl': 'ExtUtils-InstallPaths-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['ae65d20cc3c7e14b3cd790915c84510f82dfb37a4c9b88aa74b2e843af417d01'], + }), + ('ExtUtils::Helpers', '0.028', { + 'source_tmpl': 'ExtUtils-Helpers-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['c8574875cce073e7dc5345a7b06d502e52044d68894f9160203fcaab379514fe'], + }), + ('Test::Harness', '3.50', { + 'source_tmpl': 'Test-Harness-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['79b6acdc444f1924cd4c2e9ed868bdc6e09580021aca8ff078ede2ffef8a6f54'], + }), + ('CPAN::Meta::Requirements', '2.143', { + 'source_tmpl': 'CPAN-Meta-Requirements-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['6ec7e4697bb5a8cea0ee3c8bd5d4b20ce086168a8084778d6e7a4c37356fdf8b'], + }), + ('CPAN::Requirements::Dynamic', '0.001', { + 'source_tmpl': 'CPAN-Requirements-Dynamic-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['4b590e712b9aca680c3631855ee16a50b84fa0227c362e13b237a75a01489ef5'], + }), + ('Module::Build::Tiny', '0.051', { + 'source_tmpl': 'Module-Build-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['74fdce35e8cd4d787bc2d4fc1d43a291b7bbced4e94dc5fc592bd81ca93a98e9'], + }), + ('aliased', '0.34', { + 'source_tmpl': 'aliased-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['c350524507cd827fab864e5d4c2cc350b1babaa12fa95aec0ca00843fcc7deeb'], + }), + ('Text::Glob', '0.11', { + 'source_tmpl': 'Text-Glob-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['069ccd49d3f0a2dedb115f4bdc9fbac07a83592840953d1fcdfc39eb9d305287'], + }), + ('Regexp::Common', '2024080801', { + 'source_tmpl': 'Regexp-Common-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABIGAIL'], + 'checksums': ['0677afaec8e1300cefe246b4d809e75cdf55e2cc0f77c486d13073b69ab4fbdd'], + }), + ('IO::String', '1.08', { + 'source_tmpl': 'IO-String-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['2a3f4ad8442d9070780e58ef43722d19d1ee21a803bf7c8206877a10482de5a0'], + }), + ('Data::Stag', '0.14', { + 'source_tmpl': 'Data-Stag-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CM/CMUNGALL'], + 'checksums': ['4ab122508d2fb86d171a15f4006e5cf896d5facfa65219c0b243a89906258e59'], + }), + ('GO::Utils', '0.15', { + 'source_tmpl': 'go-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CM/CMUNGALL'], + 'checksums': ['423d26155ee85ca51ab2270cee59f4e85b193e57ac3a29aff827298c0a396b12'], + }), + ('Module::Pluggable', '6.2', { + 'source_tmpl': 'Module-Pluggable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SI/SIMONW'], + 'checksums': ['2743f1cb59c2cac21bf14f0f71beab5ced75a589394a1fd8ac09ecc71599299e'], + }), + ('Try::Tiny', '0.32', { + 'source_tmpl': 'Try-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ef2d6cab0bad18e3ab1c4e6125cc5f695c7e459899f512451c8fa3ef83fa7fc0'], + }), + ('Test::Fatal', '0.017', { + 'source_tmpl': 'Test-Fatal-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['37dfffdafb84b762efe96b02fb2aa41f37026c73e6b83590db76229697f3c4a6'], + }), + ('Test::Warnings', '0.033', { + 'source_tmpl': 'Test-Warnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['b9c375719f2c61c5f97aa5ee6cf4c901a972347c415969379b0b51f67c48bbcb'], + }), + ('Class::Inspector', '1.36', { + 'source_tmpl': 'Class-Inspector-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['cc295d23a472687c24489d58226ead23b9fdc2588e522f0b5f0747741700694e'], + }), + ('File::ShareDir::Install', '0.14', { + 'source_tmpl': 'File-ShareDir-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['8f9533b198f2d4a9a5288cbc7d224f7679ad05a7a8573745599789428bc5aea0'], + }), + ('File::ShareDir', '1.118', { + 'source_tmpl': 'File-ShareDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['3bb2a20ba35df958dc0a4f2306fc05d903d8b8c4de3c8beefce17739d281c958'], + }), + ('IPC::System::Simple', '1.30', { + 'source_tmpl': 'IPC-System-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['22e6f5222b505ee513058fdca35ab7a1eab80539b98e5ca4a923a70a8ae9ba9e'], + }), + ('Importer', '0.026', { + 'source_tmpl': 'Importer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['e08fa84e13cb998b7a897fc8ec9c3459fcc1716aff25cc343e36ef875891b0ef'], + }), + ('Term::Table', '0.023', { + 'source_tmpl': 'Term-Table-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['e45042face1801d99c0bead6ca5f363a34e0e055f4fe6b0ccb208de481072bd3'], + }), + ('Scope::Guard', '0.21', { + 'source_tmpl': 'Scope-Guard-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE'], + 'checksums': ['8c9b1bea5c56448e2c3fadc65d05be9e4690a3823a80f39d2f10fdd8f777d278'], + }), + ('Sub::Info', '0.002', { + 'source_tmpl': 'Sub-Info-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['ea3056d696bdeff21a99d340d5570887d39a8cc47bff23adfc82df6758cdd0ea'], + }), + ('Test2::Require::Module', '1.302204', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['03749d1027a7817ca7f11e420ef72951f20a849ea65af2eb595f34df47d1226e'], + }), + ('Test2::Plugin::NoWarnings', '0.10', { + 'source_tmpl': 'Test2-Plugin-NoWarnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['c97cb1122cc6e3e4a079059da71e12f65760bfb0671d19d25a7ec7c5f1f240fb'], + }), + ('Class::Tiny', '1.008', { + 'source_tmpl': 'Class-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['ee058a63912fa1fcb9a72498f56ca421a2056dc7f9f4b67837446d6421815615'], + }), + ('Path::Tiny', '0.146', { + 'source_tmpl': 'Path-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['861ef09bca68254e9ab24337bb6ec9d58593a792e9d68a27ee6bec2150f06741'], + }), + ('Test::Deep', '1.204', { + 'source_tmpl': 'Test-Deep-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['b6591f6ccdd853c7efc9ff3c5756370403211cffe46047f082b1cd1611a84e5f'], + }), + ('Test::File', '1.993', { + 'source_tmpl': 'Test-File-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['ef2ffe1aaec7b42d874ad411ec647547b9b9bc2f5fb93e49e3399488456afc7a'], + }), + ('Test::Needs', '0.002010', { + 'source_tmpl': 'Test-Needs-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['923ffdc78fcba96609753e4bae26b0ba0186893de4a63cd5236e012c7c90e208'], + }), + ('Test::Requires', '0.11', { + 'source_tmpl': 'Test-Requires-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM'], + 'checksums': ['4b88de549597eecddf7c3c38a4d0204a16f59ad804577b671896ac04e24e040f'], + }), + ('File::Copy::Recursive', '0.45', { + 'source_tmpl': 'File-Copy-Recursive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DM/DMUEY'], + 'checksums': ['d3971cf78a8345e38042b208bb7b39cb695080386af629f4a04ffd6549df1157'], + }), + ('Test::File::ShareDir::Dist', '1.001002', { + 'source_tmpl': 'Test-File-ShareDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KE/KENTNL'], + 'checksums': ['b33647cbb4b2f2fcfbde4f8bb4383d0ac95c2f89c4c5770eb691f1643a337aad'], + }), + ('CPAN::Meta::Check', '0.018', { + 'source_tmpl': 'CPAN-Meta-Check-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['f619d2df5ea0fd91c8cf83eb54acccb5e43d9e6ec1a3f727b3d0ac15d0cf378a'], + }), + ('Sub::Exporter::Progressive', '0.001013', { + 'source_tmpl': 'Sub-Exporter-Progressive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/F/FR/FREW'], + 'checksums': ['d535b7954d64da1ac1305b1fadf98202769e3599376854b2ced90c382beac056'], + }), + ('Module::Runtime', '0.016', { + 'source_tmpl': 'Module-Runtime-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM'], + 'checksums': ['68302ec646833547d410be28e09676db75006f4aa58a11f3bdb44ffe99f0f024'], + }), + ('Module::Implementation', '0.09', { + 'source_tmpl': 'Module-Implementation-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['c15f1a12f0c2130c9efff3c2e1afe5887b08ccd033bd132186d1e7d5087fd66d'], + }), + ('B::Hooks::EndOfScope', '0.28', { + 'source_tmpl': 'B-Hooks-EndOfScope-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['edac77a17fc36620c8324cc194ce1fad2f02e9fcbe72d08ad0b2c47f0c7fd8ef'], + }), + ('Package::Stash', '0.40', { + 'source_tmpl': 'Package-Stash-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['5a9722c6d9cb29ee133e5f7b08a5362762a0b5633ff5170642a5b0686e95e066'], + }), + ('namespace::clean', '0.27', { + 'source_tmpl': 'namespace-clean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI'], + 'checksums': ['8a10a83c3e183dc78f9e7b7aa4d09b47c11fb4e7d3a33b9a12912fd22e31af9d'], + }), + ('Sub::Identify', '0.14', { + 'source_tmpl': 'Sub-Identify-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RG/RGARCIA'], + 'checksums': ['068d272086514dd1e842b6a40b1bedbafee63900e5b08890ef6700039defad6f'], + }), + ('namespace::autoclean', '0.31', { + 'source_tmpl': 'namespace-autoclean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['d3b32c82e1d2caa9d58b8c8075965240e6cab66ab9350bd6f6bea4ca07e938d6'], + }), + ('Eval::Closure', '0.14', { + 'source_tmpl': 'Eval-Closure-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DO/DOY'], + 'checksums': ['ea0944f2f5ec98d895bef6d503e6e4a376fea6383a6bc64c7670d46ff2218cad'], + }), + ('Exporter::Tiny', '1.006002', { + 'source_tmpl': 'Exporter-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOBYINK'], + 'checksums': ['6f295e2cbffb1dbc15bdb9dadc341671c1e0cd2bdf2d312b17526273c322638d'], + }), + ('Type::Tiny', '2.006000', { + 'source_tmpl': 'Type-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOBYINK'], + 'checksums': ['4c685ebbba5145dc02944c305e8e82759811032a55e6da270a751b63b76500ea'], + }), + ('Class::Data::Inheritable', '0.10', { + 'source_tmpl': 'Class-Data-Inheritable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSHERER'], + 'checksums': ['aa1ae68a611357b7bfd9a2f64907cc196ddd6d047cae64ef9d0ad099d98ae54a'], + }), + ('Devel::StackTrace', '2.05', { + 'source_tmpl': 'Devel-StackTrace-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['63cb6196e986a7e578c4d28b3c780e7194835bfc78b68eeb8f00599d4444888c'], + }), + ('Exception::Class', '1.45', { + 'source_tmpl': 'Exception-Class-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['5482a77ef027ca1f9f39e1f48c558356e954936fc8fbbdee6c811c512701b249'], + }), + ('Role::Tiny', '2.002004', { + 'source_tmpl': 'Role-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['d7bdee9e138a4f83aa52d0a981625644bda87ff16642dfa845dcb44d9a242b45'], + }), + ('MRO::Compat', '0.15', { + 'source_tmpl': 'MRO-Compat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['0d4535f88e43babd84ab604866215fc4d04398bd4db7b21852d4a31b1c15ef61'], + }), + ('Sub::Quote', '2.006008', { + 'source_tmpl': 'Sub-Quote-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['94bebd500af55762e83ea2f2bc594d87af828072370c7110c60c238a800d15b2'], + }), + ('Specio', '0.48', { + 'source_tmpl': 'Specio-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['0c85793580f1274ef08173079131d101f77b22accea7afa8255202f0811682b2'], + }), + ('Test::Without::Module', '0.23', { + 'source_tmpl': 'Test-Without-Module-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CO/CORION'], + 'checksums': ['8289e1cd7f57017a816ab4127e29ecd7a754ae7cd5c037c41b3b3bf849c21d21'], + }), + ('Params::ValidationCompiler', '0.31', { + 'source_tmpl': 'Params-ValidationCompiler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['7b6497173f1b6adb29f5d51d8cf9ec36d2f1219412b4b2410e9d77a901e84a6d'], + }), + ('DateTime::Locale', '1.44', { + 'source_tmpl': 'DateTime-Locale-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['12a584a4a43c46114cd41ab6981be3609588604a906463fe4f844bb88a31c2de'], + }), + ('Class::Singleton', '1.6', { + 'source_tmpl': 'Class-Singleton-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['27ba13f0d9512929166bbd8c9ef95d90d630fc80f0c9a1b7458891055e9282a4'], + }), + ('DateTime::TimeZone', '2.63', { + 'source_tmpl': 'DateTime-TimeZone-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['79ac1c34fb2129b1ad88e0c7090166b98f2a7fd658358f2e1ae7e9bac963cc0f'], + }), + ('Module::Build', '0.4234', { + 'source_tmpl': 'Module-Build-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['66aeac6127418be5e471ead3744648c766bd01482825c5b66652675f2bc86a8f'], + }), + ('Params::Validate', '1.31', { + 'source_tmpl': 'Params-Validate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['1bf2518ef2c4869f91590e219f545c8ef12ed53cf313e0eb5704adf7f1b2961e'], + }), + ('List::MoreUtils::XS', '0.430', { + 'source_tmpl': 'List-MoreUtils-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['e8ce46d57c179eecd8758293e9400ff300aaf20fefe0a9d15b9fe2302b9cb242'], + }), + ('List::MoreUtils', '0.430', { + 'source_tmpl': 'List-MoreUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['63b1f7842cd42d9b538d1e34e0330de5ff1559e4c2737342506418276f646527'], + }), + ('DateTime', '1.65', { + 'source_tmpl': 'DateTime-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['0bfda7ff0253fb3d88cf4bdb5a14afb8cea24d147975d5bdf3c88b40e7ab140e'], + }), + ('Number::Compare', '0.03', { + 'source_tmpl': 'Number-Compare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['83293737e803b43112830443fb5208ec5208a2e6ea512ed54ef8e4dd2b880827'], + }), + ('File::Find::Rule', '0.34', { + 'source_tmpl': 'File-Find-Rule-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['7e6f16cc33eb1f29ff25bee51d513f4b8a84947bbfa18edb2d3cc40a2d64cafe'], + }), + ('Params::Util', '1.102', { + 'source_tmpl': 'Params-Util-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['499bb1b482db24fda277a51525596ad092c2bd51dd508fa8fec2e9f849097402'], + }), + ('File::Find::Rule::Perl', '1.16', { + 'source_tmpl': 'File-Find-Rule-Perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ae1886050d9ca21223c073e2870abdc80dc30e3f55289a11c37da3820a8321ff'], + }), + ('Readonly', '2.05', { + 'source_tmpl': 'Readonly-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SANKO'], + 'checksums': ['4b23542491af010d44a5c7c861244738acc74ababae6b8838d354dfb19462b5e'], + }), + ('Git', '0.42', { + 'source_tmpl': 'Git-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSOUTH'], + 'checksums': ['9469a9f398f3a2bf2b0500566ee41d3ff6fae460412a137185767a1cc4783a6d'], + }), + ('File::Slurp::Tiny', '0.004', { + 'source_tmpl': 'File-Slurp-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['452995beeabf0e923e65fdc627a725dbb12c9e10c00d8018c16d10ba62757f1e'], + }), + ('Tree::DAG_Node', '1.32', { + 'source_tmpl': 'Tree-DAG_Node-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['22d9de3d6e6f4afd89e6d825c664f9482878bd49e29cb81342a707af40542d3d'], + }), + ('Template', '3.102', { + 'source_tmpl': 'Template-Toolkit-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['d161c89dee9b213a7c55709ea782e2dd5923dbd1215b9576612889e6e74a2e06'], + }), + ('DBI', '1.645', { + 'pretestopts': 'LC_ALL=C ', # Test fails if run in localized environments + 'source_tmpl': 'DBI-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['e38b7a5efee129decda12383cf894963da971ffac303f54cc1b93e40e3cf9921'], + }), + ('DBD::SQLite', '1.76', { + 'source_tmpl': 'DBD-SQLite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['0a33a7a935be63371071dbe600cfaefa67cd971b67580a917bbf6ebaf723c584'], + }), + ('Math::Bezier', '0.01', { + 'source_tmpl': 'Math-Bezier-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABW'], + 'checksums': ['11a815fc45fdf0efabb1822ab77faad8b9eea162572c5f0940c8ed7d56e6b8b8'], + }), + ('Archive::Extract', '0.88', { + 'source_tmpl': 'Archive-Extract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['cffcf135cd0622287d3b02154f7d6716495449fcaed03966621948e25ea5f742'], + }), + ('DBIx::Simple', '1.37', { + 'source_tmpl': 'DBIx-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JU/JUERD'], + 'checksums': ['46d311aa2ce08907401c56119658426dbb044c5a40de73d9a7b79bf50390cae3'], + }), + ('Shell', '0.73', { + 'source_tmpl': 'Shell-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/F/FE/FERREIRA'], + 'checksums': ['f7dbebf65261ed0e5abd0f57052b64d665a1a830bab4c8bbc220f235bd39caf5'], + }), + ('Test::Simple', '1.302204', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['03749d1027a7817ca7f11e420ef72951f20a849ea65af2eb595f34df47d1226e'], + }), + ('Set::Scalar', '1.29', { + 'source_tmpl': 'Set-Scalar-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAVIDO'], + 'checksums': ['a3dc1526f3dde72d3c64ea00007b86ce608cdcd93567cf6e6e42dc10fdc4511d'], + }), + ('IO::Stringy', '2.113', { + 'source_tmpl': 'IO-Stringy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['51220fcaf9f66a639b69d251d7b0757bf4202f4f9debd45bdd341a6aca62fe4e'], + }), + ('Encode::Locale', '1.05', { + 'source_tmpl': 'Encode-Locale-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['176fa02771f542a4efb1dbc2a4c928e8f4391bf4078473bd6040d8f11adb0ec1'], + }), + ('XML::SAX::Base', '1.09', { + 'source_tmpl': 'XML-SAX-Base-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['66cb355ba4ef47c10ca738bd35999723644386ac853abbeb5132841f5e8a2ad0'], + }), + ('XML::NamespaceSupport', '1.12', { + 'source_tmpl': 'XML-NamespaceSupport-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN'], + 'checksums': ['47e995859f8dd0413aa3f22d350c4a62da652e854267aa0586ae544ae2bae5ef'], + }), + ('XML::SAX', '1.02', { + 'source_tmpl': 'XML-SAX-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['4506c387043aa6a77b455f00f57409f3720aa7e553495ab2535263b4ed1ea12a'], + }), + ('Test::LeakTrace', '0.17', { + 'source_tmpl': 'Test-LeakTrace-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEEJO'], + 'checksums': ['777d64d2938f5ea586300eef97ef03eacb43d4c1853c9c3b1091eb3311467970'], + }), + ('Sub::Uplevel', '0.2800', { + 'source_tmpl': 'Sub-Uplevel-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['b4f3f63b80f680a421332d8851ddbe5a8e72fcaa74d5d1d98f3c8cc4a3ece293'], + }), + ('Test::Exception', '0.43', { + 'source_tmpl': 'Test-Exception-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['156b13f07764f766d8b45a43728f2439af81a3512625438deab783b7883eb533'], + }), + ('Text::Aligner', '0.16', { + 'source_tmpl': 'Text-Aligner-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['5c857dbce586f57fa3d7c4ebd320023ab3b2963b2049428ae01bd3bc4f215725'], + }), + ('Text::Table', '1.135', { + 'source_tmpl': 'Text-Table-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['fca3c16e83127f7c44dde3d3f7e3c73ea50d109a1054445de8082fea794ca5d2'], + }), + ('MIME::Types', '2.26', { + 'source_tmpl': 'MIME-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['bc738483cb4cdb47d61e85fe9304fa929aa9ab927e3171ec2ba2ab1cd7cefdff'], + }), + ('Cwd::Guard', '0.05', { + 'source_tmpl': 'Cwd-Guard-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KAZEBURO'], + 'checksums': ['7afc7ca2b9502e440241938ad97a3e7ebd550180ebd6142e1db394186b268e77'], + }), + ('Capture::Tiny', '0.48', { + 'source_tmpl': 'Capture-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['6c23113e87bad393308c90a207013e505f659274736638d8c79bac9c67cc3e19'], + }), + ('File::Copy::Recursive::Reduced', '0.008', { + 'source_tmpl': 'File-Copy-Recursive-Reduced-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['462bd66bf55e74b78f29ebdc9626af622d4f0115b5191b03167e82164db98f5a'], + }), + ('Module::Build::XSUtil', '0.19', { + 'source_tmpl': 'Module-Build-XSUtil-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HI/HIDEAKIO'], + 'checksums': ['9063b3c346edeb422807ffe49ffb23038c4f900d4a77b845ce4b53d97bf29400'], + }), + ('Tie::Function', '0.02', { + 'source_tmpl': 'Tie-Function-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAVIDNICO/handy_tied_functions'], + 'checksums': ['0b1617af218dfab911ba0fbd72210529a246efe140332da77fe3e03d11000117'], + }), + ('Number::Format', '1.76', { + 'source_tmpl': 'Number-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['0e0060eb363635a885706c6a26f5fcaafeae759f7b2acae49dda70e195dd44d6'], + }), + ('Template::Plugin::Number::Format', '1.06', { + 'source_tmpl': 'Template-Plugin-Number-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DARREN'], + 'checksums': ['0865836a1bcbc34d4a0ee34b5ccc14d7b511f1fd300bf390f002dac349539843'], + }), + ('HTML::Tagset', '3.24', { + 'source_tmpl': 'HTML-Tagset-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PETDANCE'], + 'checksums': ['eb89e145a608ed1f8f141a57472ee5f69e67592a432dcd2e8b1dbb445f2b230b'], + }), + ('MIME::Base32', '1.303', { + 'source_tmpl': 'MIME-Base32-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['ab21fa99130e33a0aff6cdb596f647e5e565d207d634ba2ef06bdbef50424e99'], + }), + ('URI', '5.31', { + 'source_tmpl': 'URI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['b9c4d58b2614b8611ae03a95a6d60ed996f4b311ef3cd5a937b92f1825ecc564'], + }), + ('B::COW', '0.007', { + 'source_tmpl': 'B-COW-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['1290daf227e8b09889a31cf182e29106f1cf9f1a4e9bf7752f9de92ed1158b44'], + }), + ('Clone', '0.47', { + 'source_tmpl': 'Clone-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['4c2c0cb9a483efbf970cb1a75b2ca75b0e18cb84bcb5c09624f86e26b09c211d'], + }), + ('IO::HTML', '1.004', { + 'source_tmpl': 'IO-HTML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CJ/CJM'], + 'checksums': ['c87b2df59463bbf2c39596773dfb5c03bde0f7e1051af339f963f58c1cbd8bf5'], + }), + ('LWP::MediaTypes', '6.04', { + 'source_tmpl': 'LWP-MediaTypes-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['8f1bca12dab16a1c2a7c03a49c5e58cce41a6fec9519f0aadfba8dad997919d9'], + }), + ('HTTP::Message', '7.00', { + 'source_tmpl': 'HTTP-Message-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['5afa95eb6ed1c632e81656201a2738e2c1bc6cbfae2f6d82728e2bb0b519c1dc'], + }), + ('HTML::Parser', '3.83', { + 'source_tmpl': 'HTML-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['7278ce9791256132b26a71a5719451844704bb9674b58302c3486df43584f8c0'], + }), + ('Date::Handler', '1.2', { + 'source_tmpl': 'Date-Handler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BB/BBEAUSEJ'], + 'checksums': ['c36fd2b68d48c2e17417bf2873c78820f3ae02460fdf5976b8eeab887d59e16c'], + }), + ('XML::Parser', '2.47', { + 'source_tmpl': 'XML-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['ad4aae643ec784f489b956abe952432871a622d4e2b5c619e8855accbfc4d1d8'], + }), + ('Data::Grove', '0.08', { + 'source_tmpl': 'libxml-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KM/KMACLEOD'], + 'checksums': ['4571059b7b5d48b7ce52b01389e95d798bf5cf2020523c153ff27b498153c9cb'], + }), + ('Class::ISA', '0.36', { + 'source_tmpl': 'Class-ISA-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['8816f34e9a38e849a10df756030dccf9fe061a196c11ac3faafd7113c929b964'], + }), + ('DBIx::ContextualFetch', '1.03', { + 'source_tmpl': 'DBIx-ContextualFetch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TM/TMTM'], + 'checksums': ['85e2f805bfc81cd738c294316b27a515397036f397a0ff1c6c8d754c38530306'], + }), + ('Ima::DBI', '0.35', { + 'source_tmpl': 'Ima-DBI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERRIN'], + 'checksums': ['8b481ceedbf0ae4a83effb80581550008bfdd3885ef01145e3733c7097c00a08'], + }), + ('Tie::IxHash', '1.23', { + 'source_tmpl': 'Tie-IxHash-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHORNY'], + 'checksums': ['fabb0b8c97e67c9b34b6cc18ed66f6c5e01c55b257dcf007555e0b027d4caf56'], + }), + ('Parse::RecDescent', '1.967015', { + 'source_tmpl': 'Parse-RecDescent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JT/JTBRAUN'], + 'checksums': ['1943336a4cb54f1788a733f0827c0c55db4310d5eae15e542639c9dd85656e37'], + }), + ('GO', '0.04', { + 'runtest': False, # Problem with indirect dependency DBD::Pg + 'source_tmpl': 'go-db-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SJ/SJCARBON'], + 'checksums': ['8eb73d591ad767e7cf26def40cffd84833875f1ad51e456960b9ed73dc23641b'], + }), + ('Class::Trigger', '0.15', { + 'source_tmpl': 'Class-Trigger-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['b7a878d44dea67d64df2ca18020d9d868a95596debd16f1a264874209332b07f'], + }), + ('Class::Accessor', '0.51', { + 'source_tmpl': 'Class-Accessor-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['bf12a3e5de5a2c6e8a447b364f4f5a050bf74624c56e315022ae7992ff2f411c'], + }), + ('UNIVERSAL::moniker', '0.08', { + 'source_tmpl': 'UNIVERSAL-moniker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['94ce27a546cd57cb52e080a8f2533a7cc2350028388582485bd1039a37871f9c'], + }), + ('Class::DBI', 'v3.0.17', { + 'source_tmpl': 'Class-DBI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TM/TMTM'], + 'checksums': ['541354fe361c56850cb11261f6ca089a14573fa764792447444ff736ae626206'], + }), + ('Class::DBI::SQLite', '0.11', { + 'source_tmpl': 'Class-DBI-SQLite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['c4661b00afb7e53c97ac36e13f34dde43c1a93540a2f4ff97e6182b0c731e4e7'], + }), + ('File::Slurper', '0.014', { + 'source_tmpl': 'File-Slurper-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['d5a36487339888c3cd758e648160ee1d70eb4153cacbaff57846dbcefb344b0c'], + }), + ('Pod::POM', '2.01', { + 'source_tmpl': 'Pod-POM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['1b50fba9bbdde3ead192beeba0eaddd0c614e3afb1743fa6fff805f57c56f7f4'], + }), + ('Math::Round', '0.08', { + 'source_tmpl': 'Math-Round-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['7b4d2775ad3b859a5fd61f7f3fc5cfba42b1a10df086d2ed15a0ae712c8fd402'], + }), + ('Algorithm::Diff', '1.201', { + 'source_tmpl': 'Algorithm-Diff-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['0022da5982645d9ef0207f3eb9ef63e70e9713ed2340ed7b3850779b0d842a7d'], + }), + ('Text::Diff', '1.45', { + 'source_tmpl': 'Text-Diff-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['e8baa07b1b3f53e00af3636898bbf73aec9a0ff38f94536ede1dbe96ef086f04'], + }), + ('Log::Message', '0.08', { + 'source_tmpl': 'Log-Message-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['bd697dd62aaf26d118e9f0a0813429deb1c544e4501559879b61fcbdfe99fe46'], + }), + ('Log::Message::Simple', '0.10', { + 'source_tmpl': 'Log-Message-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['aa12d1a4c0ac260b94d448fa01feba242a8a85cb6cbfdc66432e3b5b468add96'], + }), + ('Net::SSLeay', '1.94', { + 'preconfigopts': "export OPENSSL_PREFIX=$EBROOTOPENSSL && ", + 'source_tmpl': 'Net-SSLeay-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHRISN'], + 'checksums': ['9d7be8a56d1bedda05c425306cc504ba134307e0c09bda4a788c98744ebcd95d'], + }), + ('IO::Socket::SSL', '2.089', { + 'source_tmpl': 'IO-Socket-SSL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SU/SULLR'], + 'checksums': ['f683112c1642967e9149f51ad553eccd017833b2f22eb23a9055609d2e3a14d1'], + }), + ('Fennec::Lite', '0.004', { + 'source_tmpl': 'Fennec-Lite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['dce28e3932762c2ff92aa52d90405c06e898e81cb7b164ccae8966ae77f1dcab'], + }), + ('Meta::Builder', '0.004', { + 'source_tmpl': 'Meta-Builder-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['acb499aa7206eb9db21eb85357a74521bfe3bdae4a6416d50a7c75b939cf56fe'], + }), + ('Exporter::Declare', '0.114', { + 'source_tmpl': 'Exporter-Declare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['4bd70d6ca76f6f6ba7e4c618d4ac93b8593a58f1233ccbe18b10f5f204f1d4e4'], + }), + ('Mouse', 'v2.5.11', { + 'source_tmpl': 'Mouse-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SK/SKAJI'], + 'checksums': ['e2a0d0930190c21a444b960793aa2e369ef28a1dd0b8f34829795f86a1915956'], + }), + ('Test::Version', '2.09', { + 'source_tmpl': 'Test-Version-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['9ce1dd2897a5f30e1b7f8966ec66f57d8d8f280f605f28c7ca221fa79aca38e0'], + }), + ('Class::Method::Modifiers', '2.15', { + 'source_tmpl': 'Class-Method-Modifiers-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['65cd85bfe475d066e9186f7a8cc636070985b30b0ebb1cde8681cf062c2e15fc'], + }), + ('Moo', '2.005005', { + 'source_tmpl': 'Moo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['fb5a2952649faed07373f220b78004a9c6aba387739133740c1770e9b1f4b108'], + }), + ('Data::Dumper::Concise', '2.023', { + 'source_tmpl': 'Data-Dumper-Concise-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['a6c22f113caf31137590def1b7028a7e718eface3228272d0672c25e035d5853'], + }), + ('DBIx::Admin::CreateTable', '2.11', { + 'source_tmpl': 'DBIx-Admin-CreateTable-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['07b1427fbc15455657ca57217749004162a50c04abb243022a5b479e4b2a5912'], + }), + ('Config::Tiny', '2.30', { + 'source_tmpl': 'Config-Tiny-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['b2f7345619b3b8e636dd39ea010731c9dc2bfb8f022bcbd86ae6ad17866e110d'], + }), + ('File::Slurp', '9999.32', { + 'source_tmpl': 'File-Slurp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['4c3c21992a9d42be3a79dd74a3c83d27d38057269d65509a2f555ea0fb2bc5b0'], + }), + ('DBIx::Admin::DSNManager', '2.02', { + 'source_tmpl': 'DBIx-Admin-DSNManager-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['c25511f42328ccb606a0cd78413a74181c87fb37a382d38aa3fad106b540adcb'], + }), + ('Lingua::EN::PluralToSingular', '0.21', { + 'source_tmpl': 'Lingua-EN-PluralToSingular-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BK/BKB'], + 'checksums': ['f8a8b7de28c25c96190d7f48c90b5ad9b9bf517f3835c77641f0e8fa546c0d1d'], + }), + ('Test::Warn', '0.37', { + 'source_tmpl': 'Test-Warn-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BIGJ'], + 'checksums': ['98ca32e7f2f5ea89b8bfb9a0609977f3d153e242e2e51705126cb954f1a06b57'], + }), + ('Test::Differences', '0.71', { + 'runtest': False, # Cryptic test failing + 'source_tmpl': 'Test-Differences-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL'], + 'checksums': ['cac16a56cd843b0809e5b49199d60d75a8dbad7ca9a08380dbf3f5cc3aaa38d9'], + }), + ('Test::Most', '0.38', { + 'source_tmpl': 'Test-Most-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OV/OVID'], + 'checksums': ['089eb894f7bace4c37c6334e0e290eb20338ee10223af0c82cbe7281c78382df'], + }), + ('Const::Fast', '0.014', { + 'source_tmpl': 'Const-Fast-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['f805953a08c57846a16a4d85d7b766398afaf7c36c1465fcb1dea09e5fa394db'], + }), + ('Ref::Util', '0.204', { + 'source_tmpl': 'Ref-Util-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AR/ARC'], + 'checksums': ['415fa73dbacf44f3d5d79c14888cc994562720ab468e6f71f91cd1f769f105e1'], + }), + ('Class::XSAccessor', '1.19', { + 'source_tmpl': 'Class-XSAccessor-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['99c56b395f1239af19901f2feeb125d9ecb4e351a0d80daa9529211a4700a6f2'], + }), + ('Hash::Objectify', '0.008', { + 'source_tmpl': 'Hash-Objectify-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['236d5829cdebf3ba648d34e1295cd9099a20506d8d0284668e617e0058cebeed'], + }), + ('Const::Exporter', 'v1.2.3', { + 'source_tmpl': 'Const-Exporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RR/RRWO'], + 'checksums': ['53e59b4764aebcf79bbed533ab5a6107339fe516b7f2f607b1bae8dd9dcf7015'], + }), + ('HTML::Entities::Interpolate', '1.10', { + 'source_tmpl': 'HTML-Entities-Interpolate-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['f15a9df92c282419f7010964aca1ada844ddfae7afc735cd2ba1bb20883e955c'], + }), + ('List::SomeUtils', '0.59', { + 'source_tmpl': 'List-SomeUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['fab30372e4c67bf5a46062da38d1d0c8756279feada866eb439fa29571a2dc7b'], + }), + ('List::UtilsBy', '0.12', { + 'source_tmpl': 'List-UtilsBy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['fff1281fd469fe982b1a58044becfd970f313bff3a26e1c7b2b3f4c0a5ed71e0'], + }), + ('List::AllUtils', '0.19', { + 'source_tmpl': 'List-AllUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['30a8146ab21a7787b8c56d5829cf9a7f2b15276d3b3fca07336ac38d3002ffbc'], + }), + ('Unicode::EastAsianWidth', '12.0', { + 'source_tmpl': 'Unicode-EastAsianWidth-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AU/AUDREYT'], + 'checksums': ['2a5bfd926c4fe5f77e6137da2c31ac2545282ae5fec6e9af0fdd403555a90ff4'], + }), + ('String::TtyLength', '0.03', { + 'source_tmpl': 'String-TtyLength-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['4fedaf72028511d80eb6afba523993e9aaa245d7af558345d5d4ed46e2e82ce1'], + }), + ('Text::Table::Manifold', '1.03', { + 'source_tmpl': 'Text-Table-Manifold-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['e680713169557b0768952fa6932f25576a61dccfb96bd9036dcf6fcefb35e09e'], + }), + ('DBIx::Admin::TableInfo', '3.04', { + 'source_tmpl': 'DBIx-Admin-TableInfo-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['b9625992683b97378bea0947773f50e3c9f81974048b84f4c3422cae7e6082f4'], + }), + ('Net::HTTP', '6.23', { + 'runtest': False, # Fragile tests + 'source_tmpl': 'Net-HTTP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['0d65c09dd6c8589b2ae1118174d3c1a61703b6ecfc14a3442a8c74af65e0c94e'], + }), + ('Clone::Choose', '0.010', { + 'source_tmpl': 'Clone-Choose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HE/HERMES'], + 'checksums': ['5623481f58cee8edb96cd202aad0df5622d427e5f748b253851dfd62e5123632'], + }), + ('Hash::Merge', '0.302', { + 'source_tmpl': 'Hash-Merge-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HE/HERMES'], + 'checksums': ['ae0522f76539608b61dde14670e79677e0f391036832f70a21f31adde2538644'], + }), + ('SQL::Abstract', '2.000001', { + 'source_tmpl': 'SQL-Abstract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSTROUT'], + 'checksums': ['35a642662c349420d44be6e0ef7d8765ea743eb12ad14399aa3a232bb94e6e9a'], + }), + ('HTML::Form', '6.12', { + 'source_tmpl': 'HTML-Form-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['2ced87d0878afa007d22c41927f0e8da63844608f20881f645f364dc32cdce6f'], + }), + ('IPC::Run', '20231003.0', { + 'source_tmpl': 'IPC-Run-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eb25bbdf5913d291797ef1bfe998f15130b455d3ed02aacde6856f0b25e4fe57'], + }), + ('File::Remove', '1.61', { + 'source_tmpl': 'File-Remove-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['fd857f585908fc503461b9e48b3c8594e6535766bc14beb17c90ba58d5dc4975'], + }), + ('YAML::Tiny', '1.74', { + 'source_tmpl': 'YAML-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['7b38ca9f5d3ce24230a6b8bdc1f47f5b2db348e7f7f9666c26f5955636e33d6c'], + }), + ('Module::Install', '1.21', { + 'source_tmpl': 'Module-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['fbf91007f30565f3920e106055fd0d4287981d5e7dad8b35323ce4b733f15a7b'], + }), + ('Test::ClassAPI', '1.07', { + 'source_tmpl': 'Test-ClassAPI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['30e9dbfc5e0cc2ee14eae8f3465a908a710daecbd0a3ebdb2888fc4504fa18aa'], + }), + ('HTTP::Tiny', '0.090', { + 'source_tmpl': 'HTTP-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['faaf60b3f9baf4b8f703632aba223648aaa58b0107e64ca515ed00247978d83e'], + }), + ('Sub::Install', '0.929', { + 'source_tmpl': 'Sub-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['80b1e281d8cd3b2b31dac711f5c8a1657a87cd80bbe69af3924bcbeb4e5db077'], + }), + ('Package::DeprecationManager', '0.18', { + 'source_tmpl': 'Package-DeprecationManager-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['b68d3f0ced55b7615fddbb6029b89f92a34fe0dd8c6fd6bceffc157d56834fe8'], + }), + ('Digest::SHA1', '2.13', { + 'source_tmpl': 'Digest-SHA1-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['68c1dac2187421f0eb7abf71452a06f190181b8fc4b28ededf5b90296fb943cc'], + }), + ('Date::Language', '2.33', { + 'source_tmpl': 'TimeDate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['c0b69c4b039de6f501b0d9f13ec58c86b040c1f7e9b27ef249651c143d605eb2'], + }), + ('version', '0.9933', { + 'source_tmpl': 'version-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['dc07d9388ca3d3f67146312904bcdb35fe416bb30056158f80df3281a94fae58'], + }), + ('XML::Bare', '0.53', { + 'source_tmpl': 'XML-Bare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CO/CODECHILD'], + 'patches': ['XML-Bare-0.53_c99.patch'], + 'checksums': [ + {'XML-Bare-0.53.tar.gz': '865e198e98d904be1683ef5a53a4948f02dabdacde59fc554a082ffbcc5baefd'}, + {'XML-Bare-0.53_c99.patch': + 'ce62ce2fb65b495193a969df987facb280669dfe5c5013441f1e7fc59614a713'}, + ], + }), + ('Dist::CheckConflicts', '0.11', { + 'source_tmpl': 'Dist-CheckConflicts-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DO/DOY'], + 'checksums': ['ea844b9686c94d666d9d444321d764490b2cde2f985c4165b4c2c77665caedc4'], + }), + ('Sub::Name', '0.27', { + 'source_tmpl': 'Sub-Name-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ecf36fba1c47ca93e1daa394968ed39c4186867459d9cd173c421e2b972043e8'], + }), + ('Time::Piece', '1.3401', { + 'source_tmpl': 'Time-Piece-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ES/ESAYM'], + 'checksums': ['4b55b7bb0eab45cf239a54dfead277dfa06121a43e63b3fce0853aecfdb04c27'], + }), + ('Digest::HMAC', '1.05', { + 'source_tmpl': 'Digest-HMAC-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AR/ARODLAND'], + 'checksums': ['215cb59cba610745cfb2d4b3f8ef756d590e57e3ad7986a992e87c4969fcdc7a'], + }), + ('HTTP::Negotiate', '6.01', { + 'source_tmpl': 'HTTP-Negotiate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['1c729c1ea63100e878405cda7d66f9adfd3ed4f1d6cacaca0ee9152df728e016'], + }), + ('Email::Date::Format', '1.008', { + 'source_tmpl': 'Email-Date-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['432b7c83ff88749af128003f5257c573aec1a463418db90ed22843cbbc258b4f'], + }), + ('MIME::Lite', '3.033', { + 'source_tmpl': 'MIME-Lite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['78a279f1d2e242551c347ef97a13fc675766602cb84c2a80c569400f4f368bab'], + }), + ('Crypt::Rijndael', '1.16', { + 'source_tmpl': 'Crypt-Rijndael-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['6540085e3804b82a6f0752c1122cf78cadd221990136dd6fd4c097d056c84d40'], + }), + ('B::Lint', '1.20', { + 'runtest': False, + 'source_tmpl': 'B-Lint-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['dc49408964fd8b7963859c92e013f0b9f92f74be5a7c2a78e3996279827c10b3'], + }), + ('Canary::Stability', '2013', { + 'source_tmpl': 'Canary-Stability-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['a5c91c62cf95fcb868f60eab5c832908f6905221013fea2bce3ff57046d7b6ea'], + }), + ('AnyEvent', '7.17', { + 'source_tmpl': 'AnyEvent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['50beea689c098fe4aaeb83806c40b9fe7f946d5769acf99f849f099091a4b985'], + }), + ('Object::Accessor', '0.48', { + 'source_tmpl': 'Object-Accessor-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['76cb824a27b6b4e560409fcf6fd5b3bfbbd38b72f1f3d37ed0b54bd9c0baeade'], + }), + ('Data::UUID', '1.227', { + 'source_tmpl': 'Data-UUID-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GT/GTERMARS'], + 'checksums': ['95bda7276265f57bc48ffdeddec5ef28cd6f765e3a183757fa5f09f0ce6b98ac'], + }), + ('Test::Pod', '1.52', { + 'source_tmpl': 'Test-Pod-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['60a8dbcc60168bf1daa5cc2350236df9343e9878f4ab9830970a5dde6fe8e5fc'], + }), + ('AppConfig', '1.71', { + 'source_tmpl': 'AppConfig-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['1177027025ecb09ee64d9f9f255615c04db5e14f7536c344af632032eb887b0f'], + }), + ('Net::SMTP::SSL', '1.04', { + 'source_tmpl': 'Net-SMTP-SSL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7b29c45add19d3d5084b751f7ba89a8e40479a446ce21cfd9cc741e558332a00'], + }), + ('XML::Tiny', '2.07', { + 'source_tmpl': 'XML-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL'], + 'checksums': ['ce39fcb53e0fe9f1cbcd86ddf152e1db48566266b70ec0769ef364eeabdd8941'], + }), + ('HTML::Tree', '5.07', { + 'source_tmpl': 'HTML-Tree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KE/KENTNL'], + 'checksums': ['f0374db84731c204b86c1d5b90975fef0d30a86bd9def919343e554e31a9dbbf'], + }), + ('Devel::GlobalDestruction', '0.14', { + 'source_tmpl': 'Devel-GlobalDestruction-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['34b8a5f29991311468fe6913cadaba75fd5d2b0b3ee3bb41fe5b53efab9154ab'], + }), + ('WWW::RobotRules', '6.02', { + 'source_tmpl': 'WWW-RobotRules-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['46b502e7a288d559429891eeb5d979461dd3ecc6a5c491ead85d165b6e03a51e'], + }), + ('IO::Tty', '1.20', { + 'source_tmpl': 'IO-Tty-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['b15309fc85623893289cb9b2b88dfa9ed1e69156b75f29938553a45be6d730af'], + }), + ('Expect', '1.38', { + 'source_tmpl': 'Expect-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JA/JACOBY'], + 'checksums': ['7b1048335f327958903867cea079dc072ea07f4eafae1b40c2e6f25db21686c0'], + }), + ('Term::UI', '0.50', { + 'source_tmpl': 'Term-UI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['60bfdd6d4c158b88d370133fc65b20485a36a45b12d906000b81c78ca524163d'], + }), + ('Net::SNMP', 'v6.0.1', { + 'source_tmpl': 'Net-SNMP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DT/DTOWN'], + 'checksums': ['14c37bc1cbb3f3cdc7d6c13e0f27a859f14cdcfd5ea54a0467a88bc259b0b741'], + }), + ('XML::Filter::BufferText', '1.01', { + 'source_tmpl': 'XML-Filter-BufferText-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RB/RBERJON'], + 'checksums': ['8fd2126d3beec554df852919f4739e689202cbba6a17506e9b66ea165841a75c'], + }), + ('XML::SAX::Writer', '0.57', { + 'source_tmpl': 'XML-SAX-Writer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN'], + 'checksums': ['3d61d07ef43b0126f5b4de4f415a256fa859fa88dc4fdabaad70b7be7c682cf0'], + }), + ('Statistics::Descriptive', '3.0801', { + 'source_tmpl': 'Statistics-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['047b70a63fdcaa916168e0ff2d58e155e0ebbc68ed4ccbd73a7213dca3028f65'], + }), + ('Data::OptList', '0.114', { + 'source_tmpl': 'Data-OptList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['9fd1093b917a21fb79ae1607db53d113b4e0ad8fe0ae776cb077a7e50044fdf3'], + }), + ('Class::Load', '0.25', { + 'source_tmpl': 'Class-Load-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['2a48fa779b5297e56156380e8b32637c6c58decb4f4a7f3c7350523e11275f8f'], + }), + ('HTTP::Daemon', '6.16', { + 'source_tmpl': 'HTTP-Daemon-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['b38d092725e6fa4e0c4dc2a47e157070491bafa0dbe16c78a358e806aa7e173d'], + }), + ('Test::RequiresInternet', '0.05', { + 'source_tmpl': 'Test-RequiresInternet-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MALLEN'], + 'checksums': ['bba7b32a1cc0d58ce2ec20b200a7347c69631641e8cae8ff4567ad24ef1e833e'], + }), + ('HTTP::Cookies', '6.11', { + 'source_tmpl': 'HTTP-Cookies-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['8c9a541a4a39f6c0c7e3d0b700b05dfdb830bd490a1b1942a7dedd1b50d9a8c8'], + }), + ('HTTP::CookieJar', '0.014', { + 'source_tmpl': 'HTTP-CookieJar-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['7094ea5c91f536d263b85e83ab4e9a963e11c4408ce08ecae553fa9c0cc47e73'], + }), + ('LWP::Simple', '6.77', { + 'source_tmpl': 'libwww-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['94a907d6b3ea8d966ef43deffd4fa31f5500142b4c00489bfd403860a5f060e4'], + }), + ('Time::Piece::MySQL', '0.06', { + 'source_tmpl': 'Time-Piece-MySQL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['319601feec17fae344988a5ee91cfc6a0bcfe742af77dba254724c3268b2a60f'], + }), + ('Package::Stash::XS', '0.30', { + 'source_tmpl': 'Package-Stash-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['26bad65c1959c57379b3e139dc776fbec5f702906617ef27cdc293ddf1239231'], + }), + ('Want', '0.29', { + 'source_tmpl': 'Want-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RO/ROBIN'], + 'checksums': ['b4e4740b8d4cb783591273c636bd68304892e28d89e88abf9273b1de17f552f7'], + }), + ('Set::Array', '0.30', { + 'source_tmpl': 'Set-Array-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['d9f024c8e3637feccdebcf6479b6754b6c92f1209f567feaf0c23818af31ee3c'], + }), + ('boolean', '0.46', { + 'source_tmpl': 'boolean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['95c088085c3e83bf680fe6ce16d8264ec26310490f7d1680e416ea7a118f156a'], + }), + ('Test::NoWarnings', '1.06', { + 'source_tmpl': 'Test-NoWarnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['c2dc51143b7eb63231210e27df20d2c8393772e0a333547ec8b7a205ed62f737'], + }), + ('Crypt::DES', '2.07', { + 'source_tmpl': 'Crypt-DES-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DP/DPARIS'], + 'patches': ['Crypt-DES-2.07_expose-perl_des_expand_key-and-perl_des_crypt.patch'], + 'checksums': [ + {'Crypt-DES-2.07.tar.gz': '2db1ebb5837b4cb20051c0ee5b733b4453e3137df0a92306034c867621edd7e7'}, + {'Crypt-DES-2.07_expose-perl_des_expand_key-and-perl_des_crypt.patch': + '1c8346121049b8dffd06a34d98b0e0484db2b0f2ab66655531009b53b42b03a1'}, + ], + }), + ('XML::XPath', '1.48', { + 'source_tmpl': 'XML-XPath-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['7bc75be36b239e5b2e700a9570d2b53b43093d467f2abe6a743f9ff9093790cd'], + }), + ('JSON', '4.10', { + 'source_tmpl': 'JSON-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['df8b5143d9a7de99c47b55f1a170bd1f69f711935c186a6dc0ab56dd05758e35'], + }), + ('Sub::Exporter', '0.991', { + 'source_tmpl': 'Sub-Exporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['2a95695d35c5d0d5373a7e145c96b9b016113b74e94116835ac05450cae4d445'], + }), + ('Class::Load::XS', '0.10', { + 'source_tmpl': 'Class-Load-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['5bc22cf536ebfd2564c5bdaf42f0d8a4cee3d1930fc8b44b7d4a42038622add1'], + }), + ('Data::Types', '0.17', { + 'source_tmpl': 'Data-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['860751feb79b7dfc1af71c4b7fe920220ec6d31c4ab9402b8f178f7f4b8293c1'], + }), + ('Set::IntSpan::Fast', '1.15', { + 'source_tmpl': 'Set-IntSpan-Fast-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AN/ANDYA'], + 'checksums': ['cfb1768c24f55208e87405b17f537f0f303fa141891d0b22d509a941aa57e24e'], + }), + ('Text::Iconv', '1.7', { + 'source_tmpl': 'Text-Iconv-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MP/MPIOTR'], + 'checksums': ['5b80b7d5e709d34393bcba88971864a17b44a5bf0f9e4bcee383d029e7d2d5c3'], + }), + ('Text::Balanced', '2.06', { + 'source_tmpl': 'Text-Balanced-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['773e0f0f21c0cb2cf664cee6ba28ff70259babcc892f9b650f9cbda00be092ad'], + }), + ('strictures', '2.000006', { + 'source_tmpl': 'strictures-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['09d57974a6d1b2380c802870fed471108f51170da81458e2751859f2714f8d57'], + }), + ('Switch', '2.17', { + 'source_tmpl': 'Switch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHORNY'], + 'checksums': ['31354975140fe6235ac130a109496491ad33dd42f9c62189e23f49f75f936d75'], + }), + ('File::Which', '1.27', { + 'source_tmpl': 'File-Which-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['3201f1a60e3f16484082e6045c896842261fc345de9fb2e620fd2a2c7af3a93a'], + }), + ('Error', '0.17029', { + 'source_tmpl': 'Error-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['1a23f7913032aed6d4b68321373a3899ca66590f4727391a091ec19c95bf7adc'], + }), + ('Mock::Quick', '1.111', { + 'source_tmpl': 'Mock-Quick-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['ff786008bf8c022064ececd3b7ed89c76b35e8d1eac6cf472a9f51771c1c9f2c'], + }), + ('Text::CSV', '2.04', { + 'source_tmpl': 'Text-CSV-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['4f80122e4ea0b05079cad493e386564030f18c8d7b1f9af561df86985a653fe3'], + }), + ('Test::Output', '1.034', { + 'source_tmpl': 'Test-Output-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['cd42e2801c0d2b482d18c9fb4b06c757054818bcbb2824e5dfbf33ad7a3d69a0'], + }), + ('File::CheckTree', '4.42', { + 'source_tmpl': 'File-CheckTree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['66fb417f8ff8a5e5b7ea25606156e70e204861c59fa8c3831925b4dd3f155f8a'], + }), + ('Math::VecStat', '0.08', { + 'source_tmpl': 'Math-VecStat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AS/ASPINELLI'], + 'checksums': ['409a8e0e4b1025c8e80f628f65a9778aa77ab285161406ca4a6c097b13656d0d'], + }), + ('Pod::Parser', '1.67', { + 'configopts': 'INSTALLDIRS=site', + 'source_tmpl': 'Pod-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MAREKR'], + 'checksums': ['5deccbf55d750ce65588cd211c1a03fa1ef3aaa15d1ac2b8d85383a42c1427ea'], + }), + ('Pod::LaTeX', '0.61', { + 'source_tmpl': 'Pod-LaTeX-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJENNESS'], + 'checksums': ['15a840ea1c8a76cd3c865fbbf2fec33b03615c0daa50f9c800c54e0cf0659d46'], + }), + ('XML::Twig', '3.52', { + 'source_tmpl': 'XML-Twig-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIROD'], + 'checksums': ['fef75826c24f2b877d0a0d2645212fc4fb9756ed4d2711614ac15c497e8680ad'], + }), + ('XML::Simple', '2.25', { + 'source_tmpl': 'XML-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['531fddaebea2416743eb5c4fdfab028f502123d9a220405a4100e68fc480dbf8'], + }), + ('Pod::Plainer', '1.04', { + 'source_tmpl': 'Pod-Plainer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RM/RMBARKER'], + 'checksums': ['1bbfbf7d1d4871e5a83bab2137e22d089078206815190eb1d5c1260a3499456f'], + }), + ('Data::Section::Simple', '0.07', { + 'source_tmpl': 'Data-Section-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['0b3035ffdb909aa1f7ded6b608fa9d894421c82c097d51e7171170d67579a9cb'], + }), + ('File::HomeDir', '1.006', { + 'source_tmpl': 'File-HomeDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['593737c62df0f6dab5d4122e0b4476417945bb6262c33eedc009665ef1548852'], + }), + ('Authen::SASL', '2.1700', { + 'source_tmpl': 'Authen-SASL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EH/EHUELS'], + 'checksums': ['b86d5a576b8d387aee24f39f47a54afd14bb66b09003db5065001f1de03a8ece'], + }), + ('Import::Into', '1.002005', { + 'source_tmpl': 'Import-Into-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['bd9e77a3fb662b40b43b18d3280cd352edf9fad8d94283e518181cc1ce9f0567'], + }), + ('DateTime::Tiny', '1.07', { + 'runtest': False, + 'source_tmpl': 'DateTime-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['83568a22838cb518fbeb9e060460ec7f59d5a0b0a1cc06562954c3674d7cf7e4'], + }), + ('Text::Format', '0.63', { + 'source_tmpl': 'Text-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['fc64654f7d8da7071760ea0116e112b6d661b0a7bc3188dff1b2d52fb6a663cb'], + }), + ('Devel::CheckCompiler', '0.07', { + 'source_tmpl': 'Devel-CheckCompiler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SY/SYOHEX'], + 'checksums': ['768b7697b4b8d4d372c7507b65e9dd26aa4223f7100183bbb4d3af46d43869b5'], + }), + ('Log::Handler', '0.90', { + 'source_tmpl': 'Log-Handler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BL/BLOONIX'], + 'checksums': ['3a5c80e7128454770f83acab8cbd3e70e5ec3d59a61dc32792a178f0b31bf74d'], + }), + ('Term::ReadKey', '2.38', { + 'source_tmpl': 'TermReadKey-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JS/JSTOWE'], + 'checksums': ['5a645878dc570ac33661581fbb090ff24ebce17d43ea53fd22e105a856a47290'], + }), + ('Set::IntSpan', '1.19', { + 'source_tmpl': 'Set-IntSpan-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SW/SWMCD'], + 'checksums': ['11b7549b13ec5d87cc695dd4c777cd02983dd5fe9866012877fb530f48b3dfd0'], + }), + ('Module::Runtime::Conflicts', '0.003', { + 'source_tmpl': 'Module-Runtime-Conflicts-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['707cdc75038c70fe91779b888ac050f128565d3967ba96680e1b1c7cc9733875'], + }), + ('File::pushd', '1.016', { + 'source_tmpl': 'File-pushd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['d73a7f09442983b098260df3df7a832a5f660773a313ca273fa8b56665f97cdc'], + }), + ('Test::CleanNamespaces', '0.24', { + 'source_tmpl': 'Test-CleanNamespaces-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['338d5569e8e89a654935f843ec0bc84aaa486fe8dd1898fb9cab3eccecd5327a'], + }), + ('Devel::OverloadInfo', '0.007', { + 'source_tmpl': 'Devel-OverloadInfo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IL/ILMARI'], + 'checksums': ['21a184163b90f91f06ffc7f5de0b968356546ae9b400a9d75c573c958c246222'], + }), + ('Moose', '2.2207', { + 'source_tmpl': 'Moose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['7c2daddc49754ded93f65b8ce9e3ac9b6d11ab27d111ec77f95a8528cf4ac409'], + }), + ('Algorithm::Dependency', '1.112', { + 'source_tmpl': 'Algorithm-Dependency-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['7e0fb7c39f56a2dccf9d0295c82f3031ee116e807f6a12a438fa4dd41b0ec187'], + }), + ('Font::TTF', '1.06', { + 'source_tmpl': 'Font-TTF-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BH/BHALLISSY'], + 'checksums': ['4b697d444259759ea02d2c442c9bffe5ffe14c9214084a01f743693a944cc293'], + }), + ('IPC::Run3', '0.049', { + 'source_tmpl': 'IPC-Run3-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['9d048ae7b9ae63871bae976ba01e081d887392d904e5d48b04e22d35ed22011a'], + }), + ('SQL::Statement', '1.414', { + 'source_tmpl': 'SQL-Statement-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['dde8bdcfa6a136eedda06519ba0f3efaec085c39db0df9c472dc0ec6cd781a49'], + }), + ('Package::Constants', '0.06', { + 'source_tmpl': 'Package-Constants-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['0b58be78706ccc4e4bd9bbad41767470427fd7b2cfad749489de101f85bc5df5'], + }), + ('CPANPLUS', '0.9914', { + 'source_tmpl': 'CPANPLUS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['76c3e5da623a4af60fe64adec448fb1f8e0cae9f6798a36b68865974044e9b67'], + }), + ('IO::Tty', '1.20', { + 'source_tmpl': 'IO-Tty-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['b15309fc85623893289cb9b2b88dfa9ed1e69156b75f29938553a45be6d730af'], + }), + ('Text::Soundex', '3.05', { + 'source_tmpl': 'Text-Soundex-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f6dd55b4280b25dea978221839864382560074e1d6933395faee2510c2db60ed'], + }), + ('Mail::Util', '2.22', { + 'source_tmpl': 'MailTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['3bf68bb212298fa699a52749dddff35583a74f36a92ca89c843b854f29d87c77'], + }), + ('Test::More::UTF8', '0.05', { + 'source_tmpl': 'Test-More-UTF8-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MO/MONS'], + 'checksums': ['b9f1c4b36a97cdfefaa53ed1115dd38f4b483037775f6559ee1df14acfd1ce04'], + }), + ('Text::Template', '1.61', { + 'source_tmpl': 'Text-Template-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSCHOUT'], + 'checksums': ['a295ea7d1ef241ae2640c1f7864b628f8e6f99ec14fb1da781b2f5f2168dcf09'], + }), + ('PadWalker', '2.5', { + 'source_tmpl': 'PadWalker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RO/ROBIN'], + 'checksums': ['07b26abb841146af32072a8d68cb90176ffb176fd9268e6f2f7d106f817a0cd0'], + }), + ('Devel::Cycle', '1.12', { + 'source_tmpl': 'Devel-Cycle-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LD/LDS'], + 'checksums': ['fd3365c4d898b2b2bddbb78a46d507a18cca8490a290199547dab7f1e7390bc2'], + }), + ('Test::Memory::Cycle', '1.06', { + 'source_tmpl': 'Test-Memory-Cycle-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PETDANCE'], + 'checksums': ['9d53ddfdc964cd8454cb0da4c695b6a3ae47b45839291c34cb9d8d1cfaab3202'], + }), + ('PDF::API2', '2.047', { + 'source_tmpl': 'PDF-API2-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SS/SSIMMS'], + 'checksums': ['84d6318279d77844923e4de4275fe4345cd08b225edd7f9ed6a16f87a91aca39'], + }), + ('Devel::CheckLib', '1.16', { + 'source_tmpl': 'Devel-CheckLib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MATTN'], + 'checksums': ['869d38c258e646dcef676609f0dd7ca90f085f56cf6fd7001b019a5d5b831fca'], + }), + ('SVG', '2.87', { + 'source_tmpl': 'SVG-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['b3fa58c1c59942b4ebef003da97c3e01e531480ca29e8efbe327ff0589c0bd3c'], + }), + ('Statistics::Basic', '1.6611', { + 'source_tmpl': 'Statistics-Basic-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JETTERO'], + 'checksums': ['6855ce5615fd3e1af4cfc451a9bf44ff29a3140b4e7130034f1f0af2511a94fb'], + }), + ('Log::Log4perl', '1.57', { + 'source_tmpl': 'Log-Log4perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['0f8fcb7638a8f3db4c797df94fdbc56013749142f2f94cbc95b43c9fca096a13'], + }), + ('Math::CDF', '0.1', { + 'source_tmpl': 'Math-CDF-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CALLAHAN'], + 'checksums': ['7896bf250835ce47dcc813cb8cf9dc576c5455de42e822dcd7d8d3fef2125565'], + }), + ('Array::Utils', '0.5', { + 'source_tmpl': 'Array-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Z/ZM/ZMIJ/Array'], + 'checksums': ['89dd1b7fcd9b4379492a3a77496e39fe6cd379b773fd03a6b160dd26ede63770'], + }), + ('File::Grep', '0.02', { + 'source_tmpl': 'File-Grep-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MN/MNEYLON'], + 'checksums': ['462e15274eb6278521407ea302d9eea7252cd44cab2382871f7de833d5f85632'], + }), + ('File::Temp', '0.2311', { + 'source_tmpl': 'File-Temp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['2290d61bf5c39882fc3311da9ce1c7f42dbdf825ae169e552c59fe4598b36f4a'], + }), + ('Set::Object', '1.42', { + 'source_tmpl': 'Set-Object-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RU/RURBAN'], + 'checksums': ['d18c5a8a233eabbd0206cf3da5b00fcdd7b37febf12a93dcc3d1c026e6fdec45'], + }), + ('Heap', '0.80', { + 'source_tmpl': 'Heap-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JM/JMM'], + 'checksums': ['ccda29f3c93176ad0fdfff4dd6f5e4ac90b370cba4b028386b7343bf64139bde'], + }), + ('Graph', '0.9732', { + 'source_tmpl': 'Graph-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['eafc9e519a04ac0a61a3eb34b6e18709411e5abde4bf1d9019c2e371aedf6c50'], + }), + ('XML::Writer', '0.900', { + 'source_tmpl': 'XML-Writer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JO/JOSEPHW'], + 'checksums': ['73c8f5bd3ecf2b350f4adae6d6676d52e08ecc2d7df4a9f089fa68360d400d1f'], + }), + ('Parse::Yapp', '1.21', { + 'source_tmpl': 'Parse-Yapp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/W/WB/WBRASWELL'], + 'checksums': ['3810e998308fba2e0f4f26043035032b027ce51ce5c8a52a8b8e340ca65f13e5'], + }), + ('Graph::ReadWrite', '2.10', { + 'source_tmpl': 'Graph-ReadWrite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['516c1ea9facb995dbc38d1735d58974b2399862567e731b729c8d0bc2ee5a14b'], + }), + ('PerlIO::utf8_strict', '0.010', { + 'source_tmpl': 'PerlIO-utf8_strict-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['bcd2848b72df290b5e984fae8b1a6ca96f6d072003cf222389a8c9e8e1c570cd'], + }), + ('Digest::MD5::File', '0.08', { + 'source_tmpl': 'Digest-MD5-File-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DM/DMUEY'], + 'checksums': ['adb43a54e32627b4f7e57c9640e6eb06d0bb79d8ea54cd0bd79ed35688fb1218'], + }), + ('String::RewritePrefix', '0.009', { + 'source_tmpl': 'String-RewritePrefix-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['44918bec96a54af8ca37ca897e436709ec284a07b28516ef3cce4666869646d5'], + }), + ('Getopt::Long::Descriptive', '0.115', { + 'source_tmpl': 'Getopt-Long-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['ea1185a9465cf0790e81827f13c860f18e40ab817ad03b9659a9f28ae1ec5411'], + }), + ('IO::TieCombine', '1.005', { + 'source_tmpl': 'IO-TieCombine-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['402d4db8300b3d271632f4995e0ade329d89280a7e47f2badf8b38af6e5569af'], + }), + ('App::Cmd', '0.336', { + 'source_tmpl': 'App-Cmd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['df966b57d59abb196e00304885e5bf117ca958182ae3f4eedf17218ea2838e81'], + }), + ('Carp::Clan', '6.08', { + 'source_tmpl': 'Carp-Clan-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['c75f92e34422cc5a65ab05d155842b701452434e9aefb649d6e2289c47ef6708'], + }), + ('Sub::Exporter::ForMethods', '0.100055', { + 'source_tmpl': 'Sub-Exporter-ForMethods-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['791f4203ba7c0f7d8380bc01bec20215f7c8bc70d7ed03e552eee44541abe94e'], + }), + ('MooseX::Types', '0.50', { + 'source_tmpl': 'MooseX-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['9cd87b3492cbf0be9d2df9317b2adf9fc30663770e69906654bea3f41b17cb08'], + }), + ('Variable::Magic', '0.64', { + 'pretestopts': 'LC_ALL=C ', # Test fails if run in localized environments + 'source_tmpl': 'Variable-Magic-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/V/VP/VPIT'], + 'checksums': ['9f7853249c9ea3b4df92fb6b790c03a60680fc029f44c8bf9894dccf019516bd'], + }), + ('MooseX::Types::Perl', '0.101344', { + 'source_tmpl': 'MooseX-Types-Perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['87644354f74fa65235cb2bfca44277930a7eabe51acc5f81fb631530a8355e24'], + }), + ('Log::Dispatch', '2.71', { + 'source_tmpl': 'Log-Dispatch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['9d60d9648c35ce2754731eb4deb7f05809ece1bd633b74d74795aed9ec732570'], + }), + ('JSON::MaybeXS', '1.004008', { + 'source_tmpl': 'JSON-MaybeXS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['cd3937afa78831f80a2ad5abab6c51b9e82fca4c31e5856ea208d598db5dc867'], + }), + ('String::Flogger', '1.101246', { + 'source_tmpl': 'String-Flogger-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['15f8491e07818bb3cfa9f6bd3aabf6430ba9b4e309f18114358be3d81bff3a0f'], + }), + ('Log::Dispatch::Array', '1.005', { + 'source_tmpl': 'Log-Dispatch-Array-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['311640b7a967f8dd7c9bb41a227073565636d70df4fcc1d44fed8a8223b347ca'], + }), + ('Sub::Exporter::GlobExporter', '0.006', { + 'source_tmpl': 'Sub-Exporter-GlobExporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['de743f08026701c2a6a222a8b41c4cdc254b1a4afe7ef98987cd3aba4ce52696'], + }), + ('Log::Dispatchouli', '3.008', { + 'source_tmpl': 'Log-Dispatchouli-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7318665b7bcec3cad8dfda1ffe7f026a2d564c721ad31843e3d6e8f5a5ad22ef'], + }), + ('Test::FailWarnings', '0.008', { + 'source_tmpl': 'Test-FailWarnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['da34ef9029f6849d6026201d49127d054ee6ac4b979c82210315f5721964a96f'], + }), + ('Data::Section', '0.200008', { + 'source_tmpl': 'Data-Section-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['83acc7a55d3dd7ed36e9d78d350af3138c69cfa178a44765822712ff433b990e'], + }), + ('Test::CheckDeps', '0.010', { + 'source_tmpl': 'Test-CheckDeps-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['66fccca6c6f330e7ecc898bd6a51846e2145b3e02d78c4997ba6b7de23b551ee'], + }), + ('Software::License', '0.104006', { + 'runtest': False, # This test just suddenly started to fail + 'source_tmpl': 'Software-License-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['65c8ee1c2da2a4de10139863df668fa6b3b3e24a39d69a7cca39f284fb6b9c0f'], + }), + ('MooseX::SetOnce', '0.203', { + 'source_tmpl': 'MooseX-SetOnce-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['3cd2f3664e438382cf844b679350a2e428b760927e2cf18fccdc468a7bc3066f'], + }), + ('Term::Encoding', '0.03', { + 'source_tmpl': 'Term-Encoding-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['95ba9687d735d25a3cbe64508d7894f009c7fa2a1726c3e786e9e21da2251d0b'], + }), + ('Throwable', '1.001', { + 'source_tmpl': 'Throwable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['d0cb5e9d7d06d70f2cc56eecf857a83a45eaca43850dcdda91d3feb4ddde4c51'], + }), + ('Role::Identifiable::HasIdent', '0.009', { + 'source_tmpl': 'Role-Identifiable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['5a735e9f7177f9ebae047eb7bae29b7ec29ec020ae37637aea5350d30c087b76'], + }), + ('MooseX::Role::Parameterized', '1.11', { + 'source_tmpl': 'MooseX-Role-Parameterized-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['1cfe766c5d7f0ecab57f733dcca430a2a2acd6b995757141b940ade3692bec9e'], + }), + ('MooseX::OneArgNew', '0.007', { + 'source_tmpl': 'MooseX-OneArgNew-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['84282435f1169cf09d7513fa9387e2091791635cf35a078b500b829aeea06138'], + }), + ('MooseX::LazyRequire', '0.11', { + 'source_tmpl': 'MooseX-LazyRequire-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ef620c1e019daf9cf3f23a943d25a94c91e93ab312bcd63be2e9740ec0b94288'], + }), + ('String::Formatter', '1.235', { + 'source_tmpl': 'String-Formatter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['08236a913b911ce652cf08598e7c07d2df3f369fc47bf401a485a504a1660783'], + }), + ('String::Errf', '0.009', { + 'source_tmpl': 'String-Errf-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['e1fedbf9b4fd64b64ea81038ddb76a4c6cd85f5db15bc21f10656a298349dc1f'], + }), + ('Role::HasMessage', '0.007', { + 'source_tmpl': 'Role-HasMessage-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['5e267a4d7620b368481204c88ea2044b8b2a58ff8b05577f2717b2754c0414ce'], + }), + ('Config::MVP', '2.200013', { + 'source_tmpl': 'Config-MVP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['018d161623ee3a67f860d9e680e22e61b79eae6018f0e7c3b525fc934f5b7d45'], + }), + ('Mixin::Linewise::Readers', '0.111', { + 'source_tmpl': 'Mixin-Linewise-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['d28e88516ce9b5295c31631dcccdc0fc8f2ab7d8a5cc876bb1b20131087b01db'], + }), + ('Config::INI', '0.029', { + 'source_tmpl': 'Config-INI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['0bbe797a730210644a907d90cd4aa2b23ad580cb27bd39393bfc6a7ef9fdfdea'], + }), + ('String::Truncate', '1.100603', { + 'source_tmpl': 'String-Truncate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['ab45602cce2dd9515edfbb2e6e5cde19cdd5498d61a23afd8c46c1f11f8eec62'], + }), + ('Pod::Eventual', '0.094003', { + 'source_tmpl': 'Pod-Eventual-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7f060cc34d11656ce069db061e3d60edc0cabc8f89a4a2dc7eaae95dac856d2d'], + }), + ('Pod::Elemental', '0.103006', { + 'source_tmpl': 'Pod-Elemental-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['750c3a79d8e1824758a6ef7d2dd077dcddca503542b8c34eccd5acbb779dc423'], + }), + ('Test::Object', '0.08', { + 'source_tmpl': 'Test-Object-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['65278964147837313f4108e55b59676e8a364d6edf01b3dc198aee894ab1d0bb'], + }), + ('Hook::LexWrap', '0.26', { + 'source_tmpl': 'Hook-LexWrap-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['b60bdc5f98f94f9294b06adef82b1d996da192d5f183f9f434b610fd1137ec2d'], + }), + ('Test::SubCalls', '1.10', { + 'source_tmpl': 'Test-SubCalls-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['cbc1e9b35a05e71febc13e5ef547a31c8249899bb6011dbdc9d9ff366ddab6c2'], + }), + ('PPI', '1.279', { + 'source_tmpl': 'PPI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MITHALDU'], + 'checksums': ['f69f4cc2c56d6e92183b80b1dd7337957623c509377ad5578edf1a3b467efa5a'], + }), + ('Config::MVP::Reader::INI', '2.101465', { + 'source_tmpl': 'Config-MVP-Reader-INI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['13c7aa27c1df98cd33ada399e59ff38fabfa9d65513e42af02f72c2d3f636247'], + }), + ('Pod::Weaver', '4.020', { + 'source_tmpl': 'Pod-Weaver-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['655fcf261206c1adbc3038981790b116c31508485135c648093b99b3b3de09d2'], + }), + ('CPAN::Uploader', '0.103018', { + 'source_tmpl': 'CPAN-Uploader-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['c4ffe4ede9db79b396e3bfc5e7cdf0e2e9821e1f1e087f523bcfa74c9fc9e248'], + }), + ('Devel::FindPerl', '0.016', { + 'source_tmpl': 'Devel-FindPerl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['43a2bf2f787a3f1b881179063162b2aa3e7cb044f6e5e76ec6466ae90a861138'], + }), + ('Module::Path', '0.19', { + 'source_tmpl': 'Module-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['b33179ce4dd73dfcde7d46808804b9ffbb11db0245fe455a7d001747562feaca'], + }), + ('Perl::PrereqScanner', '1.100', { + 'source_tmpl': 'Perl-PrereqScanner-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['01181d38a2e7aff838d262122563c50636ba4b3652ee5d1d4f8ef5ba3f5b186b'], + }), + ('Dist::Zilla', '6.032', { + 'source_tmpl': 'Dist-Zilla-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['5c771a1dc2daab5afae0fd59e5046111970f73bf3eaec9df70d8e07346f8165e'], + }), + ('XML::RegExp', '0.04', { + 'source_tmpl': 'XML-RegExp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJMATHER'], + 'checksums': ['df1990096036085c8e2d45904fe180f82bfed40f1a7e05243f334ea10090fc54'], + }), + ('XML::DOM', '1.46', { + 'source_tmpl': 'XML-DOM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJMATHER'], + 'checksums': ['8ba24b0b459b01d6c5e5b0408829c7d5dfe47ff79b3548c813759048099b175e'], + }), + ('Data::Dump', '1.25', { + 'source_tmpl': 'Data-Dump-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GARU'], + 'checksums': ['a4aa6e0ddbf39d5ad49bddfe0f89d9da864e3bc00f627125d1bc580472f53fbd'], + }), + ('File::Next', '1.18', { + 'source_tmpl': 'File-Next-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PETDANCE'], + 'checksums': ['f900cb39505eb6e168a9ca51a10b73f1bbde1914b923a09ecd72d9c02e6ec2ef'], + }), + ('App::cpanminus', '1.7048', { + 'source_tmpl': 'App-cpanminus-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['59b60907ab9fa4f72ca2004fbe6054911439ae9a906890b4d842a87b25f20f3c'], + }), + ('Parallel::ForkManager', '2.03', { + 'source_tmpl': 'Parallel-ForkManager-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Y/YA/YANICK'], + 'checksums': ['c0e0bead458224b9ac5bb32ed2b1fa088963b565521c1bb1a6a3566d522c2e35'], + }), + ('Object::InsideOut', '4.05', { + 'source_tmpl': 'Object-InsideOut-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], + 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], + }), + ('Logger::Simple', '2.0', { + 'source_tmpl': 'Logger-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TS/TSTANLEY'], + 'checksums': ['2e63fd3508775b5902132ba1bfb03b42bee468dfaf35dfe42e1909ff6d291b2d'], + }), + ('Scalar::Util::Numeric', '0.40', { + 'source_tmpl': 'Scalar-Util-Numeric-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE'], + 'checksums': ['d7501b6d410703db5b1c1942fbfc41af8964a35525d7f766058acf5ca2cc4440'], + }), + ('Spiffy', '0.46', { + 'source_tmpl': 'Spiffy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['8f58620a8420255c49b6c43c5ff5802bd25e4f09240c51e5bf2b022833d41da3'], + }), + ('Test::Base', '0.89', { + 'source_tmpl': 'Test-Base-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['2794a1aaaeb1d3a287dd2c7286258663796562f7db9ccc6b424bc4f1de8ad014'], + }), + ('Test::YAML', '1.07', { + 'source_tmpl': 'Test-YAML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TI/TINITA'], + 'checksums': ['1f300d034f46298cb92960912cc04bac33fb27f05b8852d8f051e110b9cd995f'], + }), + ('YAML', '1.31', { + 'source_tmpl': 'YAML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['a0ce30381657dce8e694df9a09e95d818d13beb03698fd2cf79d0c8d564a9b8e'], + }), + ('Object::InsideOut', '4.05', { + 'source_tmpl': 'Object-InsideOut-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], + 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], + }), + ('Term::ReadLine::Gnu', '1.46', { + 'modulename': 'Term::ReadLine', + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", + 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], + 'checksums': ['b13832132e50366c34feac12ce82837c0a9db34ca530ae5d27db97cf9c964c7b'], + }), + ('ExtUtils::MakeMaker', '7.70', { + 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['f108bd46420d2f00d242825f865b0f68851084924924f92261d684c49e3e7a74'], + }), + ('Scalar::Util', '1.68', { + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['23317e4346fe8747f0167eccd1881d6369aa71023f014cd6f846988843295906'], + }), + ('Module::CoreList', '5.20241120', { + 'source_tmpl': 'Module-CoreList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['ece8351079ef8577dae8681ff6fa351850b06d2afba50a306bfb29921668abd9'], + }), + ('Module::Metadata', '1.000038', { + 'source_tmpl': 'Module-Metadata-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['b599d8770a9a9fa0a8ae3cd0ed395a9cf71b4eb53aed82989a6bece33485a9cd'], + }), + ('Params::Check', '0.38', { + 'configopts': 'INSTALLDIRS=site', # Force it to correctly use site_perl + 'source_tmpl': 'Params-Check-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['f0c9d33876c36b1bca1475276d26d2efaf449b256d7cc8118fae012e89a26290'], + }), + ('Locale::Maketext::Simple', '0.21', { + 'configopts': 'INSTALLDIRS=site', # Force it to correctly use site_perl + 'source_tmpl': 'Locale-Maketext-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JESSE'], + 'checksums': ['b009ff51f4fb108d19961a523e99b4373ccf958d37ca35bf1583215908dca9a9'], + }), + ('Perl::OSType', '1.010', { + 'source_tmpl': 'Perl-OSType-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['e7ed4994b5d547cb23aadb84dc6044c5eb085d5a67a6c5624f42542edd3403b2'], + }), + ('IPC::Cmd', '1.04', { + 'source_tmpl': 'IPC-Cmd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['d110a0f60e35c65721454200f0d2f0f8965529a2add9649d1fa6f4f9eccb6430'], + }), + ('Pod::Escapes', '1.07', { + 'source_tmpl': 'Pod-Escapes-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['dbf7c827984951fb248907f940fd8f19f2696bc5545c0a15287e0fbe56a52308'], + }), + ('if', '0.0608', { + 'configopts': 'INSTALLDIRS=site', # Force it to correctly use site_perl + 'modulename': False, + 'source_tmpl': 'if-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['37206e10919c4d99273020008a3581bf0947d364e859b8966521c3145b4b3700'], + }), + ('Test', '1.26', { + 'configopts': 'INSTALLDIRS=site', # Force it to correctly use site_perl + 'source_tmpl': 'Test-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JESSE'], + 'checksums': ['f7701bd28e05e7f82fe9a181bbab38f53fa6aeae48d2a810da74d1b981d4f392'], + }), + ('ExtUtils::Constant', '0.25', { + 'runtest': False, # Somehow has syntax errors in tests + 'source_tmpl': 'ExtUtils-Constant-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['6933d0e963b62281ef7561068e6aecac8c4ac2b476b2bba09ab0b90fbac9d757'], + }), + ('ExtUtils::CBuilder', '0.280236', { + 'source_tmpl': 'ExtUtils-CBuilder-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AM/AMBS'], + 'checksums': ['abc21827eb8a513171bf7fdecefce9945132cb76db945036518291f607b1491f'], + }), + ('Carp::Heavy', '1.50', { + 'source_tmpl': 'Carp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['f5273b4e1a6d51b22996c48cb3a3cbc72fd456c4038f5c20b127e2d4bcbcebd9'], + }), + ('Pod::Simple', '3.45', { + 'source_tmpl': 'Pod-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KH/KHW'], + 'checksums': ['8483bb95cd3e4307d66def092a3779f843af772482bfdc024e3e00d0c4db0cfa'], + }), + ('Socket', '2.038', { + 'source_tmpl': 'Socket-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['563d11731ff44307fa2779a6958fd2d2f6643fbd9a3174cbf350228b159681f8'], + }), + ('Time::Local', '1.35', { + 'source_tmpl': 'Time-Local-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['1d136b71bd041cbe6f66c43180ee79e675b72ad5a3596abd6a44d211072ada29'], + }), + ('Storable', '3.25', { + 'source_tmpl': 'Storable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['e1e96b24a076792fde52154789fe4b76034b9ad39c8a1a819ead77d50d5f1817'], + }), + ('ExtUtils::ParseXS', '3.51', { + 'source_tmpl': 'ExtUtils-ParseXS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['82431a57425d78682acefb3a2cc9287683d091c8d034b825c584d9805bed6535'], + }), + ('Pod::Man', 'v6.0.2', { + 'source_tmpl': 'podlators-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RR/RRA'], + 'checksums': ['2992125eab7d2b1c5a2b15a26ad7955f7d989eba6c831abdcaf2000e86a91337'], + }), + ('Mozilla::CA', '20240924', { + 'source_tmpl': 'Mozilla-CA-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LW/LWP'], + 'checksums': ['c4b1412bbc37dff8cf29af6f92cb47defbe90eebcbc29e407a98638f7a31bcd0'], + }), + ('LWP::Protocol::https', '6.14', { + 'source_tmpl': 'LWP-Protocol-https-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['59cdeabf26950d4f1bef70f096b0d77c5b1c5a7b5ad1b66d71b681ba279cbb2a'], + }), + ('Module::Load', '0.36', { + 'source_tmpl': 'Module-Load-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['d825020ac00b220e89f9524e24d838f9438b072fcae8c91938e4026677bef6e0'], + }), + ('Module::Load::Conditional', '0.74', { + 'source_tmpl': 'Module-Load-Conditional-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['54c354a9393820f1ebc2a095da084ea0392dcbccb0cb38a187a71831cc60a730'], + }), + ('parent', '0.243', { + 'source_tmpl': 'parent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CO/CORION'], + 'checksums': ['47b3e7af5c59bf88073bb8095b91c53fb8e35f915dc159370f6c11479c279b02'], + }), + ('Net::Domain', '3.15', { + 'source_tmpl': 'libnet-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['a71f4db580e1a767d6936faa5baf38f1fa617824342da078b561283e86f8f4a2'], + }), + ('Encode', '3.21', { + 'source_tmpl': 'Encode-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DANKOGAI'], + 'checksums': ['eacf71c5eb49e0e590de797f1982d7fb95d8481e4d13c3ce79eb32ef9373b3db'], + }), + ('Cwd', '3.75', { + 'patches': ['PathTools-3.75_fix-cwd_enoent-test.patch'], + 'runtest': False, # Single failure about a tainted PATH + 'source_tmpl': 'PathTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': [ + {'PathTools-3.75.tar.gz': 'a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2'}, + {'PathTools-3.75_fix-cwd_enoent-test.patch': + '7a456a99d9b04a36359f3623f0deef8fe7f472c742f99cdcf0215c50afbbe7b1'}, + ], + }), + ('MIME::Base64', '3.16', { + 'source_tmpl': 'MIME-Base64-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['77f73d6f7aeb8d33be08b0d8c2617f9b6c77fb7fc45422d507ca8bafe4246017'], + }), + ('ExtUtils::CppGuess', '0.27', { + 'runtest': False, # Poorly written test + 'source_tmpl': 'ExtUtils-CppGuess-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['b2c7b581901054a32dfcea12536fda8626457ed0bfbc02600bd354bde7e2a9b4'], + }), + ('XSLoader', '0.24', { + 'source_tmpl': 'XSLoader-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SAPER'], + 'checksums': ['e819a35a6b8e55cb61b290159861f0dc00fe9d8c4f54578eb24f612d45c8d85f'], + }), + ('AutoLoader', '5.74', { + 'source_tmpl': 'AutoLoader-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['2fac75b05309f71a6871804cd25e1a3ba0a28f43f294fb54528077558da3aff4'], + }), + ('Set::IntervalTree', '0.12', { + 'source_tmpl': 'Set-IntervalTree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SL/SLOYD'], + 'checksums': ['6fd4000e4022968e2ce5b83c07b189219ef1925ecb72977b52a6f7d76adbc349'], + }), + ('MCE::Mutex', '1.900', { + 'runtest': False, # Single failing subtest + 'source_tmpl': 'MCE-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARIOROY'], + 'checksums': ['f83132da7a993a4700464cdbf1665bab8ec8ec120beb86e607cd983d207fc935'], + }), + ('Text::CSV_XS', '1.57', { + 'source_tmpl': 'Text-CSV_XS-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['54dd63feb59e80d2ec596ac6bd8f8f80eb2042099fb68e35f3b47901c768621f'], + }), + ('DBD::CSV', '0.60', { + 'source_tmpl': 'DBD-CSV-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['018b83a30f799979bc8c3c3044c8b1c8001cdf60bdc3e746848818195254b4e7'], + }), + ('Array::Transpose', '0.06', { + 'source_tmpl': 'Array-Transpose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MR/MRDVT'], + 'checksums': ['d58667f64381a105f375226f592d0af71068e640a5a9f4d5ecf27c90feb32676'], + }), + ('Config::Simple', '4.58', { + 'source_tmpl': 'Config-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHERZODR'], + 'checksums': ['dd9995706f0f9384a15ccffe116c3b6e22f42ba2e58d8f24ed03c4a0e386edb4'], + }), + ('Business::ISBN::Data', '20241205.001', { + 'source_tmpl': 'Business-ISBN-Data-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY'], + 'checksums': ['582db1dae54c135f0a64357b366fb4690121a4279a11636998f596918328e496'], + }), + ('Business::ISBN', '3.009', { + 'source_tmpl': 'Business-ISBN-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY'], + 'checksums': ['d2ec1970454af1b2c099dd34caa7a348ca6fd323bb7ddbfad55389bd7f96789b'], + }), + ('common::sense', '3.75', { + 'source_tmpl': 'common-sense-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['a86a1c4ca4f3006d7479064425a09fa5b6689e57261fcb994fe67d061cba0e7e'], + }), + ('Compress::Raw::Zlib', '2.213', { + 'source_tmpl': 'Compress-Raw-Zlib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PM/PMQS'], + 'checksums': ['56b21c99cb3a3a7f7876a74dd05daa3f41fc9143ddd4dc98f8e46710a106af45'], + }), + ('Compress::Raw::Bzip2', '2.213', { + 'source_tmpl': 'Compress-Raw-Bzip2-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PM/PMQS'], + 'checksums': ['8d75d3d366c9101ca18061b00d438d3da39478c06159147dea3c666770577c7b'], + }), + ('IO::Compress::Zip', '2.213', { + 'source_tmpl': 'IO-Compress-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PM/PMQS'], + 'checksums': ['ae4d01ae574e4568c5f2fb0573e74631e2720b71ad3bc5a3ffe9480f1cb9a851'], + }), + ('Types::Serialiser', '1.01', { + 'source_tmpl': 'Types-Serialiser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['f8c7173b0914d0e3d957282077b366f0c8c70256715eaef3298ff32b92388a80'], + }), + ('JSON::XS', '4.03', { + 'source_tmpl': 'JSON-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['515536f45f2fa1a7e88c8824533758d0121d267ab9cb453a1b5887c8a56b9068'], + }), + ('Authen::NTLM', '1.09', { + 'source_tmpl': 'NTLM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NB/NBEBOUT'], + 'checksums': ['c823e30cda76bc15636e584302c960e2b5eeef9517c2448f7454498893151f85'], + }), + ('Types::Serialiser', '1.01', { + 'source_tmpl': 'Types-Serialiser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['f8c7173b0914d0e3d957282077b366f0c8c70256715eaef3298ff32b92388a80'], + }), + ('XML::SAX::Expat', '0.51', { + 'source_tmpl': 'XML-SAX-Expat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BJ/BJOERN'], + 'checksums': ['4c016213d0ce7db2c494e30086b59917b302db8c292dcd21f39deebd9780c83f'], + }), + ('Inline', '0.86', { + 'source_tmpl': 'Inline-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['510a7de2d011b0db80b0874e8c0f7390010991000ae135cff7474df1e6d51e3a'], + }), + ('Test::Sys::Info', '0.23', { + # test fails on systems without /etc/fstab - so comment it out + 'preconfigopts': "sed -i 's/ok( my %fs/# ok( my %fs/' lib/Test/Sys/Info/Driver.pm && ", + 'source_tmpl': 'Test-Sys-Info-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['30c5f2c4cfee8e1ae6d9fb6291f79addbff5739ba4efa5b1e034520f18fbc95a'], + }), + ('Sys::Info::Base', '0.7807', { + 'source_tmpl': 'Sys-Info-Base-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['132362b0046e8dc4f12e1560903623a88a8871d09bf1c29d93d48d3f4a582acb'], + }), + ('Sys::Info::Driver::Unknown::Device::CPU', '0.79', { + 'source_tmpl': 'Sys-Info-Driver-Unknown-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['02408843c8e36ea3d507e9f33fee48d6908543829ebe320f13d1bfe76af31e09'], + }), + ('Unix::Processors', '2.046', { + 'source_tmpl': 'Unix-Processors-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/W/WS/WSNYDER'], + 'checksums': ['3973ebdc44682c9c15c776f66e8be242cb4ff1dd52caf43ff446b74d4dccca06'], + }), + ('Sys::Info::Driver::Linux::Device::CPU', '0.7905', { + 'source_tmpl': 'Sys-Info-Driver-Linux-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['899c329bd3508ec5849ad0e5dadfa7c3679bbacaea9dda12404a7893032e8b7b'], + }), + ('Sys::Info', '0.7811', { + 'source_tmpl': 'Sys-Info-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['566482bff3427c198d7955468ed945a8e736c4a2925151fdef96801ef8a401e1'], + }), + ('CGI', '4.66', { + 'source_tmpl': 'CGI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEEJO'], + 'checksums': ['4697437688a193e3f02556e1d223015590c1f2800b40becf83dc12d5cc5ed8e1'], + }), + ('HTML::Template', '2.97', { + 'source_tmpl': 'HTML-Template-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SAMTREGAR'], + 'checksums': ['6547af61f3aa85793f8616190938d677d7995fb3b720c16258040bc935e2129f'], + }), + ('MIME::Charset', 'v1.013.1', { + 'source_tmpl': 'MIME-Charset-1.013.1.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEZUMI'], + 'checksums': ['1bb7a6e0c0d251f23d6e60bf84c9adefc5b74eec58475bfee4d39107e60870f0'], + }), + ('Unicode::LineBreak', '2019.001', { + 'source_tmpl': 'Unicode-LineBreak-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEZUMI'], + 'checksums': ['486762e4cacddcc77b13989f979a029f84630b8175e7fef17989e157d4b6318a'], + }), + ('String::Print', '0.94', { + 'source_tmpl': 'String-Print-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['9b3cd677adb7a40cb183bd6c60db80d96adcabd5aae27e324e3ee37e3275229b'], + }), + ('Log::Report::Optional', '1.07', { + 'source_tmpl': 'Log-Report-Optional-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['b2658b53176df5afa5d02789368715c86b98c8d04ecd930252bcd7f832cc6224'], + }), + ('Log::Report', '1.39', { + 'source_tmpl': 'Log-Report-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['79ac19f474ca4c078e5b66073478d37a83ef6a02b6689e4a59a9fcc838976f2b'], + }), + ('Sys::Info::Driver::Unknown', '0.79', { + 'source_tmpl': 'Sys-Info-Driver-Unknown-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['02408843c8e36ea3d507e9f33fee48d6908543829ebe320f13d1bfe76af31e09'], + }), + ('Sys::Info::Driver::Linux', '0.7905', { + 'source_tmpl': 'Sys-Info-Driver-Linux-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], + 'checksums': ['899c329bd3508ec5849ad0e5dadfa7c3679bbacaea9dda12404a7893032e8b7b'], + }), + ('Unix::Processors', '2.046', { + 'source_tmpl': 'Unix-Processors-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/W/WS/WSNYDER'], + 'checksums': ['3973ebdc44682c9c15c776f66e8be242cb4ff1dd52caf43ff446b74d4dccca06'], + }), + ('local::lib', '2.000029', { + 'source_tmpl': 'local-lib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['8df87a10c14c8e909c5b47c5701e4b8187d519e5251e87c80709b02bb33efdd7'], + }), + ('Module::Path', '0.19', { + 'source_tmpl': 'Module-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['b33179ce4dd73dfcde7d46808804b9ffbb11db0245fe455a7d001747562feaca'], + }), + ('Devel::Size', '0.84', { + 'source_tmpl': 'Devel-Size-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['db2e4d65f688dbf59273b5e82101ac3f1a66f665afb0594dce168b8650a4d0e4'], + }), + ('Math::Utils', '1.14', { + 'source_tmpl': 'Math-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JG/JGAMBLE'], + 'checksums': ['88a20ae0736a622671b92bb2a350969af424d7610284530b277c8020235f2695'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/XML-Bare-0.53_c99.patch b/easybuild/easyconfigs/p/Perl-bundle-CPAN/XML-Bare-0.53_c99.patch new file mode 100644 index 00000000000..d572537aec8 --- /dev/null +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/XML-Bare-0.53_c99.patch @@ -0,0 +1,61 @@ +From +* https://rt.cpan.org/Public/Bug/Display.html?id=145653 +* https://rt.cpan.org/Public/Bug/Display.html?id=151041 + +diff --git a/parser.c b/parser.c +index 4d770e0efba0e336..26fbd4127fa64753 100644 +--- a/parser.c ++++ b/parser.c +@@ -1,8 +1,6 @@ + #include "parser.h" +-#include +-#ifdef DARWIN +- #include "stdlib.h" +-#endif ++#include ++#include + #ifdef NOSTRING + void memset(char *s, int c, int n) { + char *se = s + n; + +diff --git a/parser.c b/parser.c +index 26fbd4127fa64753..e6cea50335b28eb5 100644 +--- a/parser.c ++++ b/parser.c +@@ -417,7 +417,7 @@ int parserc_parse( struct parserc *self, char *xmlin ) { + case 0: last_state = ST_att_name; goto done; + case '/': // self closing !! /> is assumed !! + curatt = nodec_addattr( curnode, attname, attname_len ); +- if( !att_has_val ) { curatt->value = -1; curatt->vallen = 0; } ++ if( !att_has_val ) { curatt->value = (char *) -1; curatt->vallen = 0; } + attname_len = 0; + + curnode->z = cpos+1-xmlin; +@@ -436,7 +436,7 @@ int parserc_parse( struct parserc *self, char *xmlin ) { + goto att_space; + case '>': + curatt = nodec_addattr( curnode, attname, attname_len ); +- if( !att_has_val ) { curatt->value = -1; curatt->vallen = 0; } ++ if( !att_has_val ) { curatt->value = (char *) -1; curatt->vallen = 0; } + attname_len = 0; + cpos++; + goto val_1; +@@ -832,7 +832,7 @@ int parserc_parse_unsafely( struct parserc *self, char *xmlin ) { + switch( let ) { + case '/': // self closing !! /> is assumed !! + curatt = nodec_addattr( curnode, attname, attname_len ); +- if( !att_has_val ) { curatt->value = -1; curatt->vallen = 0; } ++ if( !att_has_val ) { curatt->value = (char *) -1; curatt->vallen = 0; } + attname_len = 0; + + curnode = curnode->parent; +@@ -850,7 +850,7 @@ int parserc_parse_unsafely( struct parserc *self, char *xmlin ) { + goto u_att_space; + case '>': + curatt = nodec_addattr( curnode, attname, attname_len ); +- if( !att_has_val ) { curatt->value = -1; curatt->vallen = 0; } ++ if( !att_has_val ) { curatt->value = (char *) -1; curatt->vallen = 0; } + attname_len = 0; + cpos++; + goto u_val_1; + diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.40.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.40.0-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..505064f36f4 --- /dev/null +++ b/easybuild/easyconfigs/p/Perl/Perl-5.40.0-GCCcore-14.2.0.eb @@ -0,0 +1,51 @@ +name = 'Perl' +version = '5.40.0' + +homepage = 'https://www.perl.org/' +description = """Larry Wall's Practical Extraction and Report Language + +Includes a small selection of extra CPAN packages for core functionality. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.cpan.org/src/%(version_major)s.0'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c740348f357396327a9795d3e8323bafd0fe8a5c7835fc1cbaba0cc8dfe7161f'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('zlib', '1.3.1'), +] + +# !! order of extensions is important !! +# extensions updated on 2024-12-08 +# includes all dependencies for Autotools +exts_list = [ + ('Getopt::Long', '2.58', { + 'source_tmpl': 'Getopt-Long-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JV/JV'], + 'checksums': ['1305ed46ea21f794304e97aa3dcd3a38519059785e9db7415daf2c218506c569'], + }), + ('File::Path', '2.18', { + 'source_tmpl': 'File-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/'], + 'checksums': ['980f0a17edb353df46e9cd7b357f9f5929cde0f80c45fd7a06cf7e0e8bd6addd'], + }), + ('File::Spec', '3.75', { + 'source_tmpl': 'PathTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2'], + }), + ('Text::ParseWords', '3.31', { + 'source_tmpl': 'Text-ParseWords-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB/'], + 'checksums': ['2ae555ba084d75b2b8feeeb8d1a00911276815ada86bccb1452236964d5a2fc7'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PhiPack/PhiPack-2016.06.14-GCC-13.2.0.eb b/easybuild/easyconfigs/p/PhiPack/PhiPack-2016.06.14-GCC-13.2.0.eb new file mode 100644 index 00000000000..b4320c8b0b6 --- /dev/null +++ b/easybuild/easyconfigs/p/PhiPack/PhiPack-2016.06.14-GCC-13.2.0.eb @@ -0,0 +1,39 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = "MakeCp" + +name = "PhiPack" +# No version is specified by default, copyright is 2005 latest update 2016 +# find -type f -printf '%T+ %p\n' | sort -r | head -n 1 +# 2016-06-14+06:18:29.0000000000 ./PhiPack/src/fasta.c +# latest edit time of file in the archive +version = "2016.06.14" + +homepage = "http://www.maths.otago.ac.nz/~dbryant/software.html" +description = """The PhiPack software package implements (in C) a few tests for +recombination and can produce refined incompatibility matrices as well.""" + +docurls = ["http://www.maths.otago.ac.nz/~dbryant/software/phimanual.pdf"] +software_license = "LicenseGPLv3" +software_license_urls = ['https://www.gnu.org/licenses/lgpl-3.0.en.html'] + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['http://www.maths.otago.ac.nz/~dbryant/software/'] +sources = [{'download_filename': 'PhiPack.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['af43326e021f1f2e590be2cba3caa44a0963f237386e63209ccc26b5bfb02db9'] + +start_dir = 'src/' +buildopts = 'CXX="$CC" CXXFLAGS="$CFLAGS"' + +files_to_copy = [(['Phi', 'Profile', 'ppma_2_bmp/ppma_2_bmp'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/Phi', 'bin/Profile', 'bin/ppma_2_bmp'], + 'dirs': [], +} + +sanity_check_commands = ["Phi -f %(builddir)s/%(name)s/noro.fasta"] + +moduleclass = 'math' 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/PoPoolation-TE2/PoPoolation-TE2-1.10.03-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PoPoolation-TE2/PoPoolation-TE2-1.10.03-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..e93f4a079c6 --- /dev/null +++ b/easybuild/easyconfigs/p/PoPoolation-TE2/PoPoolation-TE2-1.10.03-GCCcore-12.3.0.eb @@ -0,0 +1,60 @@ +easyblock = 'JAR' + +name = 'PoPoolation-TE2' +version = '1.10.03' + +homepage = 'https://sourceforge.net/p/popoolation-te2/wiki/Home/' +description = """ +PoPoolationTE2: enables comparative population genomics of transposable elements (TE). As a +major innovation PoPoolation TE2 introduces the physical pileup file which allows to +homogenize the power to identify TEs and thus enables an unbiased comparison of TE abundance +between samples, where samples could be pooled populations, tissues or sequenced individuals. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('BWA', '0.7.17'), + ('Java', '11', '', SYSTEM), +] + +source_urls = ['https://sourceforge.net/projects/popoolation-te2/files/'] +sources = [ + { + 'filename': 'popte2.jar', + 'download_filename': 'popte2-v%(version)s.jar', + }, + 'walkthrough-refgenome.zip', + 'walkthrough-reads.zip', + +] +checksums = [ + {'popte2.jar': '95eca422a6d295277d20ec1cbbcb9000bad1f380ae7cba9005f20ff211907e32'}, + {'walkthrough-refgenome.zip': 'ce3cb0b952a99fcae6b348cd888ee6f4c3a45d7e0b208e211ecb290cacde618c'}, + {'walkthrough-reads.zip': '909a8f1d507bb20518f6ef1ac313a59b8e8b02b70fc911e2d6d6efdce2e258f3'}, +] + +postinstallcmds = [ + "cd %(installdir)s && unzip walkthrough-refgenome.zip", + "cd %(installdir)s && unzip walkthrough-reads.zip", + "cd %(installdir)s && rm walkthrough-refgenome.zip walkthrough-reads.zip", +] + +sanity_check_commands = [ + 'java -jar $EBROOTPOPOOLATIONMINTE2/popte2.jar --help 2>&1 | grep "Usage: java"', +] + +sanity_check_paths = { + 'files': ['popte2.jar'], + 'dirs': ['walkthrough-refgenome', 'walkthrough-reads'], +} + +modloadmsg = """ +To execute PoPoolation-TE2 run: java -jar $EBROOTPOPOOLATIONMINTE2/popte2.jar +The reference genome and the Te-hierachy can be found in $EBROOTPOPOOLATIONMINTE2/walkthrough-refgenome +Reads provided by the developer can be found under $EBROOTPOPOOLATIONMINTE2/walkthrough-reads +""" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-20240119-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-20240119-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..c73fd182a04 --- /dev/null +++ b/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-20240119-GCCcore-12.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'Porechop' +version = '0.2.4-20240119' +local_commit = 'd2e77c6' + +homepage = 'https://github.com/dehui333/Porechop' +description = """Porechop is a tool for finding and removing adapters from Oxford Nanopore reads. + Adapters on the ends of reads are trimmed off, and when a read has an adapter in its middle, + it is treated as chimeric and chopped into separate reads. Porechop performs thorough alignments + to effectively find adapters, even at low sequence identity.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/dehui333/Porechop/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['6e5ff3a780fc2855b0101b4a6102437d9a0fc201e40ffabc44c0c67d7c9ad621'] + +builddependencies = [('binutils', '2.40')] +dependencies = [('Python', '3.11.3')] + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/Proteinortho/Proteinortho-6.3.2-gompi-2023a.eb b/easybuild/easyconfigs/p/Proteinortho/Proteinortho-6.3.2-gompi-2023a.eb new file mode 100644 index 00000000000..4cd050e7d31 --- /dev/null +++ b/easybuild/easyconfigs/p/Proteinortho/Proteinortho-6.3.2-gompi-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'Proteinortho' +version = '6.3.2' + +homepage = 'https://www.bioinf.uni-leipzig.de/Software/proteinortho' +description = "Proteinortho is a tool to detect orthologous genes within different species." + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://gitlab.com/paulklemm_PHD/proteinortho/-/archive/v%(version)s/'] +sources = ['proteinortho-v%(version)s.tar.gz'] +checksums = ['3b3c58e814ca10f77a25954b0bcddc479b9f61682f3dc5c93d85b07f109342a4'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Python', '3.11.3'), + ('BLAST+', '2.14.1'), + ('DIAMOND', '2.1.8'), +] + +skipsteps = ['configure'] + +preinstallopts = "mkdir -p %(installdir)s/bin && " +installopts = "PREFIX=%(installdir)s/bin" + +sanity_check_paths = { + 'files': ['bin/proteinortho', 'bin/proteinortho%(version_major)s.pl', 'bin/proteinortho_clustering'], + 'dirs': [], +} + +sanity_check_commands = ["proteinortho --help"] + +moduleclass = 'bio' 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..7e155fd5850 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb @@ -0,0 +1,50 @@ +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'), +] + +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'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.2.205-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.2.205-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..9bc00005ca7 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.2.205-GCCcore-12.3.0.eb @@ -0,0 +1,64 @@ +easyblock = "PythonBundle" + +name = 'PyBioLib' +version = '1.2.205' + +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'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Flask', '2.3.3'), + ('PyYAML', '6.0'), +] + +exts_list = [ + ('commonmark', '0.9.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9'], + }), + ('rich', '13.9.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8c82a3d3f8dcfe9e734771313e606b39d8247bb6b826e196f4914b333b743cf1'], + }), + ('pycryptodome', '3.21.0', { + 'modulename': 'Crypto.PublicKey.RSA', + 'checksums': ['f7787e0d469bdae763b876174cf2e6c0f7be79808af26b1da96f1a64bcf47297'], + }), + ('websocket_client', '1.8.0', { + 'modulename': 'websocket', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526'], + }), + ('docker', '7.1.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['c96b93b7f0a746f9e77d325bcfb87422a3d8bd4f03136ae8a85b37f1898d5fc0'], + }), + ('PyJWT', '2.9.0', { + 'modulename': 'jwt', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['3b02fb0f44517787776cf48f2ae25d8e14f300e6d7545a4315cee571a415e850'], + }), + ('gunicorn', '23.0.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d'], + }), + ('pybiolib', version, { + 'modulename': 'biolib', + # 'preinstallopts': "sed -i 's/< 8.1.0/< 8.2.0/' pyproject.toml &", + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['56030cdeec254ac751b47dab4f9418caa0c8af3d2604cc2daaa5cea2ab61312a'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-gfbf-2023a-CUDA-12.1.1.eb index 4152af03162..f3f7e091336 100644 --- a/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-gfbf-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-gfbf-2023a-CUDA-12.1.1.eb @@ -14,6 +14,7 @@ dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), ('Mako', '1.2.4'), + ('PyOpenGL', '3.1.7'), ] exts_list = [ @@ -21,10 +22,14 @@ exts_list = [ 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], }), (name, version, { - 'preinstallopts': './configure.py --cuda-root="$EBROOTCUDA" && ', + 'preinstallopts': './configure.py --cuda-root="$EBROOTCUDA" --cuda-enable-gl && ', 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', 'checksums': ['d50d23ff6371482cff7d4b953ef40ab81c9df038ecb614484f9fd5347327327e'], }), ] +sanity_check_commands = [ + 'python -c "import pycuda.gl"' +] + moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PyHMMER/PyHMMER-0.10.15-gompi-2023b.eb b/easybuild/easyconfigs/p/PyHMMER/PyHMMER-0.10.15-gompi-2023b.eb new file mode 100644 index 00000000000..db7eeecc500 --- /dev/null +++ b/easybuild/easyconfigs/p/PyHMMER/PyHMMER-0.10.15-gompi-2023b.eb @@ -0,0 +1,44 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2024/02 +# Update: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'PyHMMER' +version = '0.10.15' + +homepage = 'https://github.com/althonos/pyhmmer' +description = """ +HMMER is a biological sequence analysis tool that uses profile hidden Markov +models to search for sequence homologs. HMMER3 is developed and maintained by +the Eddy/Rivas Laboratory at Harvard University. + +pyhmmer is a Python package, implemented using the Cython language, that +provides bindings to HMMER3. It directly interacts with the HMMER internals, +which has the following advantages over CLI wrappers (like hmmer-py)""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('HMMER', '3.4'), + ('psutil', '6.1.0') +] + +exts_list = [ + ('%(namelower)s', version, { + # Requirement for `psutil` is too strict. + 'preinstallopts': "sed -i 's/psutil ~=5.8/psutil >=5.8/g' setup.cfg && ", + 'checksums': ['bf8e97ce8da6fb5850298f3074640f3e998d5a655877f865c1592eb057dc7921'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb index dc0d4e0d600..2bfcd9cb5b9 100644 --- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb @@ -89,12 +89,12 @@ sanity_check_paths = { } sanity_check_commands = [ - "python -c 'import PyQt5.QtCore'", + "python -s -c 'import PyQt5.QtCore'", "sip5 --help", "pyuic5 --help", "pylupdate5 -version 2>&1 | grep 'pylupdate5 v%(version)s'", "pyrcc5 -version 2>&1 | grep 'pyrcc5 v%(version)s'", - "pip check", + "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check", ] modextrapaths = { diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb index 9944e85e040..9e070b2d876 100644 --- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -100,12 +100,12 @@ sanity_check_paths = { } sanity_check_commands = [ - "python -c 'import PyQt5.QtCore'", + "python -s -c 'import PyQt5.QtCore'", "sip5 --help", "pyuic5 --help", "pylupdate5 -version 2>&1 | grep 'pylupdate5 v%(version)s'", "pyrcc5 -version 2>&1 | grep 'pyrcc5 v%(version)s'", - "pip check", + "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check", ] modextrapaths = { 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..65e28b0be3d --- /dev/null +++ b/easybuild/easyconfigs/p/PyRosetta/PyRosetta-4.release-387-gompi-2023a.eb @@ -0,0 +1,34 @@ +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'), +] + +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'], + }), +] + +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..32dac3ec5e7 --- /dev/null +++ b/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb @@ -0,0 +1,134 @@ +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 = { + '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'"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a-CUDA-12.1.1.eb index 5c7752d321c..d901a488164 100644 --- a/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a-CUDA-12.1.1.eb @@ -177,6 +177,16 @@ exts_list = [ ), 'testinstall': True, }), + ('tensordict', '0.3.0', { + 'source_urls': ['https://github.com/pytorch/%(name)s/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['f0d95e8f055c3f82838fdbeb03c6a907f8786c1046791db7e39cdcd9cb8f1889'], + }), + ('torchrl', '0.3.1', { + 'source_urls': ['https://github.com/pytorch/rl/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['882ed50cfd868c6b730834f2d7136a3039767061f075ba3cf194acf07e0be742'], + }), ] moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a.eb b/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a.eb index 3900d0eef82..dcaaaec5744 100644 --- a/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a.eb +++ b/easybuild/easyconfigs/p/PyTorch-bundle/PyTorch-bundle-2.1.2-foss-2023a.eb @@ -174,6 +174,16 @@ exts_list = [ ), 'testinstall': True, }), + ('tensordict', '0.3.0', { + 'source_urls': ['https://github.com/pytorch/%(name)s/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['f0d95e8f055c3f82838fdbeb03c6a907f8786c1046791db7e39cdcd9cb8f1889'], + }), + ('torchrl', '0.3.1', { + 'source_urls': ['https://github.com/pytorch/rl/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['882ed50cfd868c6b730834f2d7136a3039767061f075ba3cf194acf07e0be742'], + }), ] moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/PyZMQ/PyZMQ-26.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PyZMQ/PyZMQ-26.2.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ce73f419fe5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyZMQ/PyZMQ-26.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'PyZMQ' +version = '26.2.0' + +homepage = 'https://www.zeromq.org/bindings:python' +description = "Python bindings for ZeroMQ" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['070672c258581c8e4f640b5159297580a9974b026043bd4ab0470be9ed324f1f'] + +builddependencies = [ + ('binutils', '2.42'), + ('scikit-build-core', '0.10.6'), + ('Cython', '3.0.10'), +] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('ZeroMQ', '4.3.5'), +] + +options = {'modulename': 'zmq'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb index 28f432c762a..028a74e7034 100644 --- a/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/Pylint/Pylint-3.2.5-GCCcore-13.2.0.eb @@ -18,18 +18,11 @@ builddependencies = [ dependencies = [ ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('dill', '0.3.8'), ] exts_list = [ - ('dill', '0.3.8', { - 'checksums': ['3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca'], - }), - ('platformdirs', '4.2.2', { - 'checksums': ['38b7b51f512eed9e84a22788b4bce1de17c0adb134d6becb09836e37d8654cd3'], - }), - ('tomlkit', '0.12.5', { - 'checksums': ['eef34fba39834d4d6b73c9ba7f3e4d1c417a4e56f89a7e96e090dd0d24b8fb3c'], - }), ('astroid', '3.2.2', { 'checksums': ['8ead48e31b92b2e217b6c9733a21afafe479d52d6e164dd25fb1a770c7c3cf94'], }), 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..74668471254 --- /dev/null +++ b/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb @@ -0,0 +1,28 @@ +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'), +] + +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/parallel/parallel-20230722-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/parallel/parallel-20230722-GCCcore-12.3.0.eb index 7725cf4990a..32a4662d685 100644 --- a/easybuild/easyconfigs/p/parallel/parallel-20230722-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/parallel/parallel-20230722-GCCcore-12.3.0.eb @@ -14,13 +14,19 @@ checksums = ['55f991ad195a72f0abfaf1ede8fc1d03dd255cac91bc5eb900f9aa2873d1ff87'] builddependencies = [('binutils', '2.40')] -dependencies = [('Perl', '5.36.1')] +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] sanity_check_paths = { 'files': ['bin/parallel'], 'dirs': [] } -sanity_check_commands = ["parallel --help"] +sanity_check_commands = [ + 'parallel --help', + 'time parallel --csv echo < <(echo -e "task1\ntask2\ntask3")', +] moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/parallel/parallel-20240322-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/parallel/parallel-20240322-GCCcore-13.2.0.eb index 53acb414c76..4673651a654 100644 --- a/easybuild/easyconfigs/p/parallel/parallel-20240322-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/parallel/parallel-20240322-GCCcore-13.2.0.eb @@ -14,13 +14,19 @@ checksums = ['0b17029a203dabf7ba6ca7e52c2d3910fff46b2979476e12a9110920b79e6a95'] builddependencies = [('binutils', '2.40')] -dependencies = [('Perl', '5.38.0')] +dependencies = [ + ('Perl', '5.38.0'), + ('Perl-bundle-CPAN', '5.38.0'), +] sanity_check_paths = { 'files': ['bin/parallel'], 'dirs': [] } -sanity_check_commands = ["parallel --help"] +sanity_check_commands = [ + 'parallel --help', + 'time parallel --csv echo < <(echo -e "task1\ntask2\ntask3")', +] moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/parallel/parallel-20240722-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/parallel/parallel-20240722-GCCcore-13.3.0.eb index 92658cc24b7..e3f60b06f2c 100644 --- a/easybuild/easyconfigs/p/parallel/parallel-20240722-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/p/parallel/parallel-20240722-GCCcore-13.3.0.eb @@ -14,13 +14,19 @@ checksums = ['c7335471f776af28bea9464ad85a50f2ed120f78fbf75ead6647aeea8e0e53f0'] builddependencies = [('binutils', '2.42')] -dependencies = [('Perl', '5.38.2')] +dependencies = [ + ('Perl', '5.38.2'), + ('Perl-bundle-CPAN', '5.38.2'), +] sanity_check_paths = { 'files': ['bin/parallel'], 'dirs': [] } -sanity_check_commands = ["parallel --help"] +sanity_check_commands = [ + 'parallel --help', + 'time parallel --csv echo < <(echo -e "task1\ntask2\ntask3")', +] moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-12.3.0.eb index b87a53d6bda..d213a037191 100644 --- a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-12.3.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://github.com/NixOS/patchelf/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'] +patches = ['patchelf-0.18.0_fix-alignment.patch'] +checksums = [ + {'0.18.0.tar.gz': '1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'}, + {'patchelf-0.18.0_fix-alignment.patch': '87936627643b2212e8261b0f3d5905f12d0fc91f73503e12124f93ff972e0a03'}, +] builddependencies = [ ('binutils', '2.40'), diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.2.0.eb index 62d26c800db..6dd3411d14b 100644 --- a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.2.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '13.2.0'} source_urls = ['https://github.com/NixOS/patchelf/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'] +patches = ['patchelf-0.18.0_fix-alignment.patch'] +checksums = [ + {'0.18.0.tar.gz': '1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'}, + {'patchelf-0.18.0_fix-alignment.patch': '87936627643b2212e8261b0f3d5905f12d0fc91f73503e12124f93ff972e0a03'}, +] builddependencies = [ ('binutils', '2.40'), diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.3.0.eb index 9bf25222d44..10b4831c5f7 100644 --- a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0-GCCcore-13.3.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '13.3.0'} source_urls = ['https://github.com/NixOS/patchelf/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'] +patches = ['patchelf-0.18.0_fix-alignment.patch'] +checksums = [ + {'0.18.0.tar.gz': '1451d01ee3a21100340aed867d0b799f46f0b1749680028d38c3f5d0128fb8a7'}, + {'patchelf-0.18.0_fix-alignment.patch': '87936627643b2212e8261b0f3d5905f12d0fc91f73503e12124f93ff972e0a03'}, +] builddependencies = [ ('binutils', '2.42'), diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0_fix-alignment.patch b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0_fix-alignment.patch new file mode 100644 index 00000000000..20a233ddc66 --- /dev/null +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.18.0_fix-alignment.patch @@ -0,0 +1,31 @@ +Author - Pavel Tománek +Fix alignment problem when rewriting sections +https://github.com/NixOS/patchelf/pull/566 +--- src/patchelf.cc.orig 2024-10-07 16:45:17.515584318 +0200 ++++ src/patchelf.cc 2024-10-07 16:47:14.622270000 +0200 +@@ -843,7 +843,7 @@ + neededSpace += headerTableSpace; + debug("needed space is %d\n", neededSpace); + +- Elf_Off startOffset = roundUp(fileContents->size(), getPageSize()); ++ Elf_Off startOffset = roundUp(fileContents->size(), alignStartPage); + + // In older version of binutils (2.30), readelf would check if the dynamic + // section segment is strictly smaller than the file (and not same size). +@@ -879,7 +879,7 @@ + rdi(lastSeg.p_type) == PT_LOAD && + rdi(lastSeg.p_flags) == (PF_R | PF_W) && + rdi(lastSeg.p_align) == alignStartPage) { +- auto segEnd = roundUp(rdi(lastSeg.p_offset) + rdi(lastSeg.p_memsz), getPageSize()); ++ auto segEnd = roundUp(rdi(lastSeg.p_offset) + rdi(lastSeg.p_memsz), alignStartPage); + if (segEnd == startOffset) { + auto newSz = startOffset + neededSpace - rdi(lastSeg.p_offset); + wri(lastSeg.p_filesz, wri(lastSeg.p_memsz, newSz)); +@@ -898,6 +898,7 @@ + wri(phdr.p_filesz, wri(phdr.p_memsz, neededSpace)); + wri(phdr.p_flags, PF_R | PF_W); + wri(phdr.p_align, alignStartPage); ++ assert(startPage % alignStartPage == startOffset % alignStartPage); + } + + normalizeNoteSegments(); diff --git a/easybuild/easyconfigs/p/pblat/pblat-2.5.1-foss-2023a.eb b/easybuild/easyconfigs/p/pblat/pblat-2.5.1-foss-2023a.eb new file mode 100644 index 00000000000..a49d5fb0a74 --- /dev/null +++ b/easybuild/easyconfigs/p/pblat/pblat-2.5.1-foss-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'MakeCp' + +name = 'pblat' +version = '2.5.1' + +homepage = 'https://github.com/icebert/pblat' +description = """When the query file format is fasta, you can specify many threads to process it. + It can reduce run time linearly, and use almost equal memory as the original blat program. + This is useful when you blat a big query file to a huge reference like human whole genome sequence.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'icebert' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['e85a4d752b8e159502d529f0f9e47579851a6b466b6c2f1f4d49f598642bc615'] + +dependencies = [ + ('HTSlib', '1.18'), + ('zlib', '1.2.13'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +# use HTSlib dependency provided through EasyBuild +prebuildopts = "sed -i '5s/.\\/htslib/$\\{EBROOTHTSLIB\\}\\/include\\/htslib/' Makefile && " +prebuildopts += "sed -i '40s/ htslib\\/libhts.a//' Makefile && " +prebuildopts += "sed -i '41s/htslib\\/libhts.a/-lhts -lcurl/' Makefile && " +prebuildopts += "sed -i -e '/htslib\\/libhts.a:/,+2d' Makefile && " + +files_to_copy = [ + (['%(name)s'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [] +} + +sanity_check_commands = ["command -v %(name)s"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/phylo-treetime/phylo-treetime-0.11.4-foss-2023a.eb b/easybuild/easyconfigs/p/phylo-treetime/phylo-treetime-0.11.4-foss-2023a.eb new file mode 100644 index 00000000000..ee38ec6a171 --- /dev/null +++ b/easybuild/easyconfigs/p/phylo-treetime/phylo-treetime-0.11.4-foss-2023a.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'phylo-treetime' +version = '0.11.4' + +homepage = 'https://treetime.readthedocs.io/en/latest/index.html' +description = """TreeTime provides routines for ancestral sequence reconstruction and inference of + molecular-clock phylogenies, i.e., a tree where all branches are scaled such that the positions + of terminal nodes correspond to their sampling times and internal nodes are placed at the most + likely time of divergence. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Biopython', '1.83'), +] + +exts_list = [ + (name, version, { + 'checksums': ['f6b1506a58819204b010f5abe36627a127c0efa4cfd5008ea7f25dc0718c0f88'], + 'modulename': 'treetime', + }), +] + +sanity_check_paths = { + 'files': ['bin/treetime'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'bio' 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/pkgconf/pkgconf-1.8.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-10.3.0.eb index fa7cf70d46b..6c763def290 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-10.3.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.2.0.eb index 0d6dab08f33..acd1f2251ec 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.2.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.3.0.eb index cffdf67d1da..3e82ba18c42 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0-GCCcore-11.3.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0.eb index 710f2739928..1c340a27259 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.8.0.eb @@ -30,4 +30,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.3-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.3-GCCcore-12.2.0.eb index 2d47decfa86..05cf64168ab 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.3-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.3-GCCcore-12.2.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.4-GCCcore-13.1.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.4-GCCcore-13.1.0.eb index c80ab34d708..3f7c00ed2d2 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.4-GCCcore-13.1.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.4-GCCcore-13.1.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.5-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.5-GCCcore-12.3.0.eb index 1896354cb61..87bf0c0e104 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.5-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-1.9.5-GCCcore-12.3.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.0.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.0.3-GCCcore-13.2.0.eb index a9a638fa1ef..5a81ceda025 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.0.3-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.0.3-GCCcore-13.2.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0-GCCcore-13.3.0.eb index aaaecf30a9a..8294511f61a 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0-GCCcore-13.3.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0.eb index 3440e388cc3..5c877cef741 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.2.0.eb @@ -30,4 +30,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb index de13aa5fb33..76421187079 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb @@ -28,4 +28,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb index c90cecda0a1..b06a5414e80 100644 --- a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb @@ -30,4 +30,6 @@ sanity_check_commands = [ "pkgconf --help", ] +modextravars = {'PKG_CONFIG': '%(installdir)s/bin/pkgconf'} + moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/plotly.py/plotly.py-5.24.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/plotly.py/plotly.py-5.24.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a8e4950f9e7 --- /dev/null +++ b/easybuild/easyconfigs/p/plotly.py/plotly.py-5.24.1-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'plotly.py' +version = '5.24.1' + +homepage = 'https://plot.ly/python' +description = "An open-source, interactive graphing library for Python" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Python', '3.12.3'), +] + +exts_list = [ + ('tenacity', '9.0.0', { + 'patches': ['tenacity-9.0.0_fix_version.patch'], + 'preinstallopts': "sed -i 's/EB_TENACITY_VERSION/%(version)s/' setup.cfg && ", + 'checksums': [ + {'tenacity-9.0.0.tar.gz': '807f37ca97d62aa361264d497b0e31e92b8027044942bfa756160d908320d73b'}, + {'tenacity-9.0.0_fix_version.patch': '71a533470f03aab802439bda078494ab98804439afdb16f8287337bd3e0c8a82'}, + ], + }), + ('packaging', '24.1', { + 'checksums': ['026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002'], + }), + ('plotly', version, { + 'checksums': ['dbc8ac8339d248a4bcc36e08a5659bacfe1b079390b8953533f4eb22169b4bae'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/plotly.py/tenacity-9.0.0_fix_version.patch b/easybuild/easyconfigs/p/plotly.py/tenacity-9.0.0_fix_version.patch new file mode 100644 index 00000000000..9bd6e65af16 --- /dev/null +++ b/easybuild/easyconfigs/p/plotly.py/tenacity-9.0.0_fix_version.patch @@ -0,0 +1,15 @@ +# What: Putting a manually typed version in setup.cfg, as it wouldnt resolve automatically. +# Author: Denis Kristak (Inuits)diff -ruN tenacity-8.2.3_orig/setup.cfg tenacity-8.2.3/setup.cfg +# Updated for v9.0.0 by maxim-masterov (SURF) +# Updated with magic string to avoid having to update the patch for every version by Samuel Moors (Vrije Universiteit Brussel) +diff -Nru tenacity-9.0.0.orig/setup.cfg tenacity-9.0.0/setup.cfg +--- tenacity-9.0.0.orig/setup.cfg 2024-10-10 16:50:28.669538307 +0200 ++++ tenacity-9.0.0/setup.cfg 2024-10-10 16:50:54.881500726 +0200 +@@ -1,6 +1,7 @@ + [metadata] + name = tenacity + license = Apache 2.0 ++version = 'EB_TENACITY_VERSION' + url = https://github.com/jd/tenacity + summary = Retry code until it succeeds + long_description = Tenacity is a general-purpose retrying library to simplify the task of adding retry behavior to just about anything. 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..6476dc692b0 --- /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/prokka/prokka-1.14.5-gompi-2023a.eb b/easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023a.eb new file mode 100644 index 00000000000..2e84effbc53 --- /dev/null +++ b/easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023a.eb @@ -0,0 +1,50 @@ +# EasyBuild easyconfig +# +# John Dey jfdey@fredhutch.org +# Fred Hutchenson Cancer Research Center +# +# Updated: Pavel Grochal (INUITS) + +easyblock = 'Tarball' + +name = 'prokka' +version = '1.14.5' + +homepage = 'https://www.vicbioinformatics.com/software.prokka.shtml' +description = "Prokka is a software tool for the rapid annotation of prokaryotic genomes." + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://github.com/tseemann/prokka/archive/'] +sources = ['v%(version)s.zip'] +checksums = ['0c13dd5621c352633565f5831c4e85ce2e1e400c2f17ba50800282ae121803ff'] + +dependencies = [ + ('BioPerl', '1.7.8'), + ('BLAST+', '2.14.1'), + ('Java', '11', '', SYSTEM), + ('Bio-SearchIO-hmmer', '1.7.3'), + ('parallel', '20230722'), + ('tbl2asn', '20230713'), +] + +local_bin_files = ['prokka', 'prokka-cdd_to_hmm', 'prokka-genpept_to_fasta_db', 'prokka-tigrfams_to_hmm', + 'prokka-biocyc_to_fasta_db', 'prokka-clusters_to_hmm', 'prokka-hamap_to_hmm', + 'prokka-uniprot_to_fasta_db', 'prokka-build_kingdom_dbs', 'prokka-genbank_to_fasta_db', + 'prokka-make_tarball'] + +postinstallcmds = ["%(installdir)s/bin/prokka --setupdb"] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bin_files] + ['binaries/linux/aragorn', 'db/cm/Bacteria', 'doc/ToDoList.txt'], + 'dirs': ['bin', 'binaries', 'db', 'db/cm', 'db/genus', 'db/hmm', 'db/kingdom', 'doc'], +} + +sanity_check_commands = [ + "prokka --version", + "prokka --listdb", +] + +modloadmsg = "prokka scripts are located in $EBROOTPROKKA/bin; databases are located in $EBROOTPROKKA/db\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023b.eb b/easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023b.eb new file mode 100644 index 00000000000..bd7648a5418 --- /dev/null +++ b/easybuild/easyconfigs/p/prokka/prokka-1.14.5-gompi-2023b.eb @@ -0,0 +1,50 @@ +# EasyBuild easyconfig +# +# John Dey jfdey@fredhutch.org +# Fred Hutchenson Cancer Research Center +# +# Updated: Pavel Grochal (INUITS) + +easyblock = 'Tarball' + +name = 'prokka' +version = '1.14.5' + +homepage = 'https://www.vicbioinformatics.com/software.prokka.shtml' +description = "Prokka is a software tool for the rapid annotation of prokaryotic genomes." + +toolchain = {'name': 'gompi', 'version': '2023b'} + +source_urls = ['https://github.com/tseemann/prokka/archive/'] +sources = ['v%(version)s.zip'] +checksums = ['0c13dd5621c352633565f5831c4e85ce2e1e400c2f17ba50800282ae121803ff'] + +dependencies = [ + ('BioPerl', '1.7.8'), + ('BLAST+', '2.16.0'), + ('Java', '11', '', SYSTEM), + ('Bio-SearchIO-hmmer', '1.7.3'), + ('parallel', '20240322'), + ('tbl2asn', '20230713'), +] + +local_bin_files = ['prokka', 'prokka-cdd_to_hmm', 'prokka-genpept_to_fasta_db', 'prokka-tigrfams_to_hmm', + 'prokka-biocyc_to_fasta_db', 'prokka-clusters_to_hmm', 'prokka-hamap_to_hmm', + 'prokka-uniprot_to_fasta_db', 'prokka-build_kingdom_dbs', 'prokka-genbank_to_fasta_db', + 'prokka-make_tarball'] + +postinstallcmds = ["%(installdir)s/bin/prokka --setupdb"] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bin_files] + ['binaries/linux/aragorn', 'db/cm/Bacteria', 'doc/ToDoList.txt'], + 'dirs': ['bin', 'binaries', 'db', 'db/cm', 'db/genus', 'db/hmm', 'db/kingdom', 'doc'], +} + +sanity_check_commands = [ + "prokka --version", + "prokka --listdb", +] + +modloadmsg = "prokka scripts are located in $EBROOTPROKKA/bin; databases are located in $EBROOTPROKKA/db\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/psutil/psutil-6.1.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/psutil/psutil-6.1.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..c6066150cb2 --- /dev/null +++ b/easybuild/easyconfigs/p/psutil/psutil-6.1.0-GCCcore-13.2.0.eb @@ -0,0 +1,23 @@ +easyblock = 'PythonBundle' + +name = 'psutil' +version = '6.1.0' + +homepage = 'https://github.com/giampaolo/psutil' +description = """A cross-platform process and system utilities module for Python""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [('Python', '3.11.5')] + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/giampaolo/psutil/archive'], + 'sources': ['release-%(version)s.tar.gz'], + 'checksums': ['0ffb8a92fac0e89c10b0beb152acae27975fd488d0b9938e441106f319e7599c'], + }), +] + +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..ce82dbcb5e0 --- /dev/null +++ b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb @@ -0,0 +1,20 @@ +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'), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/purge_dups/KMC-dfguan-c05a5f9_use_EB_pybind11_and_libs.patch b/easybuild/easyconfigs/p/purge_dups/KMC-dfguan-c05a5f9_use_EB_pybind11_and_libs.patch new file mode 100644 index 00000000000..465979ce64b --- /dev/null +++ b/easybuild/easyconfigs/p/purge_dups/KMC-dfguan-c05a5f9_use_EB_pybind11_and_libs.patch @@ -0,0 +1,39 @@ +Use pybind11 from EasyBuild install +Required to use Python != 3.10 +Also use zlib and bzip2 from EB install + +Åke Sandgren, 2024-12-09 +diff --git a/makefile b/makefile +index 09f4de3..918dcae 100644 +--- a/makefile ++++ b/makefile +@@ -36,9 +36,7 @@ $(KMC_MAIN_DIR)/raduls_sse41.o \ + $(KMC_MAIN_DIR)/raduls_avx2.o \ + $(KMC_MAIN_DIR)/raduls_avx.o + +-KMC_LIBS = \ +-$(KMC_MAIN_DIR)/libs/libz.a \ +-$(KMC_MAIN_DIR)/libs/libbz2.a ++KMC_LIBS = -lz -lbz2 + + KMC_DUMP_OBJS = \ + $(KMC_DUMP_DIR)/nc_utils.o \ +@@ -64,9 +62,7 @@ $(KMC_TOOLS_DIR)/fastq_reader.o \ + $(KMC_TOOLS_DIR)/fastq_writer.o \ + $(KMC_TOOLS_DIR)/percent_progress.o + +-KMC_TOOLS_LIBS = \ +-$(KMC_TOOLS_DIR)/libs/libz.a \ +-$(KMC_TOOLS_DIR)/libs/libbz2.a ++KMC_TOOLS_LIBS = -lz -lbz2 + + $(KMC_OBJS) $(KMC_DUMP_OBJS) $(KMC_API_OBJS): %.o: %.cpp + $(CC) $(CFLAGS) -c $< -o $@ +@@ -102,7 +98,6 @@ py_kmc_api: $(PY_KMC_API_OBJS) $(PY_KMC_API_OBJS) + -mkdir -p $(KMC_BIN_DIR) + $(CC) -fPIC -Wall -shared -std=c++11 -O3 $(PY_KMC_API_DIR)/py_kmc_api.cpp $(PY_KMC_API_OBJS) \ + -I $(KMC_API_DIR) \ +- -I $(PY_KMC_API_DIR)/libs/pybind11/include \ + -I `python3 -c "import sysconfig;print(sysconfig.get_paths()['include'])"` \ + -o $(KMC_BIN_DIR)/$@`python3-config --extension-suffix` + diff --git a/easybuild/easyconfigs/p/purge_dups/purge_dups-1.2.6-foss-2023b.eb b/easybuild/easyconfigs/p/purge_dups/purge_dups-1.2.6-foss-2023b.eb new file mode 100644 index 00000000000..d178bbb6406 --- /dev/null +++ b/easybuild/easyconfigs/p/purge_dups/purge_dups-1.2.6-foss-2023b.eb @@ -0,0 +1,81 @@ +easyblock = 'PythonBundle' + +name = 'purge_dups' +version = '1.2.6' + +homepage = 'https://github.com/dfguan/purge_dups' +description = "purge haplotigs and overlaps in an assembly based on read depth" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('pybind11', '2.11.1'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('Python', '3.11.5'), + ('matplotlib', '3.8.2'), + ('minimap2', '2.28'), +] + +default_easyblock = 'MakeCp' + +components = [ + (name, version, { + 'source_urls': ['https://github.com/dfguan/purge_dups/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['75b20df834d28410858ccd4e2d65b6c70849f3cbe5fc05959f38bfc2d041c704'], + 'start_dir': 'purge_dups-%(version)s', + 'prebuildopts': "cd src && ", + 'buildopts': 'CC="$CC" CFLAGS="$CFLAGS"', + 'files_to_copy': ['bin', 'scripts'], + }), + ('KMC', '20190629', { + 'source_urls': ['https://github.com/dfguan/KMC/archive'], + 'sources': [{'download_filename': 'c05a5f9.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'patches': [{ + 'name': 'KMC-dfguan-c05a5f9_use_EB_pybind11_and_libs.patch', + 'sourcepath': 'KMC-c05a5f9fd94683248ebe04484a60f86792cf328f', + }], + 'checksums': [ + '7251941f4b1913bfdd68759d9292b419d95fe7c63815056e15ecb097a12a0bc4', + '2f54971aae26787777d0e4b638a9682bd4bc22cbf3fda170c7baf4c610808ac9', + ], + 'prebuildopts': 'cd KMC-* && ', + 'buildopts': 'CC="$CXX"', + 'files_to_copy': [(['KMC-*/bin/*kmc*'], 'bin'), 'KMC-*/spectra.py'], + }), +] + +exts_list = [ + ('runner', '20191220', { + 'preinstallopts': "sed -i 's/0.0.0/%(version)s/g' setup.py && ", + 'sources': [{ + 'git_config': { + 'url': 'https://github.com/dfguan/', + 'repo_name': 'runner', + 'commit': '73a4d11', + }, + 'filename': 'runner-%(version)s.tar.gz', + }], + 'checksums': [None], + }), +] + +sanity_check_paths = { + 'files': ['bin/kmc', 'bin/purge_dups'], + 'dirs': ['scripts'], +} + +sanity_check_commands = [ + "purge_dups -h 2>&1 | grep 'Program: purge_dups'", + "kmc --help", + "run_purge_dups.py -h", + "hist_plot.py -h", +] + +modextrapaths = {'PATH': 'scripts'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pyWannier90/pyWannier90-2024-01-28-foss-2023a.eb b/easybuild/easyconfigs/p/pyWannier90/pyWannier90-2024-01-28-foss-2023a.eb new file mode 100644 index 00000000000..eb9e8a3b1b4 --- /dev/null +++ b/easybuild/easyconfigs/p/pyWannier90/pyWannier90-2024-01-28-foss-2023a.eb @@ -0,0 +1,71 @@ +easyblock = 'MakeCp' + +name = 'pyWannier90' +local_commit = 'c3f65d7' +version = '2024-01-28' + +homepage = 'https://github.com/hungpham2017/pyWannier90' +description = "A Wannier90 Python interface for VASP and PySCF" + +toolchain = {'name': 'foss', 'version': '2023a'} + +local_wannier90_version = '3.1.0' + +sources = [ + { + 'source_urls': ['https://github.com/hungpham2017/pyWannier90/archive/'], + 'download_filename': '%s.tar.gz' % local_commit, + 'filename': SOURCE_TAR_GZ + }, + { + 'source_urls': ['https://github.com/wannier-developers/wannier90/archive/'], + 'download_filename': 'v%s.tar.gz' % local_wannier90_version, + 'filename': 'Wannier90-%s.tar.gz' % local_wannier90_version, + }, +] +checksums = [ + {'pyWannier90-2024-01-28.tar.gz': '9828dcdde92b9627cfe888b5be530040c1c51c97f5a3c930d82ef24d862610e3'}, + {'Wannier90-3.1.0.tar.gz': '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254'}, +] + +builddependencies = [ + ('pybind11', '2.11.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('PySCF', '2.7.0'), +] + +local_wannier90_make = 'make -j %(parallel)s F90="$F90" FCOPTS="$FFLAGS -fPIC" LDOPTS="$FFLAGS" ' +local_wannier90_make += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK"' + +prebuildopts = "sed -i 's/ -undefined dynamic_lookup//g' src/Makefile && " +prebuildopts += "cd %%(builddir)s/wannier90-%s && touch make.inc && " % local_wannier90_version +prebuildopts += "cp %(builddir)s/pyWannier90-*/src/wannier_lib.F90 src/wannier_lib.F90 && " +prebuildopts += local_wannier90_make + " && " +prebuildopts += local_wannier90_make + " lib && " +prebuildopts += "cd %(builddir)s/pyWannier90-*/src && " + +buildopts = 'CPP="$CXX" LIBS="-L%%(builddir)s/wannier90-%s $LIBLAPACK -lwannier" ' % local_wannier90_version +# with Intel compilers, use libwannier90_intel as make target +# with GCC compilers, use libwannier90_gf as make target +buildopts += "libwannier90_gf && " +buildopts += """sed -i "s@W90LIB = .*@W90LIB = '%(installdir)s'@g" pywannier90.py""" + +files_to_copy = [ + (['src/pywannier90.py', 'src/libwannier90.*.%s' % SHLIB_EXT], 'lib/python%(pyshortver)s/site-packages'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import libwannier90'", + "python -c 'import pywannier90'", +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb new file mode 100644 index 00000000000..e8fd263abf4 --- /dev/null +++ b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb @@ -0,0 +1,21 @@ +easyblock = 'PythonPackage' + +name = 'pybedtools' +version = '0.10.0' + +homepage = 'https://daler.github.io/pybedtools' +description = "pybedtools wraps and extends BEDTools and offers feature-level manipulations from within Python." + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['1a6fbaad23b013becc741d7d5922a2df03e391bc44ff92772ffb7dd456711161'] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('BEDTools', '2.31.1'), + ('Pysam', '0.22.0'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pyproj/pyproj-3.7.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pyproj/pyproj-3.7.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ae90d803f3c --- /dev/null +++ b/easybuild/easyconfigs/p/pyproj/pyproj-3.7.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'pyproj' +version = '3.7.0' + +homepage = 'https://pyproj4.github.io/pyproj' +description = "Python interface to PROJ4 library for cartographic transformations" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['bf658f4aaf815d9d03c8121650b6f0b8067265c36e31bc6660b98ef144d81813'] + +builddependencies = [ + ('binutils', '2.42'), + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('PROJ', '9.4.1'), +] + +preinstallopts = "export PROJ_DIR=$EBROOTPROJ && " + +sanity_check_paths = { + 'files': ['bin/pyproj'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['pyproj --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e75df5c8f1f --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'pytest-xdist' +version = '3.6.1' + +homepage = 'https://github.com/pytest-dev/pytest-xdist' +description = """xdist: pytest distributed testing plugin + +The pytest-xdist plugin extends pytest with some unique test execution modes: + + * test run parallelization: if you have multiple CPUs or hosts you + can use those for a combined test run. This allows to speed up + development or to use special resources of remote machines. + + * --looponfail: run your tests repeatedly in a subprocess. After + each run pytest waits until a file in your project changes and + then re-runs the previously failing tests. This is repeated + until all tests pass after which again a full run is + performed. + + * Multi-Platform coverage: you can specify different Python + interpreters or different platforms and run tests in parallel on + all of them. + +Before running tests remotely, pytest efficiently “rsyncs” your +program source code to the remote place. All test results are reported +back and displayed to your local terminal. You may specify different +Python versions and interpreters.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('pytest', '8.3.3'), +] + +exts_list = [ + ('apipkg', '3.0.2', { + 'checksums': ['c7aa61a4f82697fdaa667e70af1505acf1f7428b1c27b891d204ba7a8a3c5e0d'], + }), + ('execnet', '2.1.1', { + 'checksums': ['5189b52c6121c24feae288166ab41b32549c7e2348652736540b9e6e7d4e72e3'], + }), + (name, version, { + 'modulename': 'xdist', + 'source_tmpl': 'pytest_xdist-%(version)s.tar.gz', + 'checksums': ['ead156a4db231eec769737f57668ef58a2084a34b2e55c4a8fa20d861107300d'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fd07c07c5df --- /dev/null +++ b/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb @@ -0,0 +1,68 @@ +easyblock = 'PythonBundle' + +name = 'pytest' +version = '8.3.3' + +homepage = 'https://docs.pytest.org/en/latest/' +description = """The pytest framework makes it easy to write small, +readable tests, and can scale to support complex functional testing for +applications and libraries.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +exts_default_options = {'source_urls': [PYPI_LOWER_SOURCE]} + +# Note! Some of the file system related tests may fail on shared file systems. +# Notably TestPOSIXLocalPath.test_copy_stat_file, TestPOSIXLocalPath.test_copy_stat_dir +# and test_source_mtime_long_long are known to fail on GPFS +# Build with buildpath and tmpdir set to a local file system to avoid this +# or use --ignore-test-failures +_skip_tests = [ + 'testing/io/test_terminalwriter.py', + 'testing/test_terminal.py', + 'testing/test_debugging.py', + 'testing/test_config.py', + 'testing/test_helpconfig.py', +] +_ignore_tests = ' --ignore='.join(_skip_tests) + +exts_list = [ + ('setuptools-scm', '8.1.0', { + 'source_tmpl': 'setuptools_scm-%(version)s.tar.gz', + 'checksums': ['42dea1b65771cba93b7a515d65a65d8246e560768a66b9106a592c8e7f26c8a7'], + }), + ('flit-core', '3.10.1', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['66e5b87874a0d6e39691f0e22f09306736b633548670ad3c09ec9db03c5662f7'], + }), + ('hypothesis', '6.119.0', { + 'checksums': ['ca441c6ef55d17f27f642fa08657e80f9c13d9da7ae191c8ad58fbc2f16acd1b'], + }), + ('elementpath', '4.6.0', { + 'checksums': ['ba46bf07f66774927727ade55022b6c435fac06b2523cb3cd7689a1884d33468'], + }), + ('xmlschema', '3.4.3', { + 'checksums': ['0c638dac81c7d6c9da9a8d7544402c48cffe7ee0e13cc47fc0c18794d1395dfb'], + }), + (name, version, { + 'checksums': ['70b98107bd648308a7952b06e6ca9a50bc660be218d53c257cc1fc94fda10181'], + }), +] + +sanity_check_commands = [ + "python -c 'import pytest'", + 'cd %%(builddir)s/%%(name)s/%%(name)s-%%(version)s && %%(installdir)s/bin/pytest --ignore=%s testing' + % _ignore_tests, +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/q/QCG-PilotJob/QCG-PilotJob-0.14.1-gfbf-2024a.eb b/easybuild/easyconfigs/q/QCG-PilotJob/QCG-PilotJob-0.14.1-gfbf-2024a.eb new file mode 100644 index 00000000000..240d17ebd33 --- /dev/null +++ b/easybuild/easyconfigs/q/QCG-PilotJob/QCG-PilotJob-0.14.1-gfbf-2024a.eb @@ -0,0 +1,66 @@ +easyblock = 'PythonBundle' + +name = 'QCG-PilotJob' +version = '0.14.1' + +homepage = 'https://qcg-pilotjob.readthedocs.org' +description = "A python service for easy execution of many tasks inside a single allocation." + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('PyZMQ', '26.2.0'), + ('Kaleido', '0.2.1'), + ('statsmodels', '0.14.4'), + ('plotly.py', '5.24.1'), + ('hatchling', '1.24.2'), +] + +exts_list = [ + ('patsy', '0.5.6', { + 'checksums': ['95c6d47a7222535f84bff7f63d7303f2e297747a598db89cf5c67f0c0c7d2cdb'], + }), + ('plotly_express', '0.4.1', { + 'checksums': ['ff73a41ce02fb43d1d8e8fa131ef3e6589857349ca216b941b8f3f862bce0278'], + }), + ('prompt_toolkit', '3.0.48', { + 'checksums': ['d6623ab0477a80df74e646bdbc93621143f5caf104206aa29294d53de1a03d90'], + }), + ('trove-classifiers', '2024.10.13', { + 'patches': ['trove-classifiers-2024.10.13_fix_setup.patch'], + 'source_tmpl': 'trove_classifiers-2024.10.13.tar.gz', + 'checksums': [ + {'trove_classifiers-2024.10.13.tar.gz': 'b820fc6f9544543afa15e5d9cfc426cde3b20fc2246dff6f019b835731508cef'}, + {'trove-classifiers-2024.10.13_fix_setup.patch': + 'c90cace5dd0b8a98c60c68681fe453aea97c99038df21c8ad10e11c6816d84af'}, + ], + }), + ('hatch_vcs', '0.4.0', { + 'checksums': ['093810748fe01db0d451fabcf2c1ac2688caefd232d4ede967090b1c1b07d9f7'], + }), + ('setuptools-scm', '8.1.0', { + 'source_tmpl': 'setuptools_scm-8.1.0.tar.gz', + 'checksums': ['42dea1b65771cba93b7a515d65a65d8246e560768a66b9106a592c8e7f26c8a7'], + }), + ('termcolor', '2.5.0', { + 'checksums': ['998d8d27da6d48442e8e1f016119076b690d962507531df4890fcd2db2ef8a6f'], + }), + ('qcg-pilotjob', version, { + 'modulename': 'qcg.pilotjob', + 'checksums': [ + {'qcg-pilotjob-0.14.1.tar.gz': 'f7e162851dce8d94ee424113bc528bfd0d8cc4668e33a3fd9f058ffce9ef409b'}, + ], + }), + ('qcg-pilotjob-cmds', version, { + 'modulename': 'qcg.pilotjob.cmds', + 'checksums': ['58b2b14a278fc255cad0cec308316242b82cb3a08d6e6a517206af1930b09fe3'], + }), + ('qcg-pilotjob-executor-api', version, { + 'modulename': 'qcg.pilotjob.api', + 'checksums': ['66277105b31d5a6ee3cf87d980ce63298d05f466dd102c2ec65ecdb30545e154'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/q/QCG-PilotJob/trove-classifiers-2024.10.13_fix_setup.patch b/easybuild/easyconfigs/q/QCG-PilotJob/trove-classifiers-2024.10.13_fix_setup.patch new file mode 100644 index 00000000000..b1a4d34af27 --- /dev/null +++ b/easybuild/easyconfigs/q/QCG-PilotJob/trove-classifiers-2024.10.13_fix_setup.patch @@ -0,0 +1,13 @@ +# What: Put manually typed version in setup.py +# Author: maxim-masterov (SURF) +diff -Nru trove_classifiers-2024.10.13.orig/setup.py trove_classifiers-2024.10.13/setup.py +--- trove_classifiers-2024.10.13.orig/setup.py 2024-10-14 23:32:23.824712949 +0200 ++++ trove_classifiers-2024.10.13/setup.py 2024-10-14 23:33:35.655405794 +0200 +@@ -12,6 +12,7 @@ + setup( + name="trove-classifiers", + description="Canonical source for classifiers on PyPI (pypi.org).", ++ version="2024.10.13", + long_description=long_description, + long_description_content_type="text/markdown", + url="https://github.com/pypa/trove-classifiers", diff --git a/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..deb2902a42a --- /dev/null +++ b/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2-GCCcore-13.3.0.eb @@ -0,0 +1,90 @@ +easyblock = 'CMakeNinja' + +name = 'Qt6' +version = '6.7.2' + +homepage = 'https://qt.io/' +description = "Qt is a comprehensive cross-platform C++ application framework." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X) +toolchainopts = {'vectorize': False} + +source_urls = [ + 'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/', +] +sources = ['qt-everywhere-src-%(version)s.tar.xz'] +patches = [ + '%(name)s-6.6.3_fix_OF-Gentoo.patch', + 'Qt6-6.7.2_fix_cpu_features.patch', +] +checksums = [ + {'qt-everywhere-src-6.7.2.tar.xz': '0aaea247db870193c260e8453ae692ca12abc1bd841faa1a6e6c99459968ca8a'}, + {'Qt6-6.6.3_fix_OF-Gentoo.patch': 'd4d4878ac76cb985e45eb3b6e90ba2233f65807d6bd9bbe2b71365b181347b7b'}, + {'Qt6-6.7.2_fix_cpu_features.patch': '3f37e7a4e4ed38cc82037be9504bc644e48bf258555ffff848183142725c9dc8'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + # deps for QtWebEngine + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('gperf', '3.1'), + ('re2c', '3.1'), +] +dependencies = [ + ('double-conversion', '3.3.0'), + ('GLib', '2.80.4'), + ('PCRE2', '10.43'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), + ('libwebp', '1.4.0'), + ('JasPer', '4.2.4'), + ('HarfBuzz', '9.0.0'), + ('SQLite', '3.45.3'), + ('graphite2', '1.3.14'), + ('assimp', '5.4.3'), # for Qt 3D + ('FFmpeg', '7.0.2'), + ('X11', '20240607'), + ('fontconfig', '2.15.0'), + ('zlib', '1.3.1'), + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('freetype', '2.13.2'), # WebEngine + ('DBus', '1.15.8'), + ('libevent', '2.1.12'), # WebEngine + ('libGLU', '9.0.3'), + ('libjpeg-turbo', '3.0.1'), # WebEngine + ('NSS', '3.104'), # WebEngine, required + ('snappy', '1.2.1'), # WebEngine + ('OpenSSL', '3', '', SYSTEM), + ('ICU', '75.1'), + ('nodejs', '20.13.1'), + # ('gRPC', '1.52.2'), # WebEngine needs older Abseil/gRPC/protobuf +] + +preconfigopts = 'sed -i "s/MultiMedia/Multimedia/g" ../qt-everywhere-src-%(version)s/qtcharts/CMakeLists.txt && ' + +preconfigopts += 'sed -i "23i set(Python3_ROOT_DIR \\$ENV{EBROOTPYTHON})" ' +preconfigopts += '../qt-everywhere-src-%(version)s/qtwebengine/src/gn/CMakeLists.txt && ' # Typo + +configopts = "-Wno-dev -DFEATURE_qtpdf_build=OFF -DQT_AVOID_CMAKE_ARCHIVING_API=ON " +configopts += "-DPython3_ROOT_DIR=$EBROOTPYTHON -DBUILD_qtwayland=OFF " + + +# Removed from Qt6.0.0 but may be added back in the future +# configopts += '-DBUILD_qtgamepad=OFF ' # Does not work on CentOS 7 + +sanity_check_paths = { + 'files': ['bin/qmake6', 'lib/libQt6Core.%s' % SHLIB_EXT, 'lib/libQt6WebEngineCore.%s' % SHLIB_EXT], + 'dirs': ['include/QtCore', 'include/QtWebEngineCore'], +} + +sanity_check_commands = ['qmake6 --help'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2_fix_cpu_features.patch b/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2_fix_cpu_features.patch new file mode 100644 index 00000000000..0109ba0726b --- /dev/null +++ b/easybuild/easyconfigs/q/Qt6/Qt6-6.7.2_fix_cpu_features.patch @@ -0,0 +1,56 @@ +# What: Comment out incorrect detection of CPU features when only AVX2 flag is set. +# See relevant bug reports: +# https://bugs.gentoo.org/908420 +# https://bugs.gentoo.org/898644 +# Author: maxim-masterov (SURF) +diff -Nru qt-everywhere-src-6.7.2.orig/qtbase/src/corelib/global/qsimd_p.h qt-everywhere-src-6.7.2/qtbase/src/corelib/global/qsimd_p.h +--- qt-everywhere-src-6.7.2.orig/qtbase/src/corelib/global/qsimd_p.h 2024-09-20 12:05:26.732359000 +0200 ++++ qt-everywhere-src-6.7.2/qtbase/src/corelib/global/qsimd_p.h 2024-09-23 22:31:44.861936347 +0200 +@@ -227,14 +227,14 @@ + # if defined(__AVX2__) + // List of features present with -march=x86-64-v3 and not architecturally + // implied by __AVX2__ +-# define ARCH_HASWELL_MACROS \ +- (__AVX2__ + __BMI__ + __BMI2__ + __F16C__ + __FMA__ + __LZCNT__ + __POPCNT__) +-# if ARCH_HASWELL_MACROS != 7 +-# error "Please enable all x86-64-v3 extensions; you probably want to use -march=haswell or -march=x86-64-v3 instead of -mavx2" +-# endif +-static_assert(ARCH_HASWELL_MACROS, "Undeclared identifiers indicate which features are missing."); +-# define __haswell__ 1 +-# undef ARCH_HASWELL_MACROS ++//# define ARCH_HASWELL_MACROS \ ++// (__AVX2__ + __BMI__ + __BMI2__ + __F16C__ + __FMA__ + __LZCNT__ + __POPCNT__) ++//# if ARCH_HASWELL_MACROS != 7 ++//# error "Please enable all x86-64-v3 extensions; you probably want to use -march=haswell or -march=x86-64-v3 instead of -mavx2" ++//# endif ++//static_assert(ARCH_HASWELL_MACROS, "Undeclared identifiers indicate which features are missing."); ++//# define __haswell__ 1 ++//# undef ARCH_HASWELL_MACROS + # endif + + // x86-64 sub-architecture version 4 +@@ -244,15 +244,15 @@ + // with AVX512 support and it includes all of these too. The GNU libc subdir for + // this is "glibc-hwcaps/x86-64-v4". + // +-# define ARCH_SKX_MACROS (__AVX512F__ + __AVX512BW__ + __AVX512CD__ + __AVX512DQ__ + __AVX512VL__) +-# if ARCH_SKX_MACROS != 0 +-# if ARCH_SKX_MACROS != 5 +-# error "Please enable all x86-64-v4 extensions; you probably want to use -march=skylake-avx512 or -march=x86-64-v4 instead of -mavx512f" +-# endif +-static_assert(ARCH_SKX_MACROS, "Undeclared identifiers indicate which features are missing."); +-# define __skylake_avx512__ 1 +-# endif +-# undef ARCH_SKX_MACROS ++//# define ARCH_SKX_MACROS (__AVX512F__ + __AVX512BW__ + __AVX512CD__ + __AVX512DQ__ + __AVX512VL__) ++//# if ARCH_SKX_MACROS != 0 ++//# if ARCH_SKX_MACROS != 5 ++//# error "Please enable all x86-64-v4 extensions; you probably want to use -march=skylake-avx512 or -march=x86-64-v4 instead of -mavx512f" ++//# endif ++//static_assert(ARCH_SKX_MACROS, "Undeclared identifiers indicate which features are missing."); ++//# define __skylake_avx512__ 1 ++//# endif ++//# undef ARCH_SKX_MACROS + #endif /* Q_PROCESSOR_X86 */ + + // NEON intrinsics diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.3.1-foss-2024a.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.3.1-foss-2024a.eb new file mode 100644 index 00000000000..8cbd539a51d --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.3.1-foss-2024a.eb @@ -0,0 +1,159 @@ +name = 'QuantumESPRESSO' +version = '7.3.1' + +homepage = 'https://www.quantum-espresso.org' +description = """Quantum ESPRESSO is an integrated suite of computer codes +for electronic-structure calculations and materials modeling at the nanoscale. +It is based on density-functional theory, plane waves, and pseudopotentials +(both norm-conserving and ultrasoft). +""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +toolchainopts = { + "usempi": True, + "openmp": True, +} + +# Check hashes inside external/submodule_commit_hash_records when making file for new version +local_lapack_hash = "12d825396fcef1e0a1b27be9f119f9e554621e55" +local_mbd_hash = "82005cbb65bdf5d32ca021848eec8f19da956a77" +local_devxlib_hash = "a6b89ef77b1ceda48e967921f1f5488d2df9226d" +local_fox_hash = "3453648e6837658b747b895bb7bef4b1ed2eac40" +# Different from the one at tag qe-7.3.1 because of: +# https://gitlab.com/QEF/q-e/-/issues/666 +local_d3q_hash = "de4718351e7bbb9d1d12aad2b7ca232d06775b83" +# Different from the one at tag qe-7.3.1 because of: +# https://github.com/dceresoli/qe-gipaw/issues/19 +local_qe_gipaw_hash = "79d3a03b7bdc4325e66f3fad02a24c6e6e3e5806" +local_qmcpack_hash = "f72ab25fa4ea755c1b4b230ae8074b47d5509c70" +local_w90_hash = "1d6b187374a2d50b509e5e79e2cab01a79ff7ce1" + + +sources = [ + { + "filename": "q-e-qe-%(version)s.tar.gz", + "extract_cmd": "mkdir -p %(builddir)s/qe-%(version)s && tar xzvf %s --strip-components=1 -C $_", + "source_urls": ["https://gitlab.com/QEF/q-e/-/archive/qe-%(version)s"], + }, + { + "filename": "lapack-%s.tar.gz" % local_lapack_hash, + "git_config": { + "url": "https://github.com/Reference-LAPACK", + "repo_name": "lapack", + "commit": local_lapack_hash, + }, + }, + { + "filename": "mbd-%s.tar.gz" % local_mbd_hash, + "git_config": { + "url": "https://github.com/libmbd", + "repo_name": "libmbd", + "commit": local_mbd_hash, + 'clone_into': 'mbd', + }, + }, + { + "filename": "devxlib-%s.tar.gz" % local_devxlib_hash, + "git_config": { + "url": "https://gitlab.com/max-centre/components", + "repo_name": "devicexlib", + "commit": local_devxlib_hash, + 'clone_into': 'devxlib', + }, + }, + { + "filename": "d3q-%s.tar.gz" % local_d3q_hash, + "git_config": { + "url": "https://github.com/anharmonic", + "repo_name": "d3q", + "commit": local_d3q_hash, + }, + }, + { + "filename": "fox-%s.tar.gz" % local_fox_hash, + "git_config": { + "url": "https://github.com/pietrodelugas", + "repo_name": "fox", + "commit": local_fox_hash, + }, + }, + { + "filename": "qe-gipaw-%s.tar.gz" % local_qe_gipaw_hash, + "git_config": { + "url": "https://github.com/dceresoli", + "repo_name": "qe-gipaw", + "commit": local_qe_gipaw_hash, + }, + }, + { + "filename": "pw2qmcpack-%s.tar.gz" % local_qmcpack_hash, + "git_config": { + "url": "https://github.com/QMCPACK", + "repo_name": "pw2qmcpack", + "commit": local_qmcpack_hash, + }, + }, + { + "filename": "wannier90-%s.tar.gz" % local_w90_hash, + "git_config": { + "url": "https://github.com/wannier-developers", + "repo_name": "wannier90", + "commit": local_w90_hash, + }, + }, +] +# Holding off checksum checks untill 5.0.x +# https://github.com/easybuilders/easybuild-framework/pull/4248 +# checksums = [ +# {'q-e-qe-7.3.1.tar.gz': '2c58b8fadfe4177de5a8b69eba447db5e623420b070dea6fd26c1533b081d844'}, +# {'lapack-%s.tar.gz' % local_lapack_hash: 'c05532ae0e5fe35f473206dda12970da5f2e2214620487d71837ddcf0ea6b21d'}, +# {'mbd-%s.tar.gz' % local_mbd_hash: 'a180682c00bb890c9b1e26a98addbd68e32f970c06439acf7582415f4c589800'}, +# {'devxlib-%s.tar.gz' % local_devxlib_hash: '76da8fe5a2050f58efdc92fa8831efec25c19190df7f4e5e39c173a5fbae83b4'}, +# {'d3q-%s.tar.gz' % local_d3q_hash: '43e50753a56af05d181b859d3e29d842fb3fc4352f00cb7fe229a435a1f20c31'}, +# {'fox-%s.tar.gz' % local_fox_hash: '99b6a899a3f947d7763aa318e86f9f08db684568bfdcd293f3318bee9d7f1948'}, +# {'qe-gipaw-%s.tar.gz' % local_qe_gipaw_hash: '9ac8314363d29cc2f1ce85abd8f26c1a3ae311d54f6e6034d656442dd101c928'}, +# {'pw2qmcpack-%s.tar.gz' % local_qmcpack_hash: 'a8136da8429fc49ab560ef7356cd6f0a2714dfbb137baff7961f46dfe32061eb'}, +# {'wannier90-%s.tar.gz' % local_w90_hash: 'f989497790ec9777bdc159945bbf42156edb7268011f972874dec67dd4f58658'}, +# ] +checksums = [ + '2c58b8fadfe4177de5a8b69eba447db5e623420b070dea6fd26c1533b081d844', + None, None, None, None, None, None, None, None +] + +builddependencies = [ + ('M4', '1.4.19'), + ('CMake', '3.29.3'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('HDF5', '1.14.5'), + ('ELPA', '2024.05.001'), + ('libxc', '6.2.2'), +] + +# Disabled because of +# https://gitlab.com/QEF/q-e/-/issues/667 +# https://github.com/anharmonic/d3q/issues/15 +build_shared_libs = False +with_scalapack = True +with_fox = True +with_gipaw = True +with_d3q = True +with_qmcpack = True + +moduleclass = "chem" + +test_suite_threshold = ( + 0.4 # Low threshold because of https://gitlab.com/QEF/q-e/-/issues/665 +) +test_suite_max_failed = ( + 5 # Allow for some flaky tests (failed due to strict thresholds) +) +test_suite_allow_failures = [ + "test_qe_xclib_", # 7.3.1: https://gitlab.com/QEF/q-e/-/issues/640 + "--hp_", # 7.3.1: Broken testsuite (https://gitlab.com/QEF/q-e/-/issues/665) + "--ph_", # 7.3.1: Broken testsuite (https://gitlab.com/QEF/q-e/-/issues/665) + "--epw_", # 7.3.1: Broken testsuite (https://gitlab.com/QEF/q-e/-/issues/665) + "--tddfpt_", # 7.3.1: Broken testsuite (https://gitlab.com/QEF/q-e/-/issues/665) +] diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-d3q.patch b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-d3q.patch new file mode 100644 index 00000000000..d2a91a510b6 --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-d3q.patch @@ -0,0 +1,30 @@ +Fix line length greather than 132 characters. +Also fix the use of ZGEMM3M, which is not available in the FlexiBLAS library. +See https://github.com/anharmonic/d3q/issues/22 +--- a/d3q/thermal2/PROGRAM_r2q.f90 ++++ b/d3q/thermal2/PROGRAM_r2q.f90 +@@ -744,7 +744,8 @@ PROGRAM r2q + + + WRITE(*,'(2x,a,f12.8)') "Note: q-point and path length in units of 2pi/alat, conversion to bohr^-1: ", S%tpiba +- WRITE(*,'(2x,2(a,f12.8))') "Note: phonons are in cm^-1, conversion to Rydberg: ", 1.d+5/RY_TO_CMM1,"E-5 to THz:", RY_TO_THZ/RY_TO_CMM1 ++ WRITE(*,'(2x,2(a,f12.8))') "Note: phonons are in cm^-1, conversion to Rydberg: ", & ++ 1.d+5/RY_TO_CMM1,"E-5 to THz:", RY_TO_THZ/RY_TO_CMM1 + + IF( input%calculation=="dos") THEN + CALL PH_DOS(input,S,fc2) +diff --git a/thermal2/functions.f90 b/thermal2/functions.f90 +index 90d8a90..9e9adb2 100644 +--- a/d3q/thermal2/functions.f90 ++++ b/d3q/thermal2/functions.f90 +@@ -465,8 +465,8 @@ end subroutine quicksort_idx + ! + !rotate_d2 = MATMUL(TRANSPOSE(CONJG(U)), MATMUL(D,U)) + ! +- CALL ZGEMM3M('N', 'N', nat3, nat3, nat3, alpha, D, nat3, U, nat3, beta, A, nat3) +- CALL ZGEMM3M('C', 'N', nat3, nat3, nat3, alpha, U, nat3, A, nat3, beta, rotate_d2, nat3) ++ CALL ZGEMM('N', 'N', nat3, nat3, nat3, alpha, D, nat3, U, nat3, beta, A, nat3) ++ CALL ZGEMM('C', 'N', nat3, nat3, nat3, alpha, U, nat3, A, nat3, beta, rotate_d2, nat3) + ! + END FUNCTION + ! diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-foss-2024a.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-foss-2024a.eb new file mode 100644 index 00000000000..f017367700b --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.4-foss-2024a.eb @@ -0,0 +1,147 @@ +name = 'QuantumESPRESSO' +version = '7.4' + +homepage = 'https://www.quantum-espresso.org' +description = """Quantum ESPRESSO is an integrated suite of computer codes +for electronic-structure calculations and materials modeling at the nanoscale. +It is based on density-functional theory, plane waves, and pseudopotentials +(both norm-conserving and ultrasoft). +""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +toolchainopts = { + "usempi": True, + "openmp": True, +} + +# Check hashes inside external/submodule_commit_hash_records when making file for new version +local_lapack_hash = "12d825396fcef1e0a1b27be9f119f9e554621e55" +local_mbd_hash = "89a3cc199c0a200c9f0f688c3229ef6b9a8d63bd" +local_devxlib_hash = "a6b89ef77b1ceda48e967921f1f5488d2df9226d" +local_fox_hash = "3453648e6837658b747b895bb7bef4b1ed2eac40" +# Different from the one at tag qe-7.4, see https://github.com/anharmonic/d3q/issues/22 +local_d3q_hash = "808acbaf012468f42147d8d6af452ec64b9e5ab0" +# Different from the one at tag qe-7.4 +local_qe_gipaw_hash = "9b2ae1a46cae045cc04ef02c1072f2e1e74873b2" +local_qmcpack_hash = "f72ab25fa4ea755c1b4b230ae8074b47d5509c70" +local_w90_hash = "1d6b187374a2d50b509e5e79e2cab01a79ff7ce1" + + +sources = [ + { + "filename": "q-e-qe-%(version)s.tar.gz", + "extract_cmd": "mkdir -p %(builddir)s/qe-%(version)s && tar xzvf %s --strip-components=1 -C $_", + "source_urls": ["https://gitlab.com/QEF/q-e/-/archive/qe-%(version)s"], + }, + { + "filename": "lapack-%s.tar.gz" % local_lapack_hash, + "git_config": { + "url": "https://github.com/Reference-LAPACK", + "repo_name": "lapack", + "commit": local_lapack_hash, + }, + }, + { + "filename": "mbd-%s.tar.gz" % local_mbd_hash, + "git_config": { + "url": "https://github.com/libmbd", + "repo_name": "libmbd", + "commit": local_mbd_hash, + 'clone_into': 'mbd', + }, + }, + { + "filename": "devxlib-%s.tar.gz" % local_devxlib_hash, + "git_config": { + "url": "https://gitlab.com/max-centre/components", + "repo_name": "devicexlib", + "commit": local_devxlib_hash, + 'clone_into': 'devxlib', + }, + }, + { + "filename": "d3q-%s.tar.gz" % local_d3q_hash, + "git_config": { + "url": "https://github.com/anharmonic", + "repo_name": "d3q", + "commit": local_d3q_hash, + }, + }, + { + "filename": "fox-%s.tar.gz" % local_fox_hash, + "git_config": { + "url": "https://github.com/pietrodelugas", + "repo_name": "fox", + "commit": local_fox_hash, + }, + }, + { + "filename": "qe-gipaw-%s.tar.gz" % local_qe_gipaw_hash, + "git_config": { + "url": "https://github.com/dceresoli", + "repo_name": "qe-gipaw", + "commit": local_qe_gipaw_hash, + }, + }, + { + "filename": "pw2qmcpack-%s.tar.gz" % local_qmcpack_hash, + "git_config": { + "url": "https://github.com/QMCPACK", + "repo_name": "pw2qmcpack", + "commit": local_qmcpack_hash, + }, + }, + { + "filename": "wannier90-%s.tar.gz" % local_w90_hash, + "git_config": { + "url": "https://github.com/wannier-developers", + "repo_name": "wannier90", + "commit": local_w90_hash, + }, + }, +] +patches = [ + { + 'name': 'QuantumESPRESSO-7.4-d3q.patch', + 'sourcepath': '../' # Needed as patches are normally applied to the first `finalpath` directory + }, +] +# Holding off git clone checksum checks untill 5.0.x +# See https://github.com/easybuilders/easybuild-framework/pull/4248 +checksums = [ + 'b15dcfe25f4fbf15ccd34c1194021e90996393478226e601d876f7dea481d104', + None, None, None, None, None, None, None, None, + '1f1686365fbf0cc56f634e072a92b3d336fe454348e514d0b4136d447f0d4923' +] + +builddependencies = [ + ('M4', '1.4.19'), + ('CMake', '3.29.3'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('HDF5', '1.14.5'), + ('ELPA', '2024.05.001'), + ('libxc', '6.2.2'), +] + +# Disabled because of +# https://gitlab.com/QEF/q-e/-/issues/667 +# https://github.com/anharmonic/d3q/issues/15 +build_shared_libs = False +with_scalapack = True +with_fox = True +with_gipaw = True +with_d3q = True +with_qmcpack = True + +moduleclass = "chem" + +test_suite_threshold = ( + 0.98 +) +test_suite_max_failed = ( + 5 # Allow for some flaky tests (failed due to strict thresholds) +) +test_suite_allow_failures = [] diff --git a/easybuild/easyconfigs/q/QuickTree/QuickTree-2.5-GCC-13.2.0.eb b/easybuild/easyconfigs/q/QuickTree/QuickTree-2.5-GCC-13.2.0.eb new file mode 100644 index 00000000000..05579588a7a --- /dev/null +++ b/easybuild/easyconfigs/q/QuickTree/QuickTree-2.5-GCC-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'MakeCp' + +name = 'QuickTree' +version = '2.5' + +homepage = 'https://github.com/khowe/quicktree' +description = """QuickTree is an efficient implementation of the +Neighbor-Joining algorithm (PMID: 3447015), capable of reconstructing +phylogenies from huge alignments in time less than the age of the +universe.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/khowe/quicktree/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +checksums = ['731aa845ce3f1f0645bd0df2b54df75f78fce065d6a3ddc47fedf4bdcb11c248'] + +files_to_copy = [ + (["quicktree"], "bin/"), + 'README.md', + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/quicktree', 'README.md'], + 'dirs': [] +} + +sanity_check_commands = ["quicktree -h"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb index 972a8488f6a..3625c697b99 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb @@ -3430,6 +3430,12 @@ exts_list = [ ('missMDA', '1.19', { 'checksums': ['f9675884829b2fef75237c335b21991d163674320e766523c71c7a853f95e65c'], }), + ('gcmr', '1.0.3', { + 'checksums': ['75773d5119179f186467d33608e9ce1c030d0755dfd6ff196546884078e89754'], + }), + ('frbs', '3.2-0', { + 'checksums': ['48505d415e3687afcb837e162b63b74173b3cd5df5f96140240e441c86343b2e'], + }), ] modextrapaths = {'R_LIBS_SITE': ''} diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2024.06-foss-2023b.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2024.06-foss-2023b.eb index 09e8f65ae06..43ac06c0cc7 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2024.06-foss-2023b.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2024.06-foss-2023b.eb @@ -3469,6 +3469,12 @@ exts_list = [ ('gsDesign', '3.6.4', { 'checksums': ['b96075650a5bcbb9ebab78b7094d51f451d086b7c97a3a427635b52fece176d2'], }), + ('gcmr', '1.0.3', { + 'checksums': ['75773d5119179f186467d33608e9ce1c030d0755dfd6ff196546884078e89754'], + }), + ('frbs', '3.2-0', { + 'checksums': ['48505d415e3687afcb837e162b63b74173b3cd5df5f96140240e441c86343b2e'], + }), ] modextrapaths = {'R_LIBS_SITE': ''} 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..aa4ce5c52b4 --- /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/RAxML/RAxML-8.2.13-gompi-2023b-avx2.eb b/easybuild/easyconfigs/r/RAxML/RAxML-8.2.13-gompi-2023b-avx2.eb new file mode 100644 index 00000000000..35faf662fe2 --- /dev/null +++ b/easybuild/easyconfigs/r/RAxML/RAxML-8.2.13-gompi-2023b-avx2.eb @@ -0,0 +1,39 @@ +easyblock = 'MakeCp' + +name = 'RAxML' +version = '8.2.13' +versionsuffix = '-avx2' + +homepage = 'https://github.com/stamatak/standard-RAxML' +description = "RAxML search algorithm for maximum likelihood based inference of phylogenetic trees." + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/stamatak/standard-RAxML/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['28e500793324bd7d330b396ef27ea49c9186fa5e1edb3d5439036dc6c33e6067'] + +buildopts = '-f Makefile.AVX2.gcc CC="$CC" && rm *.o && ' +buildopts += 'make -j %(parallel)s -f Makefile.AVX2.PTHREADS.gcc CC="$CC" && rm *.o && ' +buildopts += 'make -j %(parallel)s -f Makefile.AVX2.HYBRID.gcc CC="$CC"' + +files_to_copy = [ + (["raxmlHPC-AVX2", "raxmlHPC-PTHREADS-AVX2", "raxmlHPC-HYBRID-AVX2"], "bin"), + "usefulScripts", "README.md", "manual", +] + +postinstallcmds = [ + "ln -s raxmlHPC-AVX2 %(installdir)s/bin/raxmlHPC", + "ln -s raxmlHPC-PTHREADS-AVX2 %(installdir)s/bin/raxmlHPC-PTHREADS", + "ln -s raxmlHPC-HYBRID-AVX2 %(installdir)s/bin/raxmlHPC-HYBRID", +] + +sanity_check_paths = { + 'files': ['bin/raxmlHPC%s' % x for x in ['', '-PTHREADS', '-HYBRID']], + 'dirs': [], +} + +sanity_check_commands = ["raxmlHPC -%s" % x for x in ['h', 'v']] + +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/RE2/RE2-2024-07-02-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/RE2/RE2-2024-07-02-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..3719af682fd --- /dev/null +++ b/easybuild/easyconfigs/r/RE2/RE2-2024-07-02-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = "CMakeMake" + +name = 'RE2' +version = '2024-07-02' + +homepage = 'https://github.com/google/re2' +description = """ +RE2 is a fast, safe, thread-friendly alternative to backtracking regular +expression engines like those used in PCRE, Perl, and Python. It is a C++ +library. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'google' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['eb2df807c781601c14a260a507a5bb4509be1ee626024cb45acbd57cb9d4032b'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('Abseil', '20240722.0'), +] + +sanity_check_paths = { + 'files': ['lib/libre2.a'], + 'dirs': ['include/re2'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/RSEM/RSEM-1.3.3-foss-2023a.eb b/easybuild/easyconfigs/r/RSEM/RSEM-1.3.3-foss-2023a.eb new file mode 100644 index 00000000000..559d54704d5 --- /dev/null +++ b/easybuild/easyconfigs/r/RSEM/RSEM-1.3.3-foss-2023a.eb @@ -0,0 +1,54 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: GPLv3.0 +# +# Notes:: +## + +easyblock = 'ConfigureMake' + +name = 'RSEM' +version = '1.3.3' + +homepage = 'https://deweylab.github.io/RSEM/' +description = "RNA-Seq by Expectation-Maximization" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/deweylab/RSEM/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['RSEM-1.3.0_makefiles.patch'] +checksums = [ + '90e784dd9df8346caa2a7e3ad2ad07649608a51df1c69bfb6e16f45e611a40dc', # v1.3.3.tar.gz + '2d244659206c78655b92f1bd519ee65f28a6b5f9418dfad04e887b64eca6641b', # RSEM-1.3.0_makefiles.patch +] + +skipsteps = ['configure'] + +installopts = "prefix=%(installdir)s" + +dependencies = [ + ('Java', '11', '', SYSTEM), + ('ncurses', '6.4'), + ('zlib', '1.2.13'), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('HISAT2', '2.2.1'), + ('STAR', '2.7.11a'), + ('Bowtie2', '2.5.1'), + ('Bowtie', '1.3.1'), +] + +sanity_check_paths = { + 'files': ['bin/rsem-calculate-expression', 'bin/rsem-plot-model', 'bin/rsem-plot-transcript-wiggles', + 'bin/rsem-bam2wig', 'bin/rsem-generate-data-matrix', 'bin/rsem-run-em', 'bin/convert-sam-for-rsem'], + 'dirs': ['bin/samtools-1.3'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/Ray-project/Ray-project-2.37.0-foss-2024a.eb b/easybuild/easyconfigs/r/Ray-project/Ray-project-2.37.0-foss-2024a.eb new file mode 100644 index 00000000000..8aab9dab48d --- /dev/null +++ b/easybuild/easyconfigs/r/Ray-project/Ray-project-2.37.0-foss-2024a.eb @@ -0,0 +1,63 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'Ray-project' +version = '2.37.0' + +homepage = "https://docs.ray.io/en/latest/" +description = "Ray is a fast and simple framework for building and running distributed applications." + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True} + +builddependencies = [ + ('redis-py', '5.1.1'), + ('hatchling', '1.24.2'), + ('Cython', '3.0.10') +] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('protobuf-python', '5.28.0'), + ('PyYAML', '6.0.2'), + ('lz4', '1.9.4'), + ('mpi4py', '4.0.1'), +] + +exts_list = [ + ('grpcio', '1.62.1', { + 'modulename': 'grpc', + 'preinstallopts': "export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s && ", + 'checksums': ['6c455e008fa86d9e9a9d85bb76da4277c0d7d9668a3bfa70dbe86e9f3c759947'], + }), + ('aiosignal', '1.3.1', { + 'checksums': ['54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc'], + }), + ('expandvars', '0.12.0', { + 'checksums': ['7d1adfa55728cf4b5d812ece3d087703faea953e0c0a1a78415de9df5024d844'], + }), + ('frozenlist', '1.4.1', { + 'checksums': ['c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b'], + }), + ('lz4', '4.3.3', { + 'checksums': ['01fe674ef2889dbb9899d8a67361e0c4a2c833af5aeb37dd505727cf5d2a131e'], + }), + ('Ray', version, { + 'source_tmpl': '%(namelower)s-%(version)s-cp312-cp312-manylinux2014_%(arch)s.whl', + 'checksums': ['0268c7bc2e8bb6ef9bb8969299deb5857bf672bfcb59da95db7495a8a502f8ba'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ray'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'ray --help' +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..936886af86e --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.3-GCCcore-13.3.0.eb @@ -0,0 +1,74 @@ +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.3' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('cURL', '8.7.1'), # Used by ReFrame to download pip in the bootstrap +] + +# Note that for ReFrame's CPU autodetect to work +# the system also needs to provide (new enough versions of) these dependencies +dependencies = [ + ('Python', '3.12.3'), + ('libxslt', '1.1.42'), # Required by lxml, which is installed by ReFrame's bootstrap installer + ('libxml2', '2.12.7'), # Required by lxml, which is installed by ReFrame's bootstrap installer +] + +exts_list = [ + # ReFrame's bootstrap script is intended to run with zero dependencies. It downloads all python deps for ReFrame + # into a %(installdir)/external directory. ReFrame's main executable (reframe) adds this dir to python's sys.path + # so that ReFrame (and only ReFrame) will find & use all of these dependencies. + # In EasyBuild, we should adhere to this installation method because a) it is how ReFrame is meant to be used and + # b) it isolates all of ReFrame dependencies from any other python code you run. Thus, there is no chance that + # a test will pick up on any python deps from ReFrame itself. + # For this to work, we need to disable download_dep_fail and sanity_pip_check, as both are _expected_ to fail + # for this setup. + ('reframe', version, { + # Deps are downloaded to %(installdir)/external, which won't polute the PYTHONPATH, so is ok + 'download_dep_fail': False, + # ReFrame uses its custom sys.path to find necessary packages, they are not on PYTYHONPATH + # Thus, the regular pip sanity check is expected to fail, even if ReFrame would run just fine + 'sanity_pip_check': False, + # Set modulename to False, as to skip the sanity_check-step from extension.py (python -c "import reframe") + # This step would fail, since the regular python interpreter wouldn't find the additional packages in + # %(installdir)/external. That's fine, as ReFrame should never be imported directly, only through the + # reframe command. + 'modulename': False, + 'preinstallopts': "export PATH=%(installdir)s/bin:$PATH && " + "./bootstrap.sh +docs +pygelf && cp -r external %(installdir)s && ", + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/reframe-hpc/reframe/archive/'], + 'checksums': ['0f335e588d21a26d76beb011bc86baf80ba633d875512ecd564d0aeb320fcf2c'], + }), +] + +postinstallcmds = [ + "cp -a tools examples %(installdir)s", + "mkdir -p %(installdir)s/share && cp -a share/completions %(installdir)s/share/completions", + r"sed -i 's@/\(python[0-9.]*\)$@/\1 -S@g' %(installdir)s/bin/reframe", +] + +sanity_check_paths = { + 'files': ['bin/reframe', + 'share/completions/reframe.bash', + 'share/completions/reframe.fish', + 'share/completions/reframe.tcsh'], + 'dirs': ['external', 'lib', 'tools', 'examples'] +} + +sanity_check_commands = ['reframe -V'] + +# Since this is at the GCCcore toolchain level, make sure ReFrame is configured to purge modules before running +# any tests by default +modextravars = { + 'RFM_PURGE_ENVIRONMENT': '1', +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/r/Redis/Redis-7.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/Redis/Redis-7.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..299d66ea0b3 --- /dev/null +++ b/easybuild/easyconfigs/r/Redis/Redis-7.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'Redis' +version = '7.4.1' + +homepage = 'https://redis.io' +description = """Redis is an open source (BSD licensed), in-memory data structure store, used as +a database, cache, and message broker. Redis provides data structures such as +strings, hashes, lists, sets, sorted sets with range queries, bitmaps, +hyperloglogs, geospatial indexes, and streams. Redis has built-in replication, +Lua scripting, LRU eviction, transactions, and different levels of on-disk +persistence, and provides high availability via Redis Sentinel and automatic +partitioning with Redis Cluster.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://download.redis.io/releases'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['bc34b878eb89421bbfca6fa78752343bf37af312a09eb0fae47c9575977dfaa2'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +skipsteps = ['configure'] + +# tests must be run from a local filesystem +# runtest = 'test' + +installopts = 'PREFIX="%(installdir)s"' + +sanity_check_paths = { + 'files': ['bin/redis-cli', 'bin/redis-server'], + 'dirs': [], +} + +sanity_check_commands = [('redis-server', '--version')] + +moduleclass = 'data' 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/Rust/Rust-1.81.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/Rust/Rust-1.81.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ca97c690c02 --- /dev/null +++ b/easybuild/easyconfigs/r/Rust/Rust-1.81.0-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +name = 'Rust' +version = '1.81.0' + +homepage = 'https://www.rust-lang.org' +description = """Rust is a systems programming language that runs blazingly fast, prevents segfaults, + and guarantees thread safety.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://static.rust-lang.org/dist/'] +sources = ['rustc-%(version)s-src.tar.gz'] +patches = ['Rust-1.70_sysroot-fix-interpreter.patch'] +checksums = [ + {'rustc-1.81.0-src.tar.gz': '872448febdff32e50c3c90a7e15f9bb2db131d13c588fe9071b0ed88837ccfa7'}, + {'Rust-1.70_sysroot-fix-interpreter.patch': '220129db55e022a98d25028da5dcc9f26b252dd995c3ac92f6312dbb1e362cb1'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Python', '3.12.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('patchelf', '0.18.0'), # only required when RPATH linking is enabled +] + +dependencies = [ + ('OpenSSL', '3', '', SYSTEM), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/Rust/Rust-1.83.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/Rust/Rust-1.83.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f614946f548 --- /dev/null +++ b/easybuild/easyconfigs/r/Rust/Rust-1.83.0-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +name = 'Rust' +version = '1.83.0' + +homepage = 'https://www.rust-lang.org' +description = """Rust is a systems programming language that runs blazingly fast, prevents segfaults, + and guarantees thread safety.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://static.rust-lang.org/dist/'] +sources = ['rustc-%(version)s-src.tar.gz'] +patches = ['Rust-1.70_sysroot-fix-interpreter.patch'] +checksums = [ + {'rustc-1.83.0-src.tar.gz': '722d773bd4eab2d828d7dd35b59f0b017ddf9a97ee2b46c1b7f7fac5c8841c6e'}, + {'Rust-1.70_sysroot-fix-interpreter.patch': '220129db55e022a98d25028da5dcc9f26b252dd995c3ac92f6312dbb1e362cb1'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Python', '3.12.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('patchelf', '0.18.0'), # only required when RPATH linking is enabled +] + +dependencies = [ + ('OpenSSL', '3', '', SYSTEM), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/rDock/rDock-24.03.192-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/rDock/rDock-24.03.192-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8a61ab64d91 --- /dev/null +++ b/easybuild/easyconfigs/r/rDock/rDock-24.03.192-GCCcore-13.3.0.eb @@ -0,0 +1,48 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = 'rDock' +version = '24.03.192' + +homepage = 'https://rdock.github.io/' +description = """ +rDock is a fast and versatile Open Source docking program that can be used to dock small +molecules against proteins and nucleic acids. It is designed for High Throughput Virtual +Screening (HTVS) campaigns and Binding Mode prediction studies. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/CBDD/rDock/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4cb4267831a30010d2bca7daf13f74ab113df2c19a140859e9878a02038f551b'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('tcsh', '6.24.13'), + ('popt', '1.19'), +] + +configure_without_installdir = True +configure_cmd = ' ' + +preinstallopts = 'export PREFIX=%(installdir)s && ' + +runtest = 'test' + +postinstallcmds = ['sed -i "s|/bin/csh -f|/usr/bin/env tcsh -f|" %(installdir)s/bin/make_grid.csh'] + +sanity_check_paths = { + 'files': ['bin/rbhtfinder', 'bin/sdreport', 'bin/run_rbdock.pl', 'lib/libRbt.so'], + 'dirs': ['include'], +} + +sanity_check_commands = [ + 'rbdock --help', + 'rbcavity --help', +] + +moduleclass = 'bio' 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..1db19edeef2 --- /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/r/re2c/re2c-3.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/re2c/re2c-3.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d40fa786722 --- /dev/null +++ b/easybuild/easyconfigs/r/re2c/re2c-3.1-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 're2c' +version = '3.1' + +homepage = 'https://re2c.org' +description = """re2c is a free and open-source lexer generator for C and C++. Its main goal is generating +fast lexers: at least as fast as their reasonably optimized hand-coded counterparts. Instead of using +traditional table-driven approach, re2c encodes the generated finite state automata directly in the form +of conditional jumps and comparisons.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/skvadrik/%(name)s/releases/download/%(version)s'] +sources = [SOURCE_TAR_XZ] +checksums = ['0ac299ad359e3f512b06a99397d025cfff81d3be34464ded0656f8a96676c029'] + +builddependencies = [ + ('binutils', '2.42'), + ('Python', '3.12.3'), +] + +configopts = '--disable-rust' + + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(name)s --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/redis-py/redis-py-5.1.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/redis-py/redis-py-5.1.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8168cb909b6 --- /dev/null +++ b/easybuild/easyconfigs/r/redis-py/redis-py-5.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'redis-py' +version = '5.1.1' + +homepage = 'https://github.com/redis/redis-py' +description = "The Python interface to the Redis key-value store." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('typing-extensions', '4.11.0'), + ('Redis', '7.4.1'), +] + +exts_list = [ + ('async-timeout', '4.0.3', { + 'checksums': ['4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f'], + }), + (name, version, { + 'modulename': 'redis', + 'source_urls': ['https://github.com/redis/redis-py/archive/refs/tags/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['e1df6dd98eb2bdbc68dabb4b19a5167468ae36dbb53a1c777d5cf7ba8345450e'], + }), +] + +moduleclass = "data" diff --git a/easybuild/easyconfigs/s/SAMtools/SAMtools-1.21-GCC-13.3.0.eb b/easybuild/easyconfigs/s/SAMtools/SAMtools-1.21-GCC-13.3.0.eb new file mode 100644 index 00000000000..7eba6107fc9 --- /dev/null +++ b/easybuild/easyconfigs/s/SAMtools/SAMtools-1.21-GCC-13.3.0.eb @@ -0,0 +1,38 @@ +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: MIT +# +# Notes:: +# +# Updated to 1.14 and gcc-11.2.0 +# J. Sassmannshausen / GSTT +# Updated to 1.21 jpecar / EMBL + +name = 'SAMtools' +version = '1.21' + +homepage = 'https://www.htslib.org/' +description = """SAM Tools provide various utilities for manipulating alignments in the SAM format, + including sorting, merging, indexing and generating alignments in a per-position format.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['05724b083a6b6f0305fcae5243a056cc36cf826309c3cb9347a6b89ee3fc5ada'] + +# The htslib component of SAMtools >= 1.4 uses zlib, bzip2 and lzma compression. +# The latter is currently provided by XZ. +dependencies = [ + ('ncurses', '6.5'), + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.5'), + ('cURL', '8.7.1'), +] + + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.2.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.2.0-tools.eb index 7cb1689c5c2..30b9729414a 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.2.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.2.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.37'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb index 9d094c2cb89..f948c852c2d 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.38'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.2.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.2.0-tools.eb index 5bf659a141a..3921083e94f 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.2.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.2.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.39'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.3.0-tools.eb index 7cae952e521..2a1c723de5a 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.3.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-12.3.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.40'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.2.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.2.0-tools.eb index 4ac7b2ae50d..90f04ab5dff 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.2.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.2.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '13.2.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.40'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb index 9d2584de1bb..ff0762c0c4e 100644 --- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb @@ -31,12 +31,18 @@ toolchain = {'name': 'GCCcore', 'version': '13.3.0'} source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] sources = ['%(namelower)s-%(version)sl.tar.gz'] -checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] +# 1.7.7 was rereleased with code changes. Old checksum was: +# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c +checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc'] builddependencies = [ ('binutils', '2.42'), ] +# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it +if ARCH != 'x86_64': + preconfigopts = 'sed -i "s|PFLAG = -m\\$(PREC)|PFLAG = |" mf/Makefile.defs.linux-gomp* && ' + configopts = '--disable-cxx --disable-fortran --disable-ompi ' # Comment it out if you have Xeon Phi: diff --git a/easybuild/easyconfigs/s/SKESA/SKESA-2.4.0-gompi-2023b_saute.1.3.0_2.eb b/easybuild/easyconfigs/s/SKESA/SKESA-2.4.0-gompi-2023b_saute.1.3.0_2.eb new file mode 100644 index 00000000000..5baecf1ad17 --- /dev/null +++ b/easybuild/easyconfigs/s/SKESA/SKESA-2.4.0-gompi-2023b_saute.1.3.0_2.eb @@ -0,0 +1,37 @@ +easyblock = 'MakeCp' + +name = 'SKESA' +version = '2.4.0' +versionsuffix = '_saute.1.3.0_2' + +homepage = 'https://github.com/ncbi/SKESA' +description = "SKESA is a de-novo sequence read assembler for cultured single isolate genomes based on DeBruijn graphs." + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/ncbi/SKESA/archive/'] +sources = ['skesa.%(version)s%(versionsuffix)s.tar.gz'] +checksums = ['dc5ad60f963afb09d3f2a3bab8917e657bd93364f0deca6e6844ede44968e979'] + +dependencies = [ + ('Boost', '1.83.0'), + ('SRA-Toolkit', '3.1.1'), + ('ncbi-vdb', '3.1.1'), +] + +prebuildopts = "touch %(builddir)s/ngs.done && " + +buildopts = 'CC="$CXX" CFLAGS="$CXXFLAGS" ' +buildopts += "NGS_DIR=%(builddir)s BOOST_PATH=$EBROOTBOOST NGS_PATH=$EBROOTSRAMINTOOLKIT VDB_PATH=$EBROOTNCBIMINVDB" + +files_to_copy = [(['skesa'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/skesa'], + 'dirs': [], +} + +sanity_check_commands = ["skesa --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SMV/SMV-6.9.5-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/SMV/SMV-6.9.5-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..b164481d03e --- /dev/null +++ b/easybuild/easyconfigs/s/SMV/SMV-6.9.5-GCCcore-12.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'SMV' # SmokeView +version = '6.9.5' + +homepage = 'https://github.com/firemodels/smv' +description = """Smokeview is a visualization program that displays output of FDS and CFAST simulations.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/firemodels/smv/archive/'] +sources = [SOURCE_TAR_GZ] +checksums = ['6c6203f6d6cd83c3525c7447ce4201c8df373d18d0c992d607ad232a77590ef7'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), + ('binutils', '2.40'), +] +dependencies = [ + ('libgd', '2.3.3'), + ('freeglut', '3.4.0'), + ('libjpeg-turbo', '2.1.5.1'), + ('libpng', '1.6.39'), + ('zlib', '1.2.13'), + ('json-c', '0.16'), + ('Doxygen', '1.9.7'), + ('glew', '2.2.0', '-osmesa'), +] + +configopts = '-DVERIFICATION_TESTS=ON' + +sanity_check_commands = [ + 'smokediff -h', + 'smokezip -h', + 'smvq -h', + 'smokeview -h 2>&1 | grep "Visualize"', +] + +sanity_check_paths = { + 'files': ['bin/smokeview', 'bin/smokediff', 'bin/smokezip', 'bin/smvq'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/SNAP-HMM/SNAP-HMM-20221022-GCC-12.3.0.eb b/easybuild/easyconfigs/s/SNAP-HMM/SNAP-HMM-20221022-GCC-12.3.0.eb new file mode 100644 index 00000000000..06b3173938e --- /dev/null +++ b/easybuild/easyconfigs/s/SNAP-HMM/SNAP-HMM-20221022-GCC-12.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'MakeCp' + +name = 'SNAP-HMM' +version = '20221022' +_commit = '4ad1e95' + +homepage = 'https://korflab.github.io/' +description = """ +SNAP is a general purpose gene finding program suitable for both eukaryotic and +prokaryotic genomes. SNAP is an acroynm for Semi-HMM-based Nucleic Acid +Parser. +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/KorfLab/SNAP/archive'] +sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': '%(version)s.tar.gz'}] +patches = ['%(name)s-20190603_makefile_correction.patch'] +checksums = [ + {'20221022.tar.gz': 'a85726b7d4199da1b213b613057600012a392ef1aa20198f1d571fac55bf643f'}, + {'SNAP-HMM-20190603_makefile_correction.patch': 'd518750d4cf01278ba5403ab5717cfcd65b75b5a7c6573ae140f1cdb56b9e655'}, +] + +prebuildopts = 'export CFLAGS="$CFLAGS -fcommon" && ' + +files_to_copy = [ + (['hmm-assembler.pl', 'zff2gff3.pl', 'fathom', 'forge', 'snap', 'Zoe/zoe-loop'], 'bin'), + 'DNA', + 'HMM', + 'Zoe', +] + +sanity_check_paths = { + 'files': ['bin/snap', 'bin/forge', 'bin/zoe-loop'], + 'dirs': ['Zoe'], +} + +sanity_check_commands = [ + 'snap 2>&1 | grep "^usage:"', + 'zoe-loop | grep "^usage:"', +] + +modextrapaths = {'ZOE': 'Zoe'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SNPTEST/SNPTEST-2.5.6.eb b/easybuild/easyconfigs/s/SNPTEST/SNPTEST-2.5.6.eb new file mode 100644 index 00000000000..a404d99e468 --- /dev/null +++ b/easybuild/easyconfigs/s/SNPTEST/SNPTEST-2.5.6.eb @@ -0,0 +1,33 @@ +easyblock = 'Tarball' + +name = 'SNPTEST' +version = '2.5.6' + +homepage = 'https://www.chg.ox.ac.uk/~gav/snptest/' +description = """SNPTEST is a program for the analysis of single SNP association in genome-wide studies. + The tests implemented include + + Binary (case-control) phenotypes, single and multiple quantitative phenotypes + Bayesian and Frequentist tests + Ability to condition upon an arbitrary set of covariates and/or SNPs. + Various different methods for the dealing with imputed SNPs. +""" + +toolchain = SYSTEM + +source_urls = ['https://www.well.ox.ac.uk/~gav/resources/'] +sources = ['snptest_v2.5.6_CentOS_Linux7.8-x86_64_dynamic.tgz'] +checksums = ['c2c829def961dd2f6377c388d8aa22cab17945961c47e39c4a94493466c0a52e'] + +postinstallcmds = ["cd %(installdir)s && ln -s snptest_v2.5.6 snptest"] + +sanity_check_paths = { + 'files': ['LICENCE'], + 'dirs': ['doc', 'example'], +} + +modextrapaths = {'PATH': ''} + +sanity_check_commands = ["snptest -help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SPEI/SPEI-0.6.0-gfbf-2023a.eb b/easybuild/easyconfigs/s/SPEI/SPEI-0.6.0-gfbf-2023a.eb new file mode 100644 index 00000000000..133806d5be4 --- /dev/null +++ b/easybuild/easyconfigs/s/SPEI/SPEI-0.6.0-gfbf-2023a.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonBundle' + +name = 'SPEI' +version = '0.6.0' + +homepage = 'https://github.com/martinvonk/spei' +description = """ +A simple Python package to calculate drought indices for time series such as the SPI, SPEI and SGI. +""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +exts_list = [ + ('spei', version, { + 'checksums': ['a21933a65c6d7639881671a82b9eb79ee34cd5b52ca7b2a73a55d3988aa93f5c'], + }), +] + +moduleclass = 'geo' 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..b34929f4de6 --- /dev/null +++ b/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb @@ -0,0 +1,41 @@ +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 +] + +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'], + }), +] + +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..0c553794f9b --- /dev/null +++ b/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb @@ -0,0 +1,263 @@ +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'), +] + +checksums = [ + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anes-0.1.6.tar.gz': '4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'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'}, + {'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'}, + {'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.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'fastrand-2.1.0.tar.gz': '9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'half-2.4.1.tar.gz': '6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.4.0.tar.gz': 'fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc'}, + {'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}, + {'is-terminal-0.4.13.tar.gz': '261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'js-sys-0.3.70.tar.gz': '1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.155.tar.gz': '97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'memmap2-0.9.4.tar.gz': 'fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322'}, + {'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'oorandom-11.1.4.tar.gz': 'b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9'}, + {'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.7.0.tar.gz': 'da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'proptest-1.5.0.tar.gz': 'b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d'}, + {'pyo3-0.22.2.tar.gz': '831e8e819a138c36e212f3af3fd9eeffed6bf1510a805af35b0edee5ffa59433'}, + {'pyo3-build-config-0.22.2.tar.gz': '1e8730e591b14492a8945cdff32f089250b05f5accecf74aeddf9e8272ce1fa8'}, + {'pyo3-ffi-0.22.2.tar.gz': '5e97e919d2df92eb88ca80a037969f44e5e70356559654962cbb3316d00300c6'}, + {'pyo3-macros-0.22.2.tar.gz': 'eb57983022ad41f9e683a599f2fd13c3664d7063a3ac5714cae4b7bee7d3f206'}, + {'pyo3-macros-backend-0.22.2.tar.gz': 'ec480c0c51ddec81019531705acac51bcdbeae563557c982aa8263bb96880372'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'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'}, + {'rand_xorshift-0.3.0.tar.gz': 'd25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'regex-1.10.6.tar.gz': '4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619'}, + {'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}, + {'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}, + {'rustix-0.38.34.tar.gz': '70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f'}, + {'rusty-fork-0.3.0.tar.gz': 'cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'same-file-1.0.6.tar.gz': '93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502'}, + {'serde-1.0.204.tar.gz': 'bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12'}, + {'serde-1.0.208.tar.gz': 'cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2'}, + {'serde_derive-1.0.204.tar.gz': 'e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222'}, + {'serde_derive-1.0.208.tar.gz': '24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf'}, + {'serde_json-1.0.122.tar.gz': '784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da'}, + {'serde_json-1.0.125.tar.gz': '83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed'}, + {'syn-2.0.72.tar.gz': 'dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af'}, + {'syn-2.0.75.tar.gz': 'f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9'}, + {'target-lexicon-0.12.16.tar.gz': '61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1'}, + {'tempfile-3.12.0.tar.gz': '04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64'}, + {'tinytemplate-1.2.1.tar.gz': 'be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc'}, + {'unarray-0.1.4.tar.gz': 'eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}, + {'wait-timeout-0.2.0.tar.gz': '9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6'}, + {'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'}, + {'winapi-util-0.1.9.tar.gz': 'cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'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'}, +] + +exts_list = [ + ('safetensors', version, { + 'checksums': ['5fe3e9b705250d0172ed4e100a811543108653fb2b66b9e702a088ad03772a07'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/SciANN/SciANN-0.7.0.1-foss-2022a.eb b/easybuild/easyconfigs/s/SciANN/SciANN-0.7.0.1-foss-2022a.eb new file mode 100644 index 00000000000..66caa0ba436 --- /dev/null +++ b/easybuild/easyconfigs/s/SciANN/SciANN-0.7.0.1-foss-2022a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'SciANN' +version = '0.7.0.1' + +homepage = 'https://github.com/ehsanhaghighat/sciann' +description = """ +A Keras/Tensorflow wrapper for scientific computations and physics-informed deep learning +using artificial neural networks. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('PyYAML', '6.0'), + ('h5py', '3.7.0'), + ('scikit-learn', '1.1.2'), + ('TensorFlow', '2.11.0'), + ('pymatgen', '2023.3.10'), # for pybtex and latexcodec + ('matplotlib', '3.5.2'), + ('pygraphviz', '1.10'), + ('pydot', '1.4.2'), +] + +exts_list = [ + (name, version, { + 'modulename': 'sciann', + 'checksums': ['7d7acf61346b4201628c5656e2c904e9a9c7cda78086e76d075b5c7bb90adf3c'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/SciKeras/SciKeras-0.12.0-foss-2022a.eb b/easybuild/easyconfigs/s/SciKeras/SciKeras-0.12.0-foss-2022a.eb new file mode 100644 index 00000000000..3df3ad4c7bf --- /dev/null +++ b/easybuild/easyconfigs/s/SciKeras/SciKeras-0.12.0-foss-2022a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'SciKeras' +version = '0.12.0' + +homepage = 'https://adriangb.com/scikeras' +description = """ +Scikit-Learn API wrapper for Keras. The goal of scikeras is to make it possible to use +Keras/TensorFlow with sklearn. This is achieved by providing a wrapper around Keras that has +an Scikit-Learn interface. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('scikit-learn', '1.1.2'), + ('TensorFlow', '2.11.0'), +] + +exts_list = [ + ('scikeras', version, { + 'checksums': ['f60d81255a8904671bd33cbff060926cfa5ddd52fa234b12290afe3cb69dcc6c'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb index a93a30918b2..909b2f9cb9f 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb @@ -16,6 +16,7 @@ builddependencies = [ ('Meson', '1.1.1'), ('Ninja', '1.11.1'), ('pkgconf', '1.9.5'), # required by scipy + ('Cython', '3.0.8'), ] dependencies = [ @@ -71,12 +72,15 @@ exts_list = [ 'patches': [ 'scipy-1.11.1_disable-tests.patch', 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', + 'scipy-1.11.1_vectorization_error.patch', ], 'checksums': [ {'scipy-1.11.1.tar.gz': 'fb5b492fa035334fd249f0973cc79ecad8b09c604b42a127a677b45a9a3d4289'}, {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'}, {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch': '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, + {'scipy-1.11.1_vectorization_error.patch': + 'bfba00ab84d7d6d73b87e4e94ea2487058d155f845c12212552c095fea9e5cae'}, ], }), ('numexpr', '2.8.4', { diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-iimkl-2023a.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-iimkl-2023a.eb index 34ce111fb2f..326b0a58355 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-iimkl-2023a.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-iimkl-2023a.eb @@ -16,6 +16,7 @@ builddependencies = [ ('Meson', '1.1.1'), ('Ninja', '1.11.1'), ('pkgconf', '1.9.5'), # required by scipy + ('Cython', '3.0.8'), ] dependencies = [ diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb index f6702f05d85..760204c2116 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb @@ -17,6 +17,7 @@ builddependencies = [ ('meson-python', '0.15.0'), ('Ninja', '1.11.1'), ('pkgconf', '2.0.3'), # required by scipy + ('Cython', '3.0.10'), ] dependencies = [ @@ -66,6 +67,7 @@ exts_list = [ 'scipy-1.11.1_disable-tests.patch', 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', 'scipy-1.11.4_fix-deps-ellip_harm_2.patch', + 'scipy-1.11.1_vectorization_error.patch', ], 'checksums': [ {'scipy-1.11.4.tar.gz': '90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa'}, @@ -74,6 +76,8 @@ exts_list = [ '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, {'scipy-1.11.4_fix-deps-ellip_harm_2.patch': '5c3b4d4dab76cd4c9398c87e6a67b39e3806994ef955fa35781b49f9f99328a8'}, + {'scipy-1.11.1_vectorization_error.patch': + 'bfba00ab84d7d6d73b87e4e94ea2487058d155f845c12212552c095fea9e5cae'}, ], 'enable_slow_tests': True, 'ignore_test_result': False, diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024a.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024a.eb index 011947c1b16..ae2fb445c05 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024a.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024a.eb @@ -62,12 +62,15 @@ exts_list = [ 'patches': [ 'scipy-1.11.1_disable-tests.patch', 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', + 'scipy-1.13.1_TestLinprogIPSparse.patch', ], 'checksums': [ {'scipy-1.13.1.tar.gz': '095a87a0312b08dfd6a6155cbbd310a8c51800fc931b8c0b84003014b874ed3c'}, {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'}, {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch': '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, + {'scipy-1.13.1_TestLinprogIPSparse.patch': + '7213c2690b76c69f7e7103529cea3fa2098c05fbea556f04325fab9ca8c065f5'}, ], }), ('numexpr', '2.10.0', { diff --git a/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.1_vectorization_error.patch b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.1_vectorization_error.patch new file mode 100644 index 00000000000..6cf77dee6f5 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.1_vectorization_error.patch @@ -0,0 +1,105 @@ +Fixes the vectorization bug. `ValueError: buffer source array is read-only` +see https://github.com/scipy/scipy/issues/16792 +patch source: https://github.com/scipy/scipy/pull/20195 +--- scipy/linalg/_cythonized_array_utils.pyx.orig ++++ scipy/linalg/_cythonized_array_utils.pyx +@@ -158,7 +158,7 @@ + + + @cython.initializedcheck(False) +-def bandwidth_c(np_numeric_t[:, ::1]A): ++def bandwidth_c(const np_numeric_t[:, ::1]A): + cdef int l, u + with nogil: + l, u = band_check_internal_c(A) +@@ -166,7 +166,7 @@ + + + @cython.initializedcheck(False) +-def bandwidth_noncontig(np_numeric_t[:, :]A): ++def bandwidth_noncontig(const np_numeric_t[:, :]A): + cdef int l, u + with nogil: + l, u = band_check_internal_noncontig(A) +@@ -176,7 +176,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline (int, int) band_check_internal_c(np_numeric_t[:, ::1]A) noexcept nogil: ++cdef inline (int, int) band_check_internal_c(const np_numeric_t[:, ::1]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], m = A.shape[1] + cdef Py_ssize_t lower_band = 0, upper_band = 0, r, c + cdef np_numeric_t zero = 0 +@@ -207,7 +207,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline (int, int) band_check_internal_noncontig(np_numeric_t[:, :]A) noexcept nogil: ++cdef inline (int, int) band_check_internal_noncontig(const np_numeric_t[:, :]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], m = A.shape[1] + cdef Py_ssize_t lower_band = 0, upper_band = 0, r, c + cdef np_numeric_t zero = 0 +@@ -324,7 +324,7 @@ + + + @cython.initializedcheck(False) +-def is_sym_her_real_c(np_numeric_t[:, ::1]A): ++def is_sym_her_real_c(const np_numeric_t[:, ::1]A): + cdef bint s + with nogil: + s = is_sym_her_real_c_internal(A) +@@ -332,7 +332,7 @@ + + + @cython.initializedcheck(False) +-def is_sym_her_real_noncontig(np_numeric_t[:, :]A): ++def is_sym_her_real_noncontig(const np_numeric_t[:, :]A): + cdef bint s + with nogil: + s = is_sym_her_real_noncontig_internal(A) +@@ -342,7 +342,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline bint is_sym_her_real_c_internal(np_numeric_t[:, ::1]A) noexcept nogil: ++cdef inline bint is_sym_her_real_c_internal(const np_numeric_t[:, ::1]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], r, c + + for r in xrange(n): +@@ -355,7 +355,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline bint is_sym_her_real_noncontig_internal(np_numeric_t[:, :]A) noexcept nogil: ++cdef inline bint is_sym_her_real_noncontig_internal(const np_numeric_t[:, :]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], r, c + + for r in xrange(n): +@@ -469,7 +469,7 @@ + + + @cython.initializedcheck(False) +-def is_sym_her_complex_c(np_complex_numeric_t[:, ::1]A): ++def is_sym_her_complex_c(const np_complex_numeric_t[:, ::1]A): + cdef bint s + with nogil: + s = is_sym_her_complex_c_internal(A) +@@ -485,7 +485,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline bint is_sym_her_complex_c_internal(np_complex_numeric_t[:, ::1]A) noexcept nogil: ++cdef inline bint is_sym_her_complex_c_internal(const np_complex_numeric_t[:, ::1]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], r, c + + for r in xrange(n): +@@ -497,7 +497,7 @@ + @cython.initializedcheck(False) + @cython.boundscheck(False) + @cython.wraparound(False) +-cdef inline bint is_sym_her_complex_noncontig_internal(np_complex_numeric_t[:, :]A) noexcept nogil: ++cdef inline bint is_sym_her_complex_noncontig_internal(const np_complex_numeric_t[:, :]A) noexcept nogil: + cdef Py_ssize_t n = A.shape[0], r, c + + for r in xrange(n): + diff --git a/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.13.1_TestLinprogIPSparse.patch b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.13.1_TestLinprogIPSparse.patch new file mode 100644 index 00000000000..1b057319086 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.13.1_TestLinprogIPSparse.patch @@ -0,0 +1,30 @@ +disable problematic tests +TestLinprogIPSparse::test_bug_6139 + TestLinprogIPSparsePresolve::test_bug_6139 fail on Grace Hopper aarch64 +author: Sebastian Achilles (Juelich Supercomputing Centre) + +diff --git a/scipy/optimize/tests/test_linprog.py b/scipy/optimize/tests/test_linprog.py +index 49a0f8de5..8ffbb0b47 100644 +--- a/scipy/optimize/tests/test_linprog.py ++++ b/scipy/optimize/tests/test_linprog.py +@@ -1977,6 +1977,10 @@ if has_umfpack: + class TestLinprogIPSparse(LinprogIPTests): + options = {"sparse": True, "cholesky": False, "sym_pos": False} + ++ @pytest.mark.skipif( ++ platform.machine() == 'aarch64', ++ reason="Fails on aarch64" ++ ) + @pytest.mark.xfail_on_32bit("This test is sensitive to machine epsilon level " + "perturbations in linear system solution in " + "_linprog_ip._sym_solve.") +@@ -2027,6 +2031,10 @@ class TestLinprogIPSparse(LinprogIPTests): + class TestLinprogIPSparsePresolve(LinprogIPTests): + options = {"sparse": True, "_sparse_presolve": True} + ++ @pytest.mark.skipif( ++ platform.machine() == 'aarch64', ++ reason="Fails on aarch64" ++ ) + @pytest.mark.xfail_on_32bit("This test is sensitive to machine epsilon level " + "perturbations in linear system solution in " + "_linprog_ip._sym_solve.") diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..f195f0ceaeb --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.2'), + # Hardware counter support (optional): + ('PAPI', '7.0.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb new file mode 100644 index 00000000000..1317ae392d9 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.2'), + # Hardware counter support (optional): + ('PAPI', '7.0.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb new file mode 100644 index 00000000000..8b60baea472 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '12.0.0', '', SYSTEM), + ('UCX-CUDA', '1.13.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb new file mode 100644 index 00000000000..e19b8fcc05b --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..51caeb1df08 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('UCX-CUDA', '1.14.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb new file mode 100644 index 00000000000..2e47de3fd8b --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Shapely/Shapely-2.0.6-gfbf-2024a.eb b/easybuild/easyconfigs/s/Shapely/Shapely-2.0.6-gfbf-2024a.eb new file mode 100644 index 00000000000..e6d8f63959c --- /dev/null +++ b/easybuild/easyconfigs/s/Shapely/Shapely-2.0.6-gfbf-2024a.eb @@ -0,0 +1,27 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Updated: Denis Kristak +easyblock = 'PythonPackage' + +name = 'Shapely' +version = '2.0.6' + +homepage = 'https://github.com/Toblerity/Shapely' +description = """Shapely is a BSD-licensed Python package for manipulation and analysis of planar geometric objects. +It is based on the widely deployed GEOS (the engine of PostGIS) and JTS (from which GEOS is ported) libraries.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['997f6159b1484059ec239cacaa53467fd8b5564dabe186cd84ac2944663b0bf6'] + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('GEOS', '3.12.2'), +] + +moduleclass = 'math' 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..e0c1fdd4be5 --- /dev/null +++ b/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb @@ -0,0 +1,52 @@ +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'), +] + +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'] +} + +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..52e91be3fc7 --- /dev/null +++ b/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb @@ -0,0 +1,35 @@ +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'), +] + +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/SoX/SoX-14.4.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/SoX/SoX-14.4.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..747709683fb --- /dev/null +++ b/easybuild/easyconfigs/s/SoX/SoX-14.4.2-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'SoX' +version = '14.4.2' + +homepage = 'http://sox.sourceforge.net/' +docurls = 'http://sox.sourceforge.net/Docs/Documentation' +description = """Sound eXchange, the Swiss Army knife of audio manipulation""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b45f598643ffbd8e363ff24d61166ccec4836fea6d3888881b8df53e3bb55f6c'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('FLAC', '1.4.3'), + ('LAME', '3.100'), + ('libmad', '0.15.1b'), + ('libvorbis', '1.3.7'), + ('FFmpeg', '7.0.2'), +] + +sanity_check_paths = { + 'files': ['bin/play', 'bin/rec', 'bin/sox', 'bin/soxi', 'include/sox.h', + 'lib/libsox.la', 'lib/libsox.a', 'lib/pkgconfig/sox.pc', 'lib/libsox.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include', 'lib', 'lib/pkgconfig', 'share/man'], +} + +sanity_check_commands = ['sox --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/Solids4foam/Solids4foam-2.1-foss-2023a.eb b/easybuild/easyconfigs/s/Solids4foam/Solids4foam-2.1-foss-2023a.eb new file mode 100644 index 00000000000..9c203d21c27 --- /dev/null +++ b/easybuild/easyconfigs/s/Solids4foam/Solids4foam-2.1-foss-2023a.eb @@ -0,0 +1,45 @@ +easyblock = 'Binary' + +name = 'Solids4foam' +version = '2.1' + +homepage = 'https://www.solids4foam.com/' +description = 'A toolbox for performing solid mechanics and fluid-solid interactions in OpenFOAM.' + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/solids4foam/solids4foam/archive/'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['354dad483f8b086d64bf294829cf6fdf1e5784fd615578acff753791f2f391ca'] + +builddependencies = [('Eigen', '3.4.0')] +dependencies = [ + ('OpenFOAM', 'v2312'), + ('gnuplot', '5.4.8'), + ('M4', '1.4.19'), +] + +extract_sources = True + +# build + install cmds: +install_cmd = 'source $FOAM_BASH && ' +install_cmd += 'export WM_PROJECT_USER_DIR=%(installdir)s && ' +install_cmd += 'export FOAM_USER_APPBIN=%(installdir)s/bin && ' +install_cmd += 'export FOAM_USER_LIBBIN=%(installdir)s/lib && ' +install_cmd += 'export LD_LIBRARY_PATH=%(installdir)s/lib:$LD_LIBRARY_PATH && ' +install_cmd += 'export EIGEN_DIR=$EBROOTEIGEN && ' +install_cmd += 'export S4F_NO_FILE_FIXES=1 && ./Allwmake -j %(parallel)s' +# copy tests +install_cmd += ' && cp -av tutorials %(installdir)s' + +sanity_check_paths = { + 'files': ['bin/solids4Foam'], + 'dirs': ['lib'], +} +sanity_check_commands = [ + 'source $FOAM_BASH && cd %(installdir)s/tutorials && ./Alltest' +] + +modloadmsg = "Please run 'source $FOAM_BASH' before using Solids4foam." + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/s/Spectre/Spectre-0.2.1-foss-2023a.eb b/easybuild/easyconfigs/s/Spectre/Spectre-0.2.1-foss-2023a.eb new file mode 100644 index 00000000000..1aa9c063dcd --- /dev/null +++ b/easybuild/easyconfigs/s/Spectre/Spectre-0.2.1-foss-2023a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'Spectre' +version = '0.2.1' + +homepage = 'https://github.com/fritzsedlazeck/Spectre' +description = """Spectre is a long read copy number variation (CNV) caller. Spectre is designed to detect large CNVs +(>100kb) in a couple of minutes depending on your hardware.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://pypi.org/packages/source/s/spectre-cnv/'] +sources = [{'download_filename': 'spectre_cnv-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['a5ab6487bdf239f4df0158632020d57be3cc78831e0fb1f41f27c5a79060cf5a'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pysam', '0.22.0'), + ('matplotlib', '3.7.2'), +] + +sanity_check_commands = [ + "spectre --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Stacks/Stacks-2.68-foss-2023a.eb b/easybuild/easyconfigs/s/Stacks/Stacks-2.68-foss-2023a.eb new file mode 100644 index 00000000000..f5c8c3b976d --- /dev/null +++ b/easybuild/easyconfigs/s/Stacks/Stacks-2.68-foss-2023a.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'Stacks' +version = '2.68' + +homepage = 'https://catchenlab.life.illinois.edu/stacks/' +description = """Stacks is a software pipeline for building loci from short-read sequences, such as those generated on + the Illumina platform. Stacks was developed to work with restriction enzyme-based data, such as RAD-seq, + for the purpose of building genetic maps and conducting population genomics and phylogeography. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://catchenlab.life.illinois.edu/stacks/source/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['9dc51ea356d60eb4557b0b2d1a8854aafae492aed87f974e0249cc09aa5e7650'] + +dependencies = [ + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['bin/clone_filter', 'bin/cstacks', 'bin/gstacks', 'bin/kmer_filter', 'bin/phasedstacks', + 'bin/populations', 'bin/process_radtags', 'bin/process_shortreads', 'bin/sstacks', + 'bin/tsv2bam', 'bin/ustacks'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Statistics-R/Statistics-R-0.34-foss-2023a.eb b/easybuild/easyconfigs/s/Statistics-R/Statistics-R-0.34-foss-2023a.eb new file mode 100644 index 00000000000..7a351d75a26 --- /dev/null +++ b/easybuild/easyconfigs/s/Statistics-R/Statistics-R-0.34-foss-2023a.eb @@ -0,0 +1,28 @@ +easyblock = 'PerlModule' + +name = 'Statistics-R' +version = '0.34' + +homepage = 'https://metacpan.org/pod/Statistics::R' +description = "Perl interface with the R statistical program" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://cpan.metacpan.org/authors/id/F/FA/FANGLY'] +sources = [SOURCE_TAR_GZ] +checksums = ['782dd064876ac94680d97899f24fb0e727df42c05ba474ec096a9116438fbed4'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('R', '4.3.2'), +] + +options = {'modulename': 'Statistics::R'} + +sanity_check_paths = { + 'files': ['lib/perl5/site_perl/%(perlver)s/Statistics/R.pm'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/Statistics/R'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/StringTie/StringTie-2.2.3-GCC-12.3.0.eb b/easybuild/easyconfigs/s/StringTie/StringTie-2.2.3-GCC-12.3.0.eb new file mode 100644 index 00000000000..d9e03168723 --- /dev/null +++ b/easybuild/easyconfigs/s/StringTie/StringTie-2.2.3-GCC-12.3.0.eb @@ -0,0 +1,49 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'MakeCp' + +name = 'StringTie' +version = '2.2.3' + +homepage = 'https://ccb.jhu.edu/software/stringtie/' +description = 'StringTie is a fast and highly efficient assembler of RNA-Seq alignments into potential transcripts' + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/gpertea/%(namelower)s/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['f372640b70a8fde763712d2f0565aff71f5facdc2300c8af829fea94a05ff208'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('libdeflate', '1.18'), + ('XZ', '5.4.2'), + ('zlib', '1.2.13'), + ('HTSlib', '1.18'), + ('Python', '3.11.3'), +] + +local_libs = 'HTSLIB="$EBROOTHTSLIB/lib" LIBS="-lhts -lbz2 -llzma -ldeflate -lz $LIBS"' +buildopts = 'release ' + local_libs + +# the test script downloads some test data from the internet +runtest = 'test' +testopts = local_libs + +files_to_copy = [ + (['%(namelower)s', 'prepDE.py3'], 'bin'), + 'README.md', + 'LICENSE' +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s --help', 'prepDE.py3 --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.8.2-foss-2024a-METIS-5.1.0.eb b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.8.2-foss-2024a-METIS-5.1.0.eb new file mode 100644 index 00000000000..7bcd3143b6f --- /dev/null +++ b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.8.2-foss-2024a-METIS-5.1.0.eb @@ -0,0 +1,29 @@ +name = 'SuiteSparse' +version = '7.8.2' +local_metis_ver = '5.1.0' +versionsuffix = '-METIS-%s' % local_metis_ver + +homepage = 'https://faculty.cse.tamu.edu/davis/suitesparse.html' +description = """SuiteSparse is a collection of libraries to manipulate sparse matrices.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'unroll': True, 'pic': True} + +source_urls = ['https://github.com/DrTimothyAldenDavis/SuiteSparse/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['996c48c87baaeb5fc04bd85c7e66d3651a56fe749c531c60926d75b4db5d2181'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('M4', '1.4.19'), +] + +dependencies = [ + ('METIS', local_metis_ver), + ('MPFR', '4.2.1'), +] + +# make sure that bin/demo can find libsuitesparseconfig.so.5 during build +prebuildopts = "export LD_LIBRARY_PATH=%(builddir)s/SuiteSparse-%(version)s/lib:$LD_LIBRARY_PATH && " + +moduleclass = 'numlib' 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/Szip/Szip-2.1.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..6ac6fb2e784 --- /dev/null +++ b/easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'Szip' +version = '2.1.1' + +homepage = 'https://docs.hdfgroup.org/archive/support/doc_resource/SZIP/index.html' + +description = """ + Szip compression software, providing lossless compression of scientific data +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://support.hdfgroup.org/ftp/lib-external/szip/%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['21ee958b4f2d4be2c9cabfa5e1a94877043609ce86fde5f286f105f7ff84d412'] + +builddependencies = [ + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ["lib/libsz.a", "lib/libsz.%s" % SHLIB_EXT] + + ["include/%s" % x for x in ["ricehdf.h", "szip_adpt.h", "szlib.h"]], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/s3fs/s3fs-2024.9.0-foss-2024a.eb b/easybuild/easyconfigs/s/s3fs/s3fs-2024.9.0-foss-2024a.eb new file mode 100644 index 00000000000..4a2d2034d15 --- /dev/null +++ b/easybuild/easyconfigs/s/s3fs/s3fs-2024.9.0-foss-2024a.eb @@ -0,0 +1,29 @@ +easyblock = "PythonBundle" + +name = 's3fs' +version = '2024.9.0' + +homepage = 'https://github.com/fsspec/s3fs/' +description = """S3FS builds on aiobotocore to provide a convenient Python filesystem interface for S3..""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('hatchling', '1.24.2'), + ('aiohttp', '3.10.10'), + ('wrapt', '1.16.0'), + ('boto3', '1.35.36'), +] + +exts_list = [ + ('fsspec', version, { + 'checksums': ['4b0afb90c2f21832df142f292649035d80b421f60a9e1c027802e5a0da2b04e8'], + }), + (name, version, { + 'checksums': ['6493705abb50374d6b7994f9616d27adbdd8a219c8635100bdc286382efd91f5'], + }), +] + +moduleclass = 'tools' 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 794db48e912..4c8fc25a51f 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 4d063b9acc1..a91c24d14fa 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..c975eed4e95 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +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'), +] + +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-build-core/scikit-build-core-0.9.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-13.2.0.eb index 77221589562..fbb7686bdff 100644 --- a/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-13.2.0.eb @@ -22,6 +22,10 @@ dependencies = [ ] exts_list = [ + ('pyproject-metadata', '0.8.0', { + 'sources': ['pyproject_metadata-%(version)s.tar.gz'], + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), ('scikit_build_core', version, { 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], }), 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..13246ce7eb2 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb @@ -0,0 +1,36 @@ +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'), +] + +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/sdsl-lite/sdsl-lite-2.0.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.0.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..8a00e44e265 --- /dev/null +++ b/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.0.3-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = "CMakeMake" + +name = 'sdsl-lite' +version = '2.0.3' + +homepage = "https://github.com/simongog/sdsl-lite" +description = """The Succinct Data Structure Library (SDSL) is a powerful and flexible C++11 library implementing + succinct data structures. In total, the library contains the highlights of 40 research publications. Succinct + data structures can represent an object (such as a bitvector or a tree) in space close to the information-theoretic + lower bound of the object while supporting operations of the original object efficiently. The theoretical time + complexity of an operation performed on the classical data structure and the equivalent succinct data structure + are (most of the time) identical.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/simongog/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['08ece40ce44041906bfa425af81a20a8071d187285f674debd8816c2e3113c2f'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': ['lib/libdivsufsort64.a', 'lib/libdivsufsort.a', 'lib/libsdsl.a', 'include/divsufsort64.h'], + 'dirs': ['include/sdsl'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-foss-2023a.eb b/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-foss-2023a.eb new file mode 100644 index 00000000000..46cba5e14f0 --- /dev/null +++ b/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-foss-2023a.eb @@ -0,0 +1,40 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +# Update: Petr Král (INUITS) +easyblock = "CMakeMake" + +name = 'sdsl-lite' +version = '2.1.1' + +homepage = "https://github.com/simongog/sdsl-lite" +description = """The Succinct Data Structure Library (SDSL) is a powerful and flexible C++11 library implementing + succinct data structures. In total, the library contains the highlights of 40 research publications. Succinct + data structures can represent an object (such as a bitvector or a tree) in space close to the information-theoretic + lower bound of the object while supporting operations of the original object efficiently. The theoretical time + complexity of an operation performed on the classical data structure and the equivalent succinct data structure + are (most of the time) identical.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/simongog/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e36591338c390184760dbdddbb653d972d9c1986c8819f462e7e73ddd28b992b'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), + ('googletest', '1.13.0'), +] + +dependencies = [ + ('libdivsufsort', '2.0.1'), +] + +# Use our `googletest` and `libdivsufsort`. +preconfigopts = "sed -i '/external/d' %(builddir)s/%(name)s-%(version)s/CMakeLists.txt && " + +sanity_check_paths = { + 'files': ['lib/libsdsl.a'], + 'dirs': ['include/sdsl'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/skani/skani-0.2.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/skani/skani-0.2.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..889947f5c2c --- /dev/null +++ b/easybuild/easyconfigs/s/skani/skani-0.2.2-GCCcore-12.3.0.eb @@ -0,0 +1,481 @@ +easyblock = 'Cargo' + +name = 'skani' +version = '0.2.2' + +homepage = 'https://github.com/bluenote-1577/skani' +description = "skani - accurate, fast nucleotide identity calculation for MAGs, genomes, and databases" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'bluenote-1577' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.2.2.tar.gz': 'e047d52b9f753625eff480fe90f1abb68f82cc6892d9d1910b18bfcedbfc0b9d'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-1.1.2.tar.gz': 'b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0'}, + {'anyhow-1.0.75.tar.gz': 'a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'assert_cmd-1.0.8.tar.gz': 'c98233c6673d8601ab23e77eb38f999c51100d46c5703b17288c57fddf3a1ffe'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-0.1.8.tar.gz': '0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'bincode-1.3.3.tar.gz': 'b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad'}, + {'bio-1.4.0.tar.gz': 'ea643e25059ce02b94e8f6eb4e902d160baa6d0beb91834ed971dd5a880c02ba'}, + {'bio-types-1.0.1.tar.gz': '9d45749b87f21808051025e9bf714d14ff4627f9d8ca967eade6946ea769aa4a'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.5.1.tar.gz': 'f59bbe95d4e52a6398ec21238d31577f2b28a9d86807f06ca59d191d8440d0bb'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.4.0.tar.gz': 'b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635'}, + {'bstr-0.2.17.tar.gz': 'ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223'}, + {'buffer-redux-1.0.0.tar.gz': 'd2886ea01509598caac116942abd33ab5a88fa32acdf7e4abfa0fc489ca520c9'}, + {'bv-0.11.1.tar.gz': '8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340'}, + {'bytecount-0.6.4.tar.gz': 'ad152d03a2c813c80bb94fedbf3a3f02b28f793e39e7c214c8a0bcc196343de7'}, + {'bytemuck-1.14.0.tar.gz': '374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bzip2-0.4.4.tar.gz': 'bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.83.tar.gz': 'f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0'}, + {'cfg-if-0.1.10.tar.gz': '4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-3.2.25.tar.gz': '4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123'}, + {'clap_lex-0.2.4.tar.gz': '2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5'}, + {'cloudabi-0.0.3.tar.gz': 'ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f'}, + {'crc32fast-1.3.2.tar.gz': 'b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d'}, + {'crossbeam-deque-0.8.3.tar.gz': 'ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef'}, + {'crossbeam-epoch-0.9.15.tar.gz': 'ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7'}, + {'crossbeam-utils-0.8.16.tar.gz': '5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'dashmap-5.5.3.tar.gz': '978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'difference-2.0.0.tar.gz': '524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198'}, + {'difflib-0.4.0.tar.gz': '6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8'}, + {'doc-comment-0.3.3.tar.gz': 'fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10'}, + {'editdistancek-1.0.2.tar.gz': '3e02df23d5b1c6f9e69fa603b890378123b93073df998a21e6e33b9db0a32613'}, + {'either-1.9.0.tar.gz': 'a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07'}, + {'enum-map-1.1.1.tar.gz': 'e893a7ba6116821058dec84a6fb14fb2a97cd8ce5fd0f85d5a4e760ecd7329d9'}, + {'enum-map-derive-0.6.0.tar.gz': '84278eae0af6e34ff6c1db44c11634a694aafac559ff3080e4db4e4ac35907aa'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'errno-0.3.5.tar.gz': 'ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860'}, + {'fastrand-1.9.0.tar.gz': 'e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be'}, + {'fastrand-2.0.1.tar.gz': '25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'flate2-1.0.27.tar.gz': 'c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010'}, + {'float-cmp-0.8.0.tar.gz': 'e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'fuchsia-cprng-0.1.1.tar.gz': 'a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba'}, + {'futures-0.3.28.tar.gz': '23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40'}, + {'futures-channel-0.3.28.tar.gz': '955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2'}, + {'futures-core-0.3.28.tar.gz': '4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c'}, + {'futures-executor-0.3.28.tar.gz': 'ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0'}, + {'futures-io-0.3.28.tar.gz': '4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964'}, + {'futures-sink-0.3.28.tar.gz': 'f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e'}, + {'futures-task-0.3.28.tar.gz': '76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65'}, + {'futures-util-0.3.28.tar.gz': '26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'gbdt-0.1.1.tar.gz': '74248386ea349f903cee13fae53f41bdae987f74eb798c6cbcb08370c99ccd34'}, + {'gcollections-1.5.0.tar.gz': '2f551fdf23ef80329f754919669147a71c67b6cfe3569cd93b6fabdd62044377'}, + {'getrandom-0.2.10.tar.gz': 'be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427'}, + {'getset-0.1.2.tar.gz': 'e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'hashbrown-0.14.1.tar.gz': '7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexed-0.1.1.tar.gz': 'd480125acf340d6a6e59dab69ae19d6fca3a906e1eade277671272cc8f73794b'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indexmap-2.0.2.tar.gz': '8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'intervallum-1.4.0.tar.gz': 'c8ccecd834666f695ecec3ff0d5fc32e32c91abea91a28fd0aceb4b35a82cee1'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.9.tar.gz': 'af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.149.tar.gz': 'a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'linux-raw-sys-0.4.10.tar.gz': 'da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f'}, + {'lock_api-0.4.10.tar.gz': 'c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16'}, + {'log-0.4.20.tar.gz': 'b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.6.4.tar.gz': 'f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167'}, + {'memoffset-0.9.0.tar.gz': '5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c'}, + {'miniz_oxide-0.7.1.tar.gz': 'e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7'}, + {'multimap-0.8.3.tar.gz': 'e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a'}, + {'nalgebra-0.29.0.tar.gz': 'd506eb7e08d6329505faa8a3a00a5dcc6de9f76e0c77e4b75763ae3c770831ff'}, + {'nalgebra-macros-0.1.0.tar.gz': '01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'needletail-0.5.1.tar.gz': 'db05a5ab397f64070d8c998fa0fbb84e484b81f95752af317dac183a82d9295d'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'normalize-line-endings-0.3.0.tar.gz': '61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be'}, + {'num-complex-0.4.4.tar.gz': '1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214'}, + {'num-integer-0.1.45.tar.gz': '225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.17.tar.gz': '39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c'}, + {'once_cell-1.18.0.tar.gz': 'dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d'}, + {'ordered-float-3.9.1.tar.gz': '2a54938017eacd63036332b4ae5c8a49fc8c0c1d6d629893057e4f13609edd06'}, + {'os_str_bytes-6.5.1.tar.gz': '4d5d9eb14b174ee9aa2ef96dc2b94637a2d4b6e7cb873c7e171f0c20c6cf3eac'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.8.tar.gz': '93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447'}, + {'partitions-0.2.4.tar.gz': '9249745fe5a60e2ebd69cc649af1baf28fa3f4606b24146490124405401510d8'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'petgraph-0.6.4.tar.gz': 'e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9'}, + {'pin-project-lite-0.2.13.tar.gz': '8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58'}, + {'pin-utils-0.1.0.tar.gz': '8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184'}, + {'pkg-config-0.3.27.tar.gz': '26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'predicates-1.0.8.tar.gz': 'f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df'}, + {'predicates-2.1.5.tar.gz': '59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd'}, + {'predicates-core-1.0.6.tar.gz': 'b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174'}, + {'predicates-tree-1.0.9.tar.gz': '368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf'}, + {'proc-macro-error-1.0.4.tar.gz': 'da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c'}, + {'proc-macro-error-attr-1.0.4.tar.gz': 'a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869'}, + {'proc-macro2-0.2.3.tar.gz': 'cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0'}, + {'proc-macro2-1.0.69.tar.gz': '134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da'}, + {'proptest-0.8.7.tar.gz': '926d0604475349f463fe44130aae73f2294b5309ab2ca0310b998bd334ef191f'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-0.4.2.tar.gz': '1eca14c727ad12702eb4b6bfb5a232287dcf8385cb8ca83a3eeaf6519c44c408'}, + {'quote-1.0.33.tar.gz': '5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae'}, + {'rand-0.5.6.tar.gz': 'c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9'}, + {'rand-0.6.5.tar.gz': '6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.1.1.tar.gz': '556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.3.1.tar.gz': '7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b'}, + {'rand_core-0.4.2.tar.gz': '9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rand_distr-0.4.3.tar.gz': '32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31'}, + {'rand_hc-0.1.0.tar.gz': '7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4'}, + {'rand_isaac-0.1.1.tar.gz': 'ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08'}, + {'rand_jitter-0.1.4.tar.gz': '1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b'}, + {'rand_os-0.1.3.tar.gz': '7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071'}, + {'rand_pcg-0.1.2.tar.gz': 'abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44'}, + {'rand_xorshift-0.1.1.tar.gz': 'cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.8.0.tar.gz': '9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1'}, + {'rayon-core-1.12.0.tar.gz': '5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed'}, + {'rdrand-0.4.0.tar.gz': '678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2'}, + {'redox_syscall-0.1.57.tar.gz': '41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce'}, + {'redox_syscall-0.3.5.tar.gz': '567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29'}, + {'reflection-0.1.3.tar.gz': 'f477a471bda4d66e69c64a07ded91ac097ca12614b767b53da3dbd439483c514'}, + {'reflection_derive-0.1.1.tar.gz': 'b420cc74a3c074892142c8a11dbc97273c00983e0ea63119eec45cf188be7729'}, + {'regex-1.10.0.tar.gz': 'd119d7c7ca818f8a53c300863d4f87566aac09943aef5b355bb83969dae75d87'}, + {'regex-automata-0.1.10.tar.gz': '6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132'}, + {'regex-automata-0.4.1.tar.gz': '465c6fc0621e4abc4187a2bda0937bfd4f722c2730b29562e19689ea796c9a4b'}, + {'regex-syntax-0.6.29.tar.gz': 'f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1'}, + {'regex-syntax-0.8.0.tar.gz': 'c3cbb081b9784b07cceb8824c8583f86db4814d172ab043f3c23f7dc600bf83d'}, + {'rust-lapper-1.1.0.tar.gz': 'ee43d8e721ac803031dbab6a944b957b49a3b11eadbc099880c8aaaebf23ed27'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustix-0.38.18.tar.gz': '5a74ee2d7c2581cd139b42447d7d9389b889bdaad3a73f1ebb16f2a3237bb19c'}, + {'rustversion-1.0.14.tar.gz': '7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4'}, + {'rusty-fork-0.2.2.tar.gz': '3dd93264e10c577503e926bd1430193eeb5d21b059148910082245309b424fae'}, + {'ryu-1.0.15.tar.gz': '1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741'}, + {'safe_arch-0.7.1.tar.gz': 'f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354'}, + {'safemem-0.3.3.tar.gz': 'ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.188.tar.gz': 'cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e'}, + {'serde_derive-1.0.188.tar.gz': '4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2'}, + {'serde_derive_internals-0.21.0.tar.gz': '370aa477297975243dc914d0b0e1234927520ec311de507a560fbd1c80f7ab8c'}, + {'serde_json-1.0.107.tar.gz': '6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65'}, + {'serial_test-0.10.0.tar.gz': '1c789ec87f4687d022a2405cf46e0cd6284889f1839de292cadeb6c6019506f2'}, + {'serial_test_derive-0.10.0.tar.gz': 'b64f9e531ce97c88b4778aad0ceee079216071cffec6ac9b904277f8f92e7fe3'}, + {'simba-0.6.0.tar.gz': 'f0b7840f121a46d63066ee7a99fc81dcabbc6105e437cae43528cea199b5a05f'}, + {'simple-logging-2.0.2.tar.gz': 'b00d48e85675326bb182a2286ea7c1a0b264333ae10f27a937a72be08628b542'}, + {'slab-0.4.9.tar.gz': '8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67'}, + {'smallvec-1.11.1.tar.gz': '942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a'}, + {'statrs-0.16.0.tar.gz': '2d08e5e1748192713cc281da8b16924fb46be7b0c2431854eadc785823e5696e'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strum-0.25.0.tar.gz': '290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125'}, + {'strum_macros-0.25.2.tar.gz': 'ad8d03b598d3d0fff69bf533ee3ef19b8eeb342729596df84bcc7e1f96ec4059'}, + {'syn-0.12.15.tar.gz': 'c97c05b8ebc34ddd6b967994d5c6e9852fa92f8b82b3858c39451f97346dcce5'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.38.tar.gz': 'e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b'}, + {'tempfile-3.8.0.tar.gz': 'cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef'}, + {'termcolor-1.3.0.tar.gz': '6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64'}, + {'termtree-0.4.1.tar.gz': '3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76'}, + {'textwrap-0.16.0.tar.gz': '222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d'}, + {'thiserror-1.0.49.tar.gz': '1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4'}, + {'thiserror-impl-1.0.49.tar.gz': '10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc'}, + {'thread-id-3.3.0.tar.gz': 'c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1'}, + {'tikv-jemalloc-sys-0.5.4+5.3.0-patched.tar.gz': + '9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1'}, + {'tikv-jemallocator-0.5.4.tar.gz': '965fe0c26be5c56c94e38ba547249074803efd52adfb66de62107d95aab3eaca'}, + {'trees-0.2.1.tar.gz': 'afa1821e85be4f56cc5bd08bdbc32c0e26d105c90bed9c637992f6c7f747c180'}, + {'trilean-1.1.0.tar.gz': '683ba5022fe6dbd7133cad150478ccf51bdb6d861515181e5fc6b4323d4fa424'}, + {'triple_accel-0.4.0.tar.gz': '22048bc95dfb2ffd05b1ff9a756290a009224b60b2f0e7525faeee7603851e63'}, + {'tsv-0.1.1.tar.gz': '418001090d0ccdf2284690ff051c0c10d18ddd320ea9dd8ff6d205cb8436a0aa'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-xid-0.1.0.tar.gz': 'fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wait-timeout-0.2.0.tar.gz': '9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wide-0.7.12.tar.gz': 'ebecebefc38ff1860b4bc47550bbfa63af5746061cf0d29fcd7fa63171602598'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.6.tar.gz': 'f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-sys-0.48.0.tar.gz': '677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9'}, + {'windows-targets-0.48.5.tar.gz': '9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c'}, + {'windows_aarch64_gnullvm-0.48.5.tar.gz': '2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8'}, + {'windows_aarch64_msvc-0.48.5.tar.gz': 'dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc'}, + {'windows_i686_gnu-0.48.5.tar.gz': 'a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e'}, + {'windows_i686_msvc-0.48.5.tar.gz': '8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406'}, + {'windows_x86_64_gnu-0.48.5.tar.gz': '53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e'}, + {'windows_x86_64_gnullvm-0.48.5.tar.gz': '0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc'}, + {'windows_x86_64_msvc-0.48.5.tar.gz': 'ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('Rust', '1.75.0'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), +] + +# Since we do the download of partitions, remove the download part from skani +prebuildopts = """sed -i -e 's/^partitions = {/#&/' -e 's/^#partitions = ".*/partitions = "0.2.4"/' Cargo.toml && """ + +crates = [ + ('adler', '1.0.2'), + ('aho-corasick', '1.1.2'), + ('anyhow', '1.0.75'), + ('approx', '0.5.1'), + ('assert_cmd', '1.0.8'), + ('atty', '0.2.14'), + ('autocfg', '0.1.8'), + ('autocfg', '1.1.0'), + ('bincode', '1.3.3'), + ('bio', '1.4.0'), + ('bio-types', '1.0.1'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.5.1'), + ('bit-vec', '0.6.3'), + ('bitflags', '1.3.2'), + ('bitflags', '2.4.0'), + ('bstr', '0.2.17'), + ('buffer-redux', '1.0.0'), + ('bv', '0.11.1'), + ('bytecount', '0.6.4'), + ('bytemuck', '1.14.0'), + ('byteorder', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.83'), + ('cfg-if', '0.1.10'), + ('cfg-if', '1.0.0'), + ('clap', '3.2.25'), + ('clap_lex', '0.2.4'), + ('cloudabi', '0.0.3'), + ('crc32fast', '1.3.2'), + ('crossbeam-deque', '0.8.3'), + ('crossbeam-epoch', '0.9.15'), + ('crossbeam-utils', '0.8.16'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('custom_derive', '0.1.7'), + ('dashmap', '5.5.3'), + ('derive-new', '0.5.9'), + ('difference', '2.0.0'), + ('difflib', '0.4.0'), + ('doc-comment', '0.3.3'), + ('editdistancek', '1.0.2'), + ('either', '1.9.0'), + ('enum-map', '1.1.1'), + ('enum-map-derive', '0.6.0'), + ('equivalent', '1.0.1'), + ('errno', '0.3.5'), + ('fastrand', '1.9.0'), + ('fastrand', '2.0.1'), + ('feature-probe', '0.1.1'), + ('fixedbitset', '0.4.2'), + ('flate2', '1.0.27'), + ('float-cmp', '0.8.0'), + ('fnv', '1.0.7'), + ('fuchsia-cprng', '0.1.1'), + ('futures', '0.3.28'), + ('futures-channel', '0.3.28'), + ('futures-core', '0.3.28'), + ('futures-executor', '0.3.28'), + ('futures-io', '0.3.28'), + ('futures-sink', '0.3.28'), + ('futures-task', '0.3.28'), + ('futures-util', '0.3.28'), + ('fxhash', '0.2.1'), + ('gbdt', '0.1.1'), + ('gcollections', '1.5.0'), + ('getrandom', '0.2.10'), + ('getset', '0.1.2'), + ('hashbrown', '0.12.3'), + ('hashbrown', '0.14.1'), + ('heck', '0.4.1'), + ('hermit-abi', '0.1.19'), + ('indexed', '0.1.1'), + ('indexmap', '1.9.3'), + ('indexmap', '2.0.2'), + ('instant', '0.1.12'), + ('intervallum', '1.4.0'), + ('itertools', '0.10.5'), + ('itertools', '0.11.0'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.9'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.149'), + ('libm', '0.2.8'), + ('linux-raw-sys', '0.4.10'), + ('lock_api', '0.4.10'), + ('log', '0.4.20'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.6.4'), + ('memoffset', '0.9.0'), + ('miniz_oxide', '0.7.1'), + ('multimap', '0.8.3'), + ('nalgebra', '0.29.0'), + ('nalgebra-macros', '0.1.0'), + ('ndarray', '0.15.6'), + ('needletail', '0.5.1'), + ('newtype_derive', '0.1.6'), + ('normalize-line-endings', '0.3.0'), + ('num-complex', '0.4.4'), + ('num-integer', '0.1.45'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.17'), + ('once_cell', '1.18.0'), + ('ordered-float', '3.9.1'), + ('os_str_bytes', '6.5.1'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.8'), + ('partitions', '0.2.4'), + ('paste', '1.0.14'), + ('petgraph', '0.6.4'), + ('pin-project-lite', '0.2.13'), + ('pin-utils', '0.1.0'), + ('pkg-config', '0.3.27'), + ('ppv-lite86', '0.2.17'), + ('predicates', '1.0.8'), + ('predicates', '2.1.5'), + ('predicates-core', '1.0.6'), + ('predicates-tree', '1.0.9'), + ('proc-macro-error', '1.0.4'), + ('proc-macro-error-attr', '1.0.4'), + ('proc-macro2', '0.2.3'), + ('proc-macro2', '1.0.69'), + ('proptest', '0.8.7'), + ('quick-error', '1.2.3'), + ('quote', '0.4.2'), + ('quote', '1.0.33'), + ('rand', '0.5.6'), + ('rand', '0.6.5'), + ('rand', '0.8.5'), + ('rand_chacha', '0.1.1'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.3.1'), + ('rand_core', '0.4.2'), + ('rand_core', '0.6.4'), + ('rand_distr', '0.4.3'), + ('rand_hc', '0.1.0'), + ('rand_isaac', '0.1.1'), + ('rand_jitter', '0.1.4'), + ('rand_os', '0.1.3'), + ('rand_pcg', '0.1.2'), + ('rand_xorshift', '0.1.1'), + ('rawpointer', '0.2.1'), + ('rayon', '1.8.0'), + ('rayon-core', '1.12.0'), + ('rdrand', '0.4.0'), + ('redox_syscall', '0.1.57'), + ('redox_syscall', '0.3.5'), + ('reflection', '0.1.3'), + ('reflection_derive', '0.1.1'), + ('regex', '1.10.0'), + ('regex-automata', '0.1.10'), + ('regex-automata', '0.4.1'), + ('regex-syntax', '0.6.29'), + ('regex-syntax', '0.8.0'), + ('rust-lapper', '1.1.0'), + ('rustc_version', '0.1.7'), + ('rustix', '0.38.18'), + ('rustversion', '1.0.14'), + ('rusty-fork', '0.2.2'), + ('ryu', '1.0.15'), + ('safe_arch', '0.7.1'), + ('safemem', '0.3.3'), + ('scopeguard', '1.2.0'), + ('semver', '0.1.20'), + ('serde', '1.0.188'), + ('serde_derive', '1.0.188'), + ('serde_derive_internals', '0.21.0'), + ('serde_json', '1.0.107'), + ('serial_test', '0.10.0'), + ('serial_test_derive', '0.10.0'), + ('simba', '0.6.0'), + ('simple-logging', '2.0.2'), + ('slab', '0.4.9'), + ('smallvec', '1.11.1'), + ('statrs', '0.16.0'), + ('strsim', '0.10.0'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.2'), + ('syn', '0.12.15'), + ('syn', '1.0.109'), + ('syn', '2.0.38'), + ('tempfile', '3.8.0'), + ('termcolor', '1.3.0'), + ('termtree', '0.4.1'), + ('textwrap', '0.16.0'), + ('thiserror', '1.0.49'), + ('thiserror-impl', '1.0.49'), + ('thread-id', '3.3.0'), + ('tikv-jemalloc-sys', '0.5.4+5.3.0-patched'), + ('tikv-jemallocator', '0.5.4'), + ('trees', '0.2.1'), + ('trilean', '1.1.0'), + ('triple_accel', '0.4.0'), + ('tsv', '0.1.1'), + ('typenum', '1.17.0'), + ('unicode-ident', '1.0.12'), + ('unicode-xid', '0.1.0'), + ('vec_map', '0.8.2'), + ('version_check', '0.9.4'), + ('wait-timeout', '0.2.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wide', '0.7.12'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.6'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.48.0'), + ('windows-targets', '0.48.5'), + ('windows_aarch64_gnullvm', '0.48.5'), + ('windows_aarch64_msvc', '0.48.5'), + ('windows_i686_gnu', '0.48.5'), + ('windows_i686_msvc', '0.48.5'), + ('windows_x86_64_gnu', '0.48.5'), + ('windows_x86_64_gnullvm', '0.48.5'), + ('windows_x86_64_msvc', '0.48.5'), + ('xz2', '0.1.7'), +] + +sanity_check_paths = { + 'files': ['bin/skani'], + 'dirs': [], +} + +sanity_check_commands = [ + 'skani --help', +] + + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/snappy/snappy-1.1.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/snappy/snappy-1.1.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f72e577513b --- /dev/null +++ b/easybuild/easyconfigs/s/snappy/snappy-1.1.10-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ + +easyblock = 'CMakeMake' + +name = 'snappy' +version = '1.1.10' + +homepage = 'https://github.com/google/snappy' +description = """Snappy is a compression/decompression library. It does not aim +for maximum compression, or compatibility with any other compression library; +instead, it aims for very high speeds and reasonable compression.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/google/snappy/archive/'] +sources = ['%(version)s.tar.gz'] +patches = [ + '%(name)s-1.1.9_use-default-rtti.patch', +] +checksums = [ + {'1.1.10.tar.gz': '49d831bffcc5f3d01482340fe5af59852ca2fe76c3e05df0e67203ebbe0f1d90'}, + {'snappy-1.1.9_use-default-rtti.patch': 'af56538330b2d781677c7d94576c15fc36e004ae0b4f1ac7d86bbec22b65e73d'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +# Disable building tests and benchmarks - we're not using them and they require googletest and benchmark source code +_configopts = '-DSNAPPY_BUILD_TESTS=OFF -DSNAPPY_BUILD_BENCHMARKS=OFF' +configopts = ['%s' % _configopts, '-DBUILD_SHARED_LIBS=ON %s' % _configopts] + +sanity_check_paths = { + 'files': ['lib64/libsnappy.a', 'lib64/libsnappy.%s' % SHLIB_EXT, 'include/snappy.h'], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/snappy/snappy-1.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/snappy/snappy-1.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2310edf5555 --- /dev/null +++ b/easybuild/easyconfigs/s/snappy/snappy-1.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ + +easyblock = 'CMakeMake' + +name = 'snappy' +version = '1.2.1' + +homepage = 'https://github.com/google/snappy' +description = """Snappy is a compression/decompression library. It does not aim +for maximum compression, or compatibility with any other compression library; +instead, it aims for very high speeds and reasonable compression.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/google/%(name)s/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['%(name)s-1.1.9_use-default-rtti.patch'] +checksums = [ + {'1.2.1.tar.gz': '736aeb64d86566d2236ddffa2865ee5d7a82d26c9016b36218fcc27ea4f09f86'}, + {'snappy-1.1.9_use-default-rtti.patch': 'af56538330b2d781677c7d94576c15fc36e004ae0b4f1ac7d86bbec22b65e73d'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = [ + "-DSNAPPY_BUILD_TESTS=OFF -DSNAPPY_BUILD_BENCHMARKS=OFF", + "-DBUILD_SHARED_LIBS=ON -DSNAPPY_BUILD_TESTS=OFF -DSNAPPY_BUILD_BENCHMARKS=OFF", +] + + +sanity_check_paths = { + 'files': ['lib64/libsnappy.a', 'lib64/libsnappy.%s' % SHLIB_EXT, 'include/snappy.h'], + 'dirs': [], +} + +moduleclass = 'lib' 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/spaln/spaln-3.0.6b-GCC-12.3.0.eb b/easybuild/easyconfigs/s/spaln/spaln-3.0.6b-GCC-12.3.0.eb new file mode 100644 index 00000000000..18fe5408f73 --- /dev/null +++ b/easybuild/easyconfigs/s/spaln/spaln-3.0.6b-GCC-12.3.0.eb @@ -0,0 +1,49 @@ +# updated: Denis Kristak (INUITS) +# Update: Petr Král (INUITS) +easyblock = 'ConfigureMake' + +name = 'spaln' +version = '3.0.6b' + +homepage = 'https://github.com/ogotoh/spaln' +description = """Spaln (space-efficient spliced alignment) is a stand-alone program that maps + and aligns a set of cDNA or protein sequences onto a whole genomic sequence in a single job.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +# disable use of -march=native, which makes compilation fail due to missing header files like fwd2s1_simd.h; +# see also https://github.com/ogotoh/spaln/issues/56 +toolchainopts = {'optarch': False} + +source_urls = ['https://github.com/ogotoh/spaln/archive/'] +sources = ['ver.%(version)s.tar.gz'] +checksums = ['8e496ef6d02696543f4a5e31922f464555eff9b8405da366587ba7bea27b4e76'] + +dependencies = [ + ('zlib', '1.2.13'), + ('Perl', '5.36.1'), +] + +start_dir = 'src' + +# not a standard `configure` - does not accept standard `--prefix` option +# see https://github.com/ogotoh/spaln/issues/74 +prefix_opt = '--exec_prefix=' + +configopts = "--exec_prefix=bin --table_dir=table --alndbs_dir=seqdb" + +installopts = 'DESTDIR=%(installdir)s/' + +fix_perl_shebang_for = ['seqdb/*.pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['makdbs', 'makmdm', 'sortgrcd', 'spaln']], + 'dirs': ['seqdb', 'table'], +} + +sanity_check_commands = ["spaln -h 2>&1 | grep 'SPALN version %(version)s'"] +modextrapaths = { + 'PATH': 'seqdb', + 'PERL5LIB': 'seqdb', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9b8fbb4de7c --- /dev/null +++ b/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +# Updated from previous easyconfig +# Author: Pavel Grochal (INUITS) +# Update: Pavel Tománek (INUITS) +# License: GPLv2 +# Updated to GCCcore-12.3.0 +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = 'sparsehash' +version = '2.0.4' + +homepage = 'https://github.com/sparsehash/sparsehash' +description = """ + An extremely memory-efficient hash_map implementation. 2 bits/entry overhead! + The SparseHash library contains several hash-map implementations, including + implementations that optimize for space or speed. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [GITHUB_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8cd1a95827dfd8270927894eb77f62b4087735cbede953884647f16c521c7e58'] + +builddependencies = [ + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['include/google/type_traits.h'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/s/spglib-python/spglib-python-2.5.0-gfbf-2024a.eb b/easybuild/easyconfigs/s/spglib-python/spglib-python-2.5.0-gfbf-2024a.eb new file mode 100644 index 00000000000..1e50c47e864 --- /dev/null +++ b/easybuild/easyconfigs/s/spglib-python/spglib-python-2.5.0-gfbf-2024a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'spglib-python' +version = '2.5.0' + +homepage = 'https://pypi.python.org/pypi/spglib' +description = """Spglib for Python. + +Spglib is a library for finding and handling crystal symmetries written in C. +""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [ + ('scikit-build-core', '0.10.6') +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), +] + +exts_list = [ + ('pyproject_metadata', '0.8.0', { + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), + ('spglib', version, { + 'checksums': ['f8bb638897be91b9dbd4c085d9fde1f69048f5949e20f3832cb9438e57418d4b'], + }), +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/s/stardist/stardist-0.8.5-foss-2023a.eb b/easybuild/easyconfigs/s/stardist/stardist-0.8.5-foss-2023a.eb new file mode 100644 index 00000000000..60752d43693 --- /dev/null +++ b/easybuild/easyconfigs/s/stardist/stardist-0.8.5-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'stardist' +version = '0.8.5' + +homepage = 'https://github.com/stardist/stardist' +description = "Object Detection with Star-convex Shapes." + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['260a31df86ca711e5e98cb91597c6cb9a10dcd1dc3c6b826d41b7c73c9646a1e'] + +dependencies = [ + ('Python', '3.11.3'), + ('TensorFlow', '2.13.0'), + ('numba', '0.58.1'), + ('scikit-image', '0.22.0'), + ('imageio', '2.33.1'), + ('CSBDeep', '0.7.4'), +] + +sanity_check_paths = { + 'files': ['bin/stardist-predict2d', 'bin/stardist-predict3d'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "stardist-predict2d --help", + "stardist-predict3d --help", +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4-gfbf-2024a.eb b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4-gfbf-2024a.eb new file mode 100644 index 00000000000..d818d827f4f --- /dev/null +++ b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4-gfbf-2024a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'statsmodels' +version = '0.14.4' + +homepage = 'https://www.statsmodels.org/' +description = """Statsmodels is a Python module that allows users to explore data, estimate statistical models, +and perform statistical tests.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [('Cython', '3.0.10')] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), +] + +exts_list = [ + ('patsy', '0.5.6', { + 'checksums': ['95c6d47a7222535f84bff7f63d7303f2e297747a598db89cf5c67f0c0c7d2cdb'], + }), + (name, version, { + 'patches': ['statsmodels-0.14.4_fix_setup.patch'], + 'checksums': [ + {'statsmodels-0.14.4.tar.gz': '5d69e0f39060dc72c067f9bb6e8033b6dccdb0bae101d76a7ef0bcc94e898b67'}, + {'statsmodels-0.14.4_fix_setup.patch': 'd24bedb6382945ac415927faa9279d75d0a71dad56fce7032a58485981b44fe5'}, + ], + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4_fix_setup.patch b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4_fix_setup.patch new file mode 100644 index 00000000000..56e9c5f3e2c --- /dev/null +++ b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4_fix_setup.patch @@ -0,0 +1,13 @@ +# What: Put manually typed version in setup.py +# Author: maxim-masterov (SURF) +diff -Nru statsmodels-0.14.4.orig/setup.py statsmodels-0.14.4/setup.py +--- statsmodels-0.14.4.orig/setup.py 2024-10-10 16:20:53.020145000 +0200 ++++ statsmodels-0.14.4/setup.py 2024-10-10 16:21:08.330504032 +0200 +@@ -353,6 +353,7 @@ + ext_modules=extensions, + maintainer_email=MAINTAINER_EMAIL, + description=DESCRIPTION, ++ version="0.14.1", + license=LICENSE, + url=URL, + download_url=DOWNLOAD_URL, 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..ad691352543 --- /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..0d506c3919d --- /dev/null +++ b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb @@ -0,0 +1,37 @@ +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'), +] + +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', +] + +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/Tombo/Tombo-1.5.1-foss-2023a.eb b/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1-foss-2023a.eb new file mode 100644 index 00000000000..ff1416e8155 --- /dev/null +++ b/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1-foss-2023a.eb @@ -0,0 +1,46 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'Tombo' +version = '1.5.1' + +homepage = 'https://github.com/nanoporetech/tombo' +description = """Tombo is a suite of tools primarily for the identification of modified nucleotides + from raw nanopore sequencing data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('h5py', '3.9.0'), + ('tqdm', '4.66.1'), + ('rpy2', '3.5.15'), +] + +exts_list = [ + ('pyfaidx', '0.5.8', { + 'checksums': ['58f0ff57a875af7e69a12cf1e7086efa4976919ac4dcebbc5f3def6fd4881d0d'], + }), + ('mappy', '2.28', { + 'checksums': ['0ebf7a5d62bd668f5456028215e26176e180ca68161ac18d4f7b48045484cebb'], + }), + ('ont-tombo', version, { + 'modulename': 'tombo', + 'patches': ['Tombo-%(version)s_rpy2-v3.patch'], + 'use_pip_extras': 'full', + 'checksums': [ + {'ont-tombo-1.5.1.tar.gz': 'f5ae8f4c5fc1ab212306ff14ae93fbd1c1034421148ff2e728f169f69a824380'}, + {'Tombo-1.5.1_rpy2-v3.patch': '0d9e5e96aa741b70acbbddbf0d403f55878bdb956def57f1332a4b0d7582a8ff'}, + ], + }), +] + +sanity_check_commands = [ + "tombo --help", + "tombo --version", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1_rpy2-v3.patch b/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1_rpy2-v3.patch new file mode 100644 index 00000000000..6a01efde1e3 --- /dev/null +++ b/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1_rpy2-v3.patch @@ -0,0 +1,14 @@ +Fix Tombo for use with rpy2 v3 by initialising the DataFrame with a dict +https://github.com/nanoporetech/tombo/issues/208 +Patch prepared for EasyBuild by Simon Branford, University of Birmingham +--- tombo/_plot_commands.py.orig 2020-12-16 14:28:04.891944000 +0000 ++++ tombo/_plot_commands.py 2020-12-16 14:28:14.682304346 +0000 +@@ -44,7 +44,7 @@ + try: + from rpy2 import robjects as r + from rpy2.robjects.packages import importr +- _R_DF = r.DataFrame(()) ++ _R_DF = r.DataFrame({}) + except: + # pass here and print detailed error when main functions are actually called + # in to give specific error message 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..7a5dab100e7 --- /dev/null +++ b/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb @@ -0,0 +1,33 @@ +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 +] + +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/Trimmomatic/Trimmomatic-0.39-Java-11.eb b/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-11.eb index ef943749a56..774cefd6fe5 100644 --- a/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-11.eb +++ b/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-11.eb @@ -22,11 +22,18 @@ checksums = ['2f97e3a237378d55c221abfc38e4b11ea232c8a41d511b8b4871f00c0476abca'] dependencies = [('Java', '11')] -modloadmsg = """To execute Trimmomatic run: java -jar $EBROOTTRIMMOMATIC/trimmomatic-%(version)s.jar\n""" +postinstallcmds = [ + "mkdir %(installdir)s/bin", + """echo -e '#!/bin/bash\nexec java -jar "$EBROOTTRIMMOMATIC"/trimmomatic-*.jar "$@"' """ + """> %(installdir)s/bin/trimmomatic""", + "chmod a+rx %(installdir)s/bin/trimmomatic", +] sanity_check_paths = { - 'files': ["trimmomatic-%(version)s.jar"], + 'files': ["trimmomatic-%(version)s.jar", 'bin/trimmomatic'], 'dirs': [""], } +sanity_check_commands = ['trimmomatic -version'] + moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-17.eb b/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-17.eb index a7c64913e3d..e3a36b5ac45 100644 --- a/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-17.eb +++ b/easybuild/easyconfigs/t/Trimmomatic/Trimmomatic-0.39-Java-17.eb @@ -22,11 +22,18 @@ checksums = ['2f97e3a237378d55c221abfc38e4b11ea232c8a41d511b8b4871f00c0476abca'] dependencies = [('Java', '17')] -modloadmsg = """To execute Trimmomatic run: java -jar $EBROOTTRIMMOMATIC/trimmomatic-%(version)s.jar\n""" +postinstallcmds = [ + "mkdir %(installdir)s/bin", + """echo -e '#!/bin/bash\nexec java -jar "$EBROOTTRIMMOMATIC"/trimmomatic-*.jar "$@"' """ + """> %(installdir)s/bin/trimmomatic""", + "chmod a+rx %(installdir)s/bin/trimmomatic", +] sanity_check_paths = { - 'files': ["trimmomatic-%(version)s.jar"], + 'files': ["trimmomatic-%(version)s.jar", 'bin/trimmomatic'], 'dirs': [""], } +sanity_check_commands = ['trimmomatic -version'] + moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2-foss-2023a.eb b/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2-foss-2023a.eb new file mode 100644 index 00000000000..7c85236b0a4 --- /dev/null +++ b/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2-foss-2023a.eb @@ -0,0 +1,65 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: Custom +# +# Notes:: +## + +name = 'Trinity' +version = '2.15.2' + +homepage = 'https://trinityrnaseq.github.io' +description = """Trinity represents a novel method for the efficient and robust de novo reconstruction + of transcriptomes from RNA-Seq data. Trinity combines three independent software modules: Inchworm, + Chrysalis, and Butterfly, applied sequentially to process large volumes of RNA-Seq reads.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/trinityrnaseq/trinityrnaseq/releases/download/%(name)s-v%(version)s'] +sources = ['trinityrnaseq-v%(version)s.FULL.tar.gz'] +patches = ['Trinity-%(version)s_fix-bamsifter.patch'] +checksums = [ + {'trinityrnaseq-v2.15.2.FULL.tar.gz': 'baab87e4878ad097e265c46de121414629bf88fa9342022baae5cac12432a15c'}, + {'Trinity-2.15.2_fix-bamsifter.patch': 'f557a3d462218e27f3601ac07edd2bbafe5fdb088ab81f642e7025edfe3e48ef'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('CMake', '3.26.3'), +] + +# for reference, list of dependencies in the container image used upstream: +# https://github.com/trinityrnaseq/trinityrnaseq/blob/master/Docker/Dockerfile +dependencies = [ + ('Java', '11', '', SYSTEM), + ('ant', '1.10.14', '-Java-%(javaver)s', SYSTEM), + ('picard', '2.25.1', '-Java-%(javaver)s', SYSTEM), + ('GATK', '4.3.0.0', '-Java-%(javaver)s'), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), + ('DB', '18.1.40'), # for DB_File + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('BLAST+', '2.14.1'), + ('BLAT', '3.7'), + ('Bowtie', '1.3.1'), + ('Bowtie2', '2.5.1'), + ('GMAP-GSNAP', '2023-04-20'), + ('HISAT2', '2.2.1'), + ('HTSlib', '1.18'), + ('Jellyfish', '2.3.1'), + ('kallisto', '0.51.1'), + ('ncurses', '6.4'), + ('RSEM', '1.3.3'), + ('Salmon', '1.10.3'), + ('SAMtools', '1.18'), + ('STAR', '2.7.11a'), + ('zlib', '1.2.13'), +] + +withsampledata = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2_fix-bamsifter.patch b/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2_fix-bamsifter.patch new file mode 100644 index 00000000000..9e414a414f1 --- /dev/null +++ b/easybuild/easyconfigs/t/Trinity/Trinity-2.15.2_fix-bamsifter.patch @@ -0,0 +1,18 @@ +Fix build of Trinity plugin bamsifter: +* use external HTSlib from EasyBuild environment +* use compilation flags from environment +author: Alex Domingo (Vrije Universiteit Brussel) +diff -ru trinityrnaseq-v2.15.2.orig/trinity-plugins/bamsifter/Makefile trinityrnaseq-v2.15.2/trinity-plugins/bamsifter/Makefile +--- trinityrnaseq-v2.15.2.orig/trinity-plugins/bamsifter/Makefile 2024-08-01 14:53:23.000000000 +0200 ++++ trinityrnaseq-v2.15.2/trinity-plugins/bamsifter/Makefile 2024-10-21 07:50:10.911559350 +0200 +@@ -2,8 +2,8 @@ + + cwd = $(shell pwd) + +-sift_bam_max_cov: sift_bam_max_cov.cpp htslib/version.h +- g++ -std=c++11 -o _sift_bam_max_cov sift_bam_max_cov.cpp -Wall -O2 -L./htslib/build/lib/ -I./htslib/build/include -lhts ++sift_bam_max_cov: sift_bam_max_cov.cpp ++ g++ -std=c++11 $(CXXFLAGS) -Wall -I$(EBROOTHTSLIB)/include -L$(EBROOTHTSLIB)/lib -lhts -o _sift_bam_max_cov sift_bam_max_cov.cpp + + + htslib/version.h : 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/tRNAscan-SE/tRNAscan-SE-2.0.12-foss-2023a.eb b/easybuild/easyconfigs/t/tRNAscan-SE/tRNAscan-SE-2.0.12-foss-2023a.eb new file mode 100644 index 00000000000..6565ad200bc --- /dev/null +++ b/easybuild/easyconfigs/t/tRNAscan-SE/tRNAscan-SE-2.0.12-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'ConfigureMake' + +name = 'tRNAscan-SE' +version = '2.0.12' + +homepage = 'http://trna.ucsc.edu/tRNAscan-SE/' +description = """tRNAscan-SE is the most widely employed tool for identifying + and annotating tRNA genes in genomes.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/UCSC-LoweLab/tRNAscan-SE/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4b255c2c5e0255381194166f857ab2ea21c55aa7de409e201333ba615aa3dc61'] + +builddependencies = [ + # tRNAscan-SE's configure script really wants Autoconf 2.69 + ('Autoconf', '2.71', '', SYSTEM), +] + +dependencies = [ + ('Perl', '5.36.1'), + ('Infernal', '1.1.5'), +] + +maxparallel = 1 + +# tRNAscan-SE.conf sets the Infernal bin directory to be ours. +postinstallcmds = [ + "for b in $(ls $EBROOTINFERNAL/bin); do ln -s $EBROOTINFERNAL/bin/$b %(installdir)s/bin; done", +] + +fix_perl_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/tRNAscan-SE', 'lib/tRNAscan-SE/tRNAscanSE/tRNA.pm'], + 'dirs': ['include'], +} + +sanity_check_commands = ["tRNAscan-SE --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tantan/tantan-50-GCC-12.3.0.eb b/easybuild/easyconfigs/t/tantan/tantan-50-GCC-12.3.0.eb new file mode 100644 index 00000000000..c4a4ce67c25 --- /dev/null +++ b/easybuild/easyconfigs/t/tantan/tantan-50-GCC-12.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'tantan' +version = '50' + +homepage = 'https://gitlab.com/mcfrith/tantan' +description = "tantan identifies simple regions / low complexity / tandem repeats in DNA or protein sequences" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://gitlab.com/mcfrith/tantan/-/archive/%(version)s/'] +sources = ['tantan-%(version)s.tar.gz'] +checksums = ['a239e9fb3c059ed9eb4c25a29b3c44a2ef1c1b492a9780874f429de7ae8b5407'] + +skipsteps = ['configure'] + +installopts = "prefix=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/tantan'], + 'dirs': [], +} + +sanity_check_commands = ["tantan --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..dcf4c39e8d0 --- /dev/null +++ b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-12.3.0.eb @@ -0,0 +1,64 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# revised by Ariel Lozano + +easyblock = 'Bundle' + +name = 'tbl2asn' +version = '20230713' + +homepage = 'https://www.ncbi.nlm.nih.gov/genbank/tbl2asn2/' +description = """Tbl2asn is a command-line program that automates the creation of + sequence records for submission to GenBank""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +builddependencies = [ + ('binutils', '2.40'), + ('patchelf', '0.18.0'), +] + +# libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); + +default_easyblock = 'CmdCp' + +# It is not entirely clean how long NCBI keeps "older" versions. At April 29, 2022, we had six timestamps/versions, +# reporiting the same verion (tbl2asn --help -> 25.8) but 5 out of 6 (gunzipped) executables have different sha256 +# checksums. + +components = [ + ('libidn', '1.34', { + 'easyblock': 'ConfigureMake', + 'source_urls': [GNU_SOURCE], + 'sources': [SOURCELOWER_TAR_GZ], + 'start_dir': '%(namelower)s-%(version)s', + 'checksums': ['3719e2975f2fb28605df3479c380af2cf4ab4e919e1506527e4c7670afff6e3c'], + }), + (name, version, { + 'source_urls': ['https://ftp.ncbi.nih.gov/toolbox/ncbi_tools/converters/versions/%s/all/' % + (version[:4] + '-' + version[4:6] + '-' + version[6:])], + 'sources': [{'download_filename': 'tbl2asn.linux64.gz', + 'filename': '%(name)s-%(version)s%(versionsuffix)s.gz'}], + 'checksums': ['544c4a2a53f2121fd21c44778fc61980a701ce852ea0142979241c0465c38a0c'], + 'cmds_map': [('.*', "cp %(name)s-%(version)s%(versionsuffix)s tbl2asn")], + 'files_to_copy': [(['tbl2asn'], 'bin')], + }), +] + +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " patchelf --force-rpath --set-rpath %(installdir)s/lib %(installdir)s/bin/tbl2asn;" + "fi", + "chmod +x %(installdir)s/bin/tbl2asn", +] + +sanity_check_paths = { + 'files': ['bin/tbl2asn', 'bin/idn', 'lib/libidn.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +sanity_check_commands = ['tbl2asn --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.2.0.eb b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..3571e61aac4 --- /dev/null +++ b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.2.0.eb @@ -0,0 +1,69 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# revised by Ariel Lozano + +easyblock = 'Bundle' + +name = 'tbl2asn' +version = '20230713' + +homepage = 'https://www.ncbi.nlm.nih.gov/genbank/tbl2asn2/' +description = """Tbl2asn is a command-line program that automates the creation of + sequence records for submission to GenBank""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('patchelf', '0.18.0'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +# libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); + +default_easyblock = 'CmdCp' + +# It is not entirely clean how long NCBI keeps "older" versions. At April 29, 2022, we had six timestamps/versions, +# reporiting the same verion (tbl2asn --help -> 25.8) but 5 out of 6 (gunzipped) executables have different sha256 +# checksums. + +components = [ + ('libidn', '1.34', { + 'easyblock': 'ConfigureMake', + 'source_urls': [GNU_SOURCE], + 'sources': [SOURCELOWER_TAR_GZ], + 'start_dir': '%(namelower)s-%(version)s', + 'checksums': ['3719e2975f2fb28605df3479c380af2cf4ab4e919e1506527e4c7670afff6e3c'], + }), + (name, version, { + 'source_urls': ['https://ftp.ncbi.nih.gov/toolbox/ncbi_tools/converters/versions/%s/all/' % + (version[:4] + '-' + version[4:6] + '-' + version[6:])], + 'sources': [{'download_filename': 'tbl2asn.linux64.gz', + 'filename': '%(name)s-%(version)s%(versionsuffix)s.gz'}], + 'checksums': ['544c4a2a53f2121fd21c44778fc61980a701ce852ea0142979241c0465c38a0c'], + 'cmds_map': [('.*', "cp %(name)s-%(version)s%(versionsuffix)s tbl2asn")], + 'files_to_copy': [(['tbl2asn'], 'bin')], + }), +] + +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " patchelf --force-rpath --set-rpath %(installdir)s/lib %(installdir)s/bin/tbl2asn;" + "fi", + "chmod +x %(installdir)s/bin/tbl2asn", +] + +sanity_check_paths = { + 'files': ['bin/tbl2asn', 'bin/idn', 'lib/libidn.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +sanity_check_commands = ['tbl2asn --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..12b79ddde0f --- /dev/null +++ b/easybuild/easyconfigs/t/tbl2asn/tbl2asn-20230713-GCCcore-13.3.0.eb @@ -0,0 +1,64 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# revised by Ariel Lozano + +easyblock = 'Bundle' + +name = 'tbl2asn' +version = '20230713' + +homepage = 'https://www.ncbi.nlm.nih.gov/genbank/tbl2asn2/' +description = """Tbl2asn is a command-line program that automates the creation of + sequence records for submission to GenBank""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +builddependencies = [ + ('binutils', '2.42'), + ('patchelf', '0.18.0'), +] + +# libraries that are copied to installdir need to be patched to have an RPATH section +# when EasyBuild is configured to use RPATH linking (required to pass RPATH sanity check); + +default_easyblock = 'CmdCp' + +# It is not entirely clean how long NCBI keeps "older" versions. At April 29, 2022, we had six timestamps/versions, +# reporiting the same verion (tbl2asn --help -> 25.8) but 5 out of 6 (gunzipped) executables have different sha256 +# checksums. + +components = [ + ('libidn', '1.34', { + 'easyblock': 'ConfigureMake', + 'source_urls': [GNU_SOURCE], + 'sources': [SOURCELOWER_TAR_GZ], + 'start_dir': '%(namelower)s-%(version)s', + 'checksums': ['3719e2975f2fb28605df3479c380af2cf4ab4e919e1506527e4c7670afff6e3c'], + }), + (name, version, { + 'source_urls': ['https://ftp.ncbi.nih.gov/toolbox/ncbi_tools/converters/versions/%s/all/' % + (version[:4] + '-' + version[4:6] + '-' + version[6:])], + 'sources': [{'download_filename': 'tbl2asn.linux64.gz', + 'filename': '%(name)s-%(version)s%(versionsuffix)s.gz'}], + 'checksums': ['544c4a2a53f2121fd21c44778fc61980a701ce852ea0142979241c0465c38a0c'], + 'cmds_map': [('.*', "cp %(name)s-%(version)s%(versionsuffix)s tbl2asn")], + 'files_to_copy': [(['tbl2asn'], 'bin')], + }), +] + +postinstallcmds = [ + "if %(rpath_enabled)s; then " + " patchelf --force-rpath --set-rpath %(installdir)s/lib %(installdir)s/bin/tbl2asn;" + "fi", + "chmod +x %(installdir)s/bin/tbl2asn", +] + +sanity_check_paths = { + 'files': ['bin/tbl2asn', 'bin/idn', 'lib/libidn.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +sanity_check_commands = ['tbl2asn --help'] + +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/tcsh/tcsh-6.24.13-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tcsh/tcsh-6.24.13-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a7712f10368 --- /dev/null +++ b/easybuild/easyconfigs/t/tcsh/tcsh-6.24.13-GCCcore-13.3.0.eb @@ -0,0 +1,48 @@ +# # +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 University of Luxembourg/Computer Science and Communications Research Unit +# Authors:: Valentin Plugaru +# 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_05-06.html +# # +easyblock = 'ConfigureMake' + +name = 'tcsh' +version = '6.24.13' + +homepage = 'https://www.tcsh.org' +description = """Tcsh is an enhanced, but completely compatible version of the Berkeley UNIX C shell (csh). + It is a command language interpreter usable both as an interactive login shell and a shell script command + processor. It includes a command-line editor, programmable word completion, spelling correction, a history + mechanism, job control and a C-like syntax.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [ + 'https://astron.com/pub/%(namelower)s', + 'https://astron.com/pub/%(namelower)s/old', + 'ftp://ftp.astron.com/pub/%(namelower)s', + 'ftp://ftp.astron.com/pub/%(namelower)s/old', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1e927d52e9c85d162bf985f24d13c6ccede9beb880d86fec492ed15480a5c71a'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('ncurses', '6.5'), +] + +postinstallcmds = ['ln -s %(name)s %(installdir)s/bin/csh'] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'bin/csh'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/t/time/time-1.9-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/time/time-1.9-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..acc1705405e --- /dev/null +++ b/easybuild/easyconfigs/t/time/time-1.9-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'time' +version = '1.9' + +homepage = 'https://www.gnu.org/software/time/' +description = """The `time' command runs another program, then displays information about the resources used by that + program, collected by the system while the program was running.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['fbacf0c81e62429df3e33bda4cee38756604f18e01d977338e23306a3e3b521e'] + +builddependencies = [('binutils', '2.42')] + +postinstallcmds = ["ln -s %(installdir)s/bin/%(name)s %(installdir)s/bin/gtime"] + +sanity_check_paths = { + 'files': ['bin/gtime', 'bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["time echo test"] + +moduleclass = 'tools' 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..feece0d4d2c --- /dev/null +++ b/easybuild/easyconfigs/t/timm/timm-1.0.8-foss-2023a.eb @@ -0,0 +1,38 @@ +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'), +] + +exts_list = [ + ('huggingface_hub', '0.24.5', { + 'checksums': ['7b45d6744dd53ce9cbf9880957de00e9d10a9ae837f1c9b7255fc8fa4e8264f3'], + }), + (name, version, { + 'checksums': ['f54a579f1cc39c43d99a4b03603e39c4cee87d4f0a08aba9c22e19064b30bf95'], + }), +] + +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..d846d6278a5 --- /dev/null +++ b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb @@ -0,0 +1,564 @@ +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 +] + +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/tornado/tornado-6.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tornado/tornado-6.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..0db99b64d8d --- /dev/null +++ b/easybuild/easyconfigs/t/tornado/tornado-6.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +easyblock = "PythonPackage" + +name = "tornado" +version = "6.4.1" + +homepage = "https://github.com/tornadoweb/tornado" +description = "Tornado is a Python web framework and asynchronous networking library." + +toolchain = {"name": "GCCcore", "version": "13.3.0"} + +sources = [SOURCE_TAR_GZ] +patches = ['tornado-6.1_increase-default-timeouts.patch'] +checksums = [ + {'tornado-6.4.1.tar.gz': '92d3ab53183d8c50f8204a51e6f91d18a15d5ef261e84d452800d4ff6fc504e9'}, + {'tornado-6.1_increase-default-timeouts.patch': '32e09dd8243acb8c55162f361880dc294d76770a7ff083c05aef6b8660e3bfb9'}, +] + +builddependencies = [ + ("binutils", "2.42"), +] +dependencies = [ + ("Python", "3.12.3"), +] + +moduleclass = "lib" diff --git a/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2-foss-2023a.eb b/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2-foss-2023a.eb new file mode 100644 index 00000000000..27d7480c372 --- /dev/null +++ b/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2-foss-2023a.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'treeseg' +version = '0.2.2' + +homepage = 'https://github.com/apburt/treeseg' +description = """ +treeseg has been developed to near-automatically segment individual tree point +clouds from high-density larger-area lidar point clouds acquired in forests. A +formal, albeit somewhat outdated description of the methods can be found in our +paper (https://doi.org/10.1111/2041-210X.13121).""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/apburt/treeseg/archive'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fix_boost_include.patch'] +checksums = [ + {'v0.2.2.tar.gz': '69d674ff5eafb24af5a5166fa3ed3b00ebafe9540e747f24a209bb5be3c5227c'}, + {'treeseg-0.2.2_fix_boost_include.patch': '5bc6704c07f61dc24255397327906ed7c2ccc95b2518b51d8b2c2089b746759f'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('PCL', '1.14.1'), + ('Armadillo', '12.6.2'), +] + +_libs = ['libleafsep.%s' % SHLIB_EXT, 'libtreeseg.%s' % SHLIB_EXT] + +_bins = ['downsample', 'getcrownvolume', 'nearestneighbour', 'pcdPointXYZRGB2txt', 'segmentcrown', 'sepwoodleaf', + 'txtPointTreeseg2pcd', 'findstems', 'getdtmslice', 'pcdPointTreeseg2txt', 'plotcoords', 'segmentstem', 'thin'] + +install_cmd = ' && '.join([ + 'mkdir -p %(installdir)s/{lib,bin}', + 'cp %s %%(installdir)s/lib/' % ' '.join(_libs), + 'cp %s %%(installdir)s/bin/' % ' '.join(_bins), +]) + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins] + ['lib/%s' % x for x in _libs], + 'dirs': [], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2_fix_boost_include.patch b/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2_fix_boost_include.patch new file mode 100644 index 00000000000..baedd0de22f --- /dev/null +++ b/easybuild/easyconfigs/t/treeseg/treeseg-0.2.2_fix_boost_include.patch @@ -0,0 +1,58 @@ +From cc6ff5b3b53a227c34171ea91164f4eaa035c890 Mon Sep 17 00:00:00 2001 +From: david +Date: Mon, 20 Mar 2023 21:22:20 +0100 +Subject: [PATCH] fix make error: split is not a member of boost + +--- + src/pcdPointTreeseg2txt.cpp | 1 + + src/pcdPointXYZRGB2txt.cpp | 1 + + src/treeseg.cpp | 1 + + src/txtPointTreeseg2pcd.cpp | 1 + + 4 files changed, 4 insertions(+) + +diff --git a/src/pcdPointTreeseg2txt.cpp b/src/pcdPointTreeseg2txt.cpp +index b189e55..af4d865 100644 +--- a/src/pcdPointTreeseg2txt.cpp ++++ b/src/pcdPointTreeseg2txt.cpp +@@ -1,6 +1,7 @@ + #include "treeseg.h" + + #include ++#include + + int main (int argc, char **argv) + { +diff --git a/src/pcdPointXYZRGB2txt.cpp b/src/pcdPointXYZRGB2txt.cpp +index 9fd1520..f99458f 100644 +--- a/src/pcdPointXYZRGB2txt.cpp ++++ b/src/pcdPointXYZRGB2txt.cpp +@@ -1,4 +1,5 @@ + #include ++#include + + int main (int argc, char **argv) + { +diff --git a/src/treeseg.cpp b/src/treeseg.cpp +index a7a0fd3..590759e 100644 +--- a/src/treeseg.cpp ++++ b/src/treeseg.cpp +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + + //File IO + +diff --git a/src/txtPointTreeseg2pcd.cpp b/src/txtPointTreeseg2pcd.cpp +index cf8b2a0..04abfbe 100644 +--- a/src/txtPointTreeseg2pcd.cpp ++++ b/src/txtPointTreeseg2pcd.cpp +@@ -1,6 +1,7 @@ + #include "treeseg.h" + + #include ++#include + + int main (int argc, char **argv) + { diff --git a/easybuild/easyconfigs/t/trimesh/trimesh-4.4.9-gfbf-2024a.eb b/easybuild/easyconfigs/t/trimesh/trimesh-4.4.9-gfbf-2024a.eb new file mode 100644 index 00000000000..36bfca3d57f --- /dev/null +++ b/easybuild/easyconfigs/t/trimesh/trimesh-4.4.9-gfbf-2024a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'trimesh' +version = '4.4.9' + +homepage = 'https://trimsh.org/' +description = """Trimesh is a Python (2.7- 3.3+) library for loading and using triangular meshes with an emphasis on +watertight meshes. The goal of the library is to provide a fully featured Trimesh object which allows for easy +manipulation and analysis, in the style of the excellent Polygon object in the Shapely library.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e9f54cb4ef70f9db49446cad3845b7a8043fc7d62d9192b241741f3fb0d813ac'] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), # numpy required +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +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..526b6842a97 --- /dev/null +++ b/easybuild/easyconfigs/t/trusTEr/trusTEr-0.1.1-20241025-foss-2023a.eb @@ -0,0 +1,32 @@ +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), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.2.0-GCCcore-13.2.0-CUDA-12.4.0.eb b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.2.0-GCCcore-13.2.0-CUDA-12.4.0.eb new file mode 100644 index 00000000000..62d033af3f2 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.2.0-GCCcore-13.2.0-CUDA-12.4.0.eb @@ -0,0 +1,55 @@ +easyblock = 'ConfigureMake' + +name = 'UCC-CUDA' +version = '1.2.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.2.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.2.0.tar.gz': 'c1552797600835c0cf401b82dc89c4d27d5717f4fb805d41daca8e19f65e509d'}, + {'UCC-CUDA-1.2.0_link_against_existing_UCC_libs.patch': + '84157be5eae96d2501df076bcf0598b104adf80abeca028a144c4fb098638207'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('UCC', version), + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', '-CUDA-%(cudaver)s'), + ('NCCL', '2.20.5', '-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-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..ab382407b53 --- /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..eb57a0f6376 --- /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'], +} + +maxparallel = 1 + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..84c6eaab2e3 --- /dev/null +++ b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'Uni-Core' +version = '0.0.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/dptech-corp/Uni-Core' +description = "An efficient distributed PyTorch framework" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('maturin', '1.4.0', '-Rust-1.75.0') +] +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), + ('jax', '0.4.25', versionsuffix), # provides absl-py + ('tensorboardX', '2.6.2.2'), + ('tqdm', '4.66.1'), + ('wandb', '0.16.1'), +] + +local_preinstallopts = "sed -i " +# local_preinstallopts += "-e 's/DISABLE_CUDA_EXTENSION = False/DISABLE_CUDA_EXTENSION = True/g' " +local_preinstallopts += "-e 's/torch>=[0-9.]*/torch/g' setup.py && " + +exts_list = [ + ('lmdb', '1.5.1', { + 'checksums': ['717c255827d331e02f7242b44051aa06466c90f6d732ecb07b31edfb1e06c67a'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + ('huggingface-hub', '0.24.5', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['7b45d6744dd53ce9cbf9880957de00e9d10a9ae837f1c9b7255fc8fa4e8264f3'], + }), + ('tokenizers', '0.20.0', { + 'checksums': ['39d7acc43f564c274085cafcd1dae9d36f332456de1a31970296a6b8da4eac8d'], + }), + (name, version, { + 'modulename': 'unicore', + 'preinstallopts': local_preinstallopts, + 'source_urls': ['https://github.com/dptech-corp/Uni-Core/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['e7a1e938d7d340d7aa483a05ed5ecf715bfa22f5f32a92e46d096da5b9a08043'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/u/utf8proc/utf8proc-2.9.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/u/utf8proc/utf8proc-2.9.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..61ce906574e --- /dev/null +++ b/easybuild/easyconfigs/u/utf8proc/utf8proc-2.9.0-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'utf8proc' +version = '2.9.0' + +homepage = 'https://github.com/JuliaStrings/utf8proc' +description = """utf8proc is a small, clean C library that provides Unicode normalization, case-folding, +and other operations for data in the UTF-8 encoding.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/JuliaStrings/utf8proc/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['18c1626e9fc5a2e192311e36b3010bfc698078f692888940f1fa150547abb0c1'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +separate_build_dir = True + +configopts = ['-DBUILD_SHARED_LIBS=OFF', '-DBUILD_SHARED_LIBS=ON'] + +sanity_check_paths = { + 'files': ['include/utf8proc.h', 'lib/libutf8proc.a', 'lib/libutf8proc.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-13.2.0.eb b/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-13.2.0.eb new file mode 100644 index 00000000000..3229f12e121 --- /dev/null +++ b/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'VCFtools' +version = '0.1.16' + +homepage = 'https://vcftools.github.io' +description = """The aim of VCFtools is to provide + easily accessible methods for working with complex + genetic variation data in the form of VCF files.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +github_account = '%(namelower)s' +source_urls = [GITHUB_LOWER_RELEASE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['dbfc774383c106b85043daa2c42568816aa6a7b4e6abc965eeea6c47dde914e3'] + +builddependencies = [ + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('Perl', '5.38.0'), + ('HTSlib', '1.19.1'), +] + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'bin/vcf-sort', 'bin/vcf-stats'], + 'dirs': [], +} + +modextrapaths = {'PERL5LIB': 'lib/perl5/site_perl'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VEP/VEP-113.0-GCC-12.3.0.eb b/easybuild/easyconfigs/v/VEP/VEP-113.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..fc4166c3cd1 --- /dev/null +++ b/easybuild/easyconfigs/v/VEP/VEP-113.0-GCC-12.3.0.eb @@ -0,0 +1,44 @@ +name = 'VEP' +version = '113.0' + +homepage = 'https://www.ensembl.org/info/docs/tools/vep' +description = """Variant Effect Predictor (VEP) determines the effect of your + variants (SNPs, insertions, deletions, CNVs or structural variants) on genes, + transcripts, and protein sequence, as well as regulatory regions. + Includes EnsEMBL-XS, which provides pre-compiled replacements for frequently + used routines in VEP.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/Ensembl/ensembl-vep/archive/release/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5bb9aa8098d36c75076204693e13ef38b43c57dfce3d7d0169d119a5b4f87164'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Archive-Zip', '1.68'), + ('DBD-mysql', '4.050'), + ('BioPerl', '1.7.8'), + ('Bio-DB-HTS', '3.01'), + # VEP requires Compress::Raw::Zlib >= 2.103 + ('Compress-Raw-Zlib', '2.213'), +] + +# To select all species use 'all' (but this was broken as of 2024.02.01 and species need to explicitly listed +# with comma separation, see https://github.com/Ensembl/ensembl-vep/issues/1364#issuecomment-1753080504) +species = 'cyprinus_carpio_carpio' + +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", "") + +exts_list = [ + ('Bio::EnsEMBL::XS', '2.3.2', { + 'source_urls': ['https://github.com/Ensembl/ensembl-xs/archive'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['aafc59568cd1042259196575e99cdfeef9c0fb7966e5f915cfaf38c70885ffa5'], + }), +] + +sanity_check_commands = ['vep --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VEP/VEP-113.3-GCC-13.3.0.eb b/easybuild/easyconfigs/v/VEP/VEP-113.3-GCC-13.3.0.eb new file mode 100644 index 00000000000..1996303d91d --- /dev/null +++ b/easybuild/easyconfigs/v/VEP/VEP-113.3-GCC-13.3.0.eb @@ -0,0 +1,44 @@ +name = 'VEP' +version = '113.3' + +homepage = 'https://www.ensembl.org/info/docs/tools/vep' +description = """Variant Effect Predictor (VEP) determines the effect of your + variants (SNPs, insertions, deletions, CNVs or structural variants) on genes, + transcripts, and protein sequence, as well as regulatory regions. + Includes EnsEMBL-XS, which provides pre-compiled replacements for frequently + used routines in VEP.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/Ensembl/ensembl-vep/archive/release/'] +sources = ['%(version)s.tar.gz'] +checksums = ['ee68013eb035e17129e8f69977f525ebdd8321e73b3164a7bda6e103e2d10beb'] + +dependencies = [ + ('Perl', '5.38.2'), + ('Archive-Zip', '1.68'), + ('DBD-mysql', '4.051'), + ('BioPerl', '1.7.8'), + ('Bio-DB-HTS', '3.01'), + # VEP requires Compress::Raw::Zlib >= 2.103 + ('Compress-Raw-Zlib', '2.213'), +] + +# To select all species use 'all' (but this was broken as of 2024.02.01 and species need to explicitly listed +# with comma separation, see https://github.com/Ensembl/ensembl-vep/issues/1364#issuecomment-1753080504) +species = 'cyprinus_carpio_carpio' + +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", "") + +exts_list = [ + ('Bio::EnsEMBL::XS', '2.3.2', { + 'source_urls': ['https://github.com/Ensembl/ensembl-xs/archive'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['aafc59568cd1042259196575e99cdfeef9c0fb7966e5f915cfaf38c70885ffa5'], + }), +] + +sanity_check_commands = ['vep --help'] + +moduleclass = 'bio' 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/v/Voro++/Voro++-0.4.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9f6458281b3 --- /dev/null +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'Voro++' +version = '0.4.6' + +homepage = 'http://math.lbl.gov/voro++/' +description = """Voro++ is a software library for carrying out three-dimensional computations of the Voronoi +tessellation. A distinguishing feature of the Voro++ library is that it carries out cell-based calculations, +computing the Voronoi cell for each particle individually. It is particularly well-suited for applications that +rely on cell-based statistics, where features of Voronoi cells (eg. volume, centroid, number of faces) can be used +to analyze a system of particles.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] + +builddependencies = [('binutils', '2.42')] + + +# No configure +skipsteps = ['configure'] + +# Override CXX and CFLAGS variables from Makefile +buildopts = 'CXX="$CXX" CFLAGS="$CXXFLAGS"' + +# Override PREFIX variable from Makefile +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/voro++', 'lib/libvoro++.a', 'include/voro++/voro++.hh'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..e63f4f99b7d --- /dev/null +++ b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.2.0.eb @@ -0,0 +1,23 @@ +easyblock = 'PythonPackage' + +name = 'versioningit' +version = '3.1.2' + +homepage = 'https://github.com/jwodder/versioningit' +description = """versioningit is yet another Python packaging plugin for automatically determining your +package’s version based on your version control repository’s tags. +Unlike others, it allows easy customization of the version format and even lets you easily override +the separate functions used for version extraction & calculation.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] +dependencies = [('Python', '3.11.5')] + +sources = [SOURCE_TAR_GZ] +checksums = ['4db83ed99f56b07d83940bee3445ca46ca120d13b6b304cdb5fb44e5aa4edec0'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/w/WPS/WPS-4.6.0-foss-2024a-dmpar.eb b/easybuild/easyconfigs/w/WPS/WPS-4.6.0-foss-2024a-dmpar.eb new file mode 100644 index 00000000000..389aac870e5 --- /dev/null +++ b/easybuild/easyconfigs/w/WPS/WPS-4.6.0-foss-2024a-dmpar.eb @@ -0,0 +1,41 @@ +name = 'WPS' +version = '4.6.0' + +homepage = 'https://www.mmm.ucar.edu/models/wrf' +description = """WRF Preprocessing System (WPS) for WRF. The Weather Research and Forecasting (WRF) Model is + a next-generation mesoscale numerical weather prediction system designed to serve both operational + forecasting and atmospheric research needs.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/wrf-model/WPS/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'WPS-%(version)s_netCDF-Fortran_separate_path.patch', + 'WPS-4.6.0_fix_jasper_decode.patch', +] + +checksums = [ + 'ca7bbfc6c28a107c6eb00ded70e693f5c9a3926ecde7656f49e306c9eb9a309b', # v4.6.1.tar.gz + 'ed49d5af4e6c80d9ddd9954b968c514cf888c3b35dce64744d1ac1eaa38b7042', # WPS-4.4_netCDF-Fortran_separate_path.patch + 'f4ea3c77c42c3474d582e311b8bd0d80c67243f45922e85ee3ff52df61d6c77e', # WPS-4.6.0_fix_jasper_decode.patch +] + +buildtype = "dmpar" +versionsuffix = '-%s' % buildtype + +builddependencies = [ + ('Perl', '5.38.2'), +] + +dependencies = [ + ('WRF', '4.6.1', versionsuffix), + ('JasPer', '4.2.4'), + ('netCDF', '4.9.2'), + ('netCDF-Fortran', '4.6.1'), + ('zlib', '1.3.1'), + ('libpng', '1.6.43'), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/w/WPS/WPS-4.6.0_fix_jasper_decode.patch b/easybuild/easyconfigs/w/WPS/WPS-4.6.0_fix_jasper_decode.patch new file mode 100644 index 00000000000..4f6d416931f --- /dev/null +++ b/easybuild/easyconfigs/w/WPS/WPS-4.6.0_fix_jasper_decode.patch @@ -0,0 +1,31 @@ +# Using correct JasPer functions +# ============================== +# WPS uses depreceated version of JasPer interface. +# See https://github.com/wrf-model/WPS/issues/207 +# @author Stefan Wolfsheimer (SURF) + + +diff -Nru WPS-4.6.0.orig/ungrib/src/ngl/g2/dec_jpeg2000.c WPS-4.6.0/ungrib/src/ngl/g2/dec_jpeg2000.c +--- WPS-4.6.0.orig/ungrib/src/ngl/g2/dec_jpeg2000.c 2024-06-13 00:06:55.000000000 +0200 ++++ WPS-4.6.0/ungrib/src/ngl/g2/dec_jpeg2000.c 2024-11-29 10:58:34.322941000 +0100 +@@ -80,7 +80,7 @@ + /* + * Decode JPEG200 codestream into jas_image_t structure. + */ +- image=jpc_decode(jpcstream,opts); ++ image=jas_image_decode(jpcstream,jas_image_getfmt(jpcstream),opts); + if ( image == 0 ) { + printf(" jpc_decode return = %d \n",ier); + return -3; +diff -Nru WPS-4.6.0.orig/ungrib/src/ngl/g2/enc_jpeg2000.c WPS-4.6.0/ungrib/src/ngl/g2/enc_jpeg2000.c +--- WPS-4.6.0.orig/ungrib/src/ngl/g2/enc_jpeg2000.c 2024-06-13 00:06:55.000000000 +0200 ++++ WPS-4.6.0/ungrib/src/ngl/g2/enc_jpeg2000.c 2024-11-29 10:58:40.467583000 +0100 +@@ -178,7 +178,7 @@ + /* + * Encode image. + */ +- ier=jpc_encode(&image,jpcstream,opts); ++ ier=jas_image_encode(&image,jpcstream,opts); + if ( ier != 0 ) { + printf(" jpc_encode return = %d \n",ier); + return -3; diff --git a/easybuild/easyconfigs/w/WPS/WPS-4.6.0_netCDF-Fortran_separate_path.patch b/easybuild/easyconfigs/w/WPS/WPS-4.6.0_netCDF-Fortran_separate_path.patch new file mode 100644 index 00000000000..098eed8d7fe --- /dev/null +++ b/easybuild/easyconfigs/w/WPS/WPS-4.6.0_netCDF-Fortran_separate_path.patch @@ -0,0 +1,51 @@ +# Allow netCDF library with separate directories for C and Fortran +# ============================================================================ +# This patch has been around in EasyBuild since 2013; it was committed by +# @boegel then. Adapted by @andreas-h to accomodate WPSv4 and foss toolchain +# updated for WPS v4.6.0 by Stefan Wolfsheimer (SURF) + + +diff -Nru WPS-4.6.0.orig/arch/preamble WPS-4.6.0/arch/preamble +--- WPS-4.6.0.orig/arch/preamble 2024-06-13 00:06:55.000000000 +0200 ++++ WPS-4.6.0/arch/preamble 2024-11-29 09:25:27.634254674 +0100 +@@ -39,13 +39,14 @@ + -I$(WRF_DIR)/external/io_grib1 \ + -I$(WRF_DIR)/external/io_int \ + -I$(WRF_DIR)/inc \ +- -I$(NETCDF)/include ++ -I$(NETCDF)/include \ ++ -I$(NETCDFF_DIR)/include + + WRF_LIB = -L$(WRF_DIR)/external/io_grib1 -lio_grib1 \ + -L$(WRF_DIR)/external/io_grib_share -lio_grib_share \ + -L$(WRF_DIR)/external/io_int -lwrfio_int \ + -L$(WRF_DIR)/external/io_netcdf -lwrfio_nf \ +- -L$(NETCDF)/lib CONFIGURE_NETCDFF_LIB -lnetcdf ++ -L$(NETCDF)/lib -L$(NETCDFF_DIR)/lib -lnetcdff -lnetcdf + + #### Architecture specific settings #### + +diff -Nru WPS-4.6.0.orig/configure WPS-4.6.0/configure +--- WPS-4.6.0.orig/configure 2024-06-13 00:06:55.000000000 +0200 ++++ WPS-4.6.0/configure 2024-11-29 09:17:10.196985634 +0100 +@@ -161,7 +161,7 @@ + # for 3.6.2 and greater there might be a second library, libnetcdff.a . Check for this and use + # if available + NETCDFF=" " +- if [ -f "$NETCDF/lib/libnetcdff.a" ] ; then ++ if [ -f "$NETCDFF_DIR/lib/libnetcdff.a" ] ; then + NETCDFF="-lnetcdff" + fi + else +@@ -429,9 +429,9 @@ + FFLAGS=`grep ^FFLAGS configure.wps | cut -d"=" -f2-` + FORMAT_FREE=`grep ^FORMAT_FREE configure.wps | cut -d"=" -f2-` + FFLAGS=`printf "%s" "${FFLAGS}" | sed -e "s/\\$(FORMAT_FREE)/${FORMAT_FREE}/g"` +- cp $NETCDF/include/netcdf.inc . ++ cp $NETCDFF_DIR/include/netcdf.inc . + FC=`grep ^SFC configure.wps | cut -d"=" -f2-` +- $FC ${FFLAGS} fort_netcdf.f -o fort_netcdf -L${NETCDF}/lib $NETCDFF -lnetcdf > /dev/null 2>&1 ++ $FC ${FFLAGS} fort_netcdf.f -o fort_netcdf -L${NETCDF}/lib -L${NETCDFF_DIR}/lib $NETCDFF -lnetcdf > /dev/null 2>&1 + if [ -f "fort_netcdf" ] ; then + ./fort_netcdf > /dev/null 2>&1 + if [ $? = 0 ]; then diff --git a/easybuild/easyconfigs/w/WRF/WRF-4.6.1-foss-2024a-dmpar.eb b/easybuild/easyconfigs/w/WRF/WRF-4.6.1-foss-2024a-dmpar.eb new file mode 100644 index 00000000000..82904273536 --- /dev/null +++ b/easybuild/easyconfigs/w/WRF/WRF-4.6.1-foss-2024a-dmpar.eb @@ -0,0 +1,45 @@ +name = 'WRF' +version = '4.6.1' +buildtype = 'dmpar' +versionsuffix = '-%s' % buildtype + +homepage = 'https://www.mmm.ucar.edu/models/wrf' +description = """The Weather Research and Forecasting (WRF) Model is a next-generation mesoscale + numerical weather prediction system designed to serve both operational forecasting and atmospheric + research needs.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'opt': False} # don't use agressive optimization, stick to -O2 + +github_account = 'wrf-model' +source_urls = [GITHUB_RELEASE] +sources = ['v%(version)s.tar.gz'] + +# WRF-4.5.1_netCDF-Fortran_separate_path.patch no longer required for version 4.5.2 + +checksums = [ + {'v4.6.1.tar.gz': 'b8ec11b240a3cf1274b2bd609700191c6ec84628e4c991d3ab562ce9dc50b5f2'}, +] + +# csh is used by WRF install scripts +builddependencies = [ + ('Autotools', '20231222'), + ('tcsh', '6.24.13'), + ('time', '1.9'), + ('Perl', '5.38.2'), +] + +dependencies = [ + ('JasPer', '4.2.4'), + ('netCDF', '4.9.2'), + ('netCDF-Fortran', '4.6.1'), +] + +preconfigopts = "export NETCDF=$EBROOTNETCDFMINFORTRAN && export NETCDF_C=$EBROOTNETCDF &&" + +runtest = True + +# limit parallel build to 20 +maxparallel = 20 + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2023a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2023a.eb index 9807690b35c..57105d3bdb6 100644 --- a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2023a.eb +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2023a.eb @@ -12,10 +12,12 @@ 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'] +patches = ['Wannier90_3x_ignore_makeinc.patch', + 'Wannier90_3.1.0_fix_mpi_include.patch'] checksums = [ '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch + 'dd7217d8bf12ac4161fd0b6504f7c085ebcc69b23ab2ac4abcf9251f34b8bc30', # Wannier90_3.1.0_fix_mpi_include.patch ] # The -fallow-argument-mismatch allows MPI communication calls to be @@ -25,10 +27,11 @@ buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismat buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' buildopts += 'COMMS=mpi' -files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] sanity_check_paths = { - 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], 'dirs': [] } diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2024a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2024a.eb index 3228ba164b9..26e4b587a1f 100644 --- a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2024a.eb +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2024a.eb @@ -12,10 +12,12 @@ 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'] +patches = ['Wannier90_3x_ignore_makeinc.patch', + 'Wannier90_3.1.0_fix_mpi_include.patch'] checksums = [ '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch + 'dd7217d8bf12ac4161fd0b6504f7c085ebcc69b23ab2ac4abcf9251f34b8bc30', # Wannier90_3.1.0_fix_mpi_include.patch ] buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismatch" LDOPTS="$FFLAGS" ' diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb index 336ac8a3895..a3e59ef46a9 100644 --- a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb @@ -12,10 +12,12 @@ 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'] +patches = ['Wannier90_3x_ignore_makeinc.patch', + 'Wannier90_3.1.0_fix_mpi_include.patch'] checksums = [ '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch + 'dd7217d8bf12ac4161fd0b6504f7c085ebcc69b23ab2ac4abcf9251f34b8bc30', # Wannier90_3.1.0_fix_mpi_include.patch ] # The -fallow-argument-mismatch allows MPI communication calls to be @@ -25,10 +27,11 @@ buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismat buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' buildopts += 'COMMS=mpi' -files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] sanity_check_paths = { - 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], 'dirs': [] } 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/w/Wannier90/Wannier90-3.1.0-intel-2023a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2023a.eb index cf258368771..eb71d75290d 100644 --- a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2023a.eb +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2023a.eb @@ -12,20 +12,23 @@ 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'] +patches = ['Wannier90_3x_ignore_makeinc.patch', + 'Wannier90_3.1.0_fix_mpi_include.patch'] checksums = [ '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch + 'dd7217d8bf12ac4161fd0b6504f7c085ebcc69b23ab2ac4abcf9251f34b8bc30', # Wannier90_3.1.0_fix_mpi_include.patch ] buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' buildopts += 'COMMS=mpi' -files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] sanity_check_paths = { - 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], 'dirs': [] } diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2024a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2024a.eb index dd30db79af6..34d3457ccc4 100644 --- a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2024a.eb +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2024a.eb @@ -12,20 +12,23 @@ 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'] +patches = ['Wannier90_3x_ignore_makeinc.patch', + 'Wannier90_3.1.0_fix_mpi_include.patch'] checksums = [ '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch + 'dd7217d8bf12ac4161fd0b6504f7c085ebcc69b23ab2ac4abcf9251f34b8bc30', # Wannier90_3.1.0_fix_mpi_include.patch ] buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' buildopts += 'COMMS=mpi' -files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] sanity_check_paths = { - 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], 'dirs': [] } diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90_3.1.0_fix_mpi_include.patch b/easybuild/easyconfigs/w/Wannier90/Wannier90_3.1.0_fix_mpi_include.patch new file mode 100644 index 00000000000..fdc859c8a7f --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90_3.1.0_fix_mpi_include.patch @@ -0,0 +1,27 @@ +Use "use mpi" to load all required interfaces. +See https://github.com/wannier-developers/wannier90/issues/521 +Author: Stefan Wolfsheimer (SURF) + + +diff -ruN wannier90-3.1.0.orig/src/comms.F90 wannier90-3.1.0/src/comms.F90 +--- wannier90-3.1.0.orig/src/comms.F90 2020-03-05 19:41:10.000000000 +0100 ++++ wannier90-3.1.0/src/comms.F90 2024-10-21 17:01:00.542755184 +0200 +@@ -23,15 +23,13 @@ + + use w90_constants, only: dp + use w90_io, only: io_error +- ++#ifdef MPI ++ use mpi ++#endif + implicit none + + private + +-#ifdef MPI +- include 'mpif.h' +-#endif +- + logical, public, save :: on_root + !! Are we the root node + integer, public, save :: num_nodes diff --git a/easybuild/easyconfigs/w/Wayland/Wayland-1.23.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/w/Wayland/Wayland-1.23.0-GCCcore-13.3.0.eb index 0a27bdb7254..cde65747d4f 100644 --- a/easybuild/easyconfigs/w/Wayland/Wayland-1.23.0-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/w/Wayland/Wayland-1.23.0-GCCcore-13.3.0.eb @@ -51,6 +51,12 @@ components = [ 'sources': [SOURCE_TAR_XZ], 'preconfigopts': "PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH " }), + ('wayland-utils', '1.2.0', { + 'source_urls': ['https://gitlab.freedesktop.org/wayland/wayland-utils/-/releases/%(version)s/downloads'], + 'sources': [SOURCE_TAR_XZ], + 'checksums': ['d9278c22554586881802540751bcc42569262bf80cd9ac9b0fd12ff4bd09a9e4'], + 'preconfigopts': "PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH " + }), ] _libs = ['lib/libwayland-%s.%s' % (x, SHLIB_EXT) for x in ['client', 'cursor', 'egl', 'server']] diff --git a/easybuild/easyconfigs/w/Whisper/Whisper-20240930-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/w/Whisper/Whisper-20240930-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..11167243e3f --- /dev/null +++ b/easybuild/easyconfigs/w/Whisper/Whisper-20240930-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'Whisper' +version = '20240930' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://github.com/openai/whisper' +description = "Whisper is a general-purpose speech recognition model" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('tqdm', '4.66.1'), + ('numba', '0.58.1'), + ('PyTorch', '2.1.2', versionsuffix), + ('tiktoken', '0.7.0'), + ('Triton', '2.1.0', versionsuffix), + ('FFmpeg', '6.0'), +] + +exts_list = [ + ('openai-whisper', version, { + 'modulename': 'whisper', + 'checksums': ['b7178e9c1615576807a300024f4daa6353f7e1a815dac5e38c33f1ef055dd2d2'], + }), +] + +sanity_check_paths = { + 'files': ['bin/whisper'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["whisper --help"] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a-CUDA-12.1.1.eb index 2fa03007208..82fa0a35a2a 100644 --- a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a-CUDA-12.1.1.eb @@ -28,7 +28,7 @@ dependencies = [ ('CUDA', '12.1.1', '', SYSTEM), ] -parallel = 1 +maxparallel = 1 # default CUDA compute capabilities to use (override via --cuda-compute-capabilities) cuda_compute_capabilities = ['5.2', '6.0', '7.0', '7.5', '8.0', '8.6', '9.0'] diff --git a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb index 437a60f61e9..2575e0157fa 100644 --- a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb @@ -26,7 +26,7 @@ dependencies = [ ('Boost.MPI', '1.82.0'), ] -parallel = 1 +maxparallel = 1 configopts = "-DWALBERLA_BUILD_WITH_PYTHON=OFF " configopts += "-DWALBERLA_BUILD_SHOWCASES=OFF " diff --git a/easybuild/easyconfigs/w/wrapt/wrapt-1.16.0-gfbf-2024a.eb b/easybuild/easyconfigs/w/wrapt/wrapt-1.16.0-gfbf-2024a.eb new file mode 100644 index 00000000000..87095d0505d --- /dev/null +++ b/easybuild/easyconfigs/w/wrapt/wrapt-1.16.0-gfbf-2024a.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonBundle' + +name = 'wrapt' +version = '1.16.0' + +homepage = 'https://pypi.org/project/wrapt/' +description = """The aim of the wrapt module is to provide a transparent object +proxy for Python, which can be used as the basis for the construction of +function wrappers and decorator functions.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), +] + +exts_list = [ + (name, version, { + 'checksums': ['5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.2.0.eb b/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.2.0.eb new file mode 100644 index 00000000000..1805d927dbb --- /dev/null +++ b/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.2.0.eb @@ -0,0 +1,71 @@ +easyblock = 'ConfigureMake' + +name = 'wxWidgets' +version = '3.2.6' + +homepage = 'https://www.wxwidgets.org' +description = """wxWidgets is a C++ library that lets developers create +applications for Windows, Mac OS X, Linux and other platforms with a +single code base. It has popular language bindings for Python, Perl, +Ruby and many other languages, and unlike other cross-platform toolkits, +wxWidgets gives applications a truly native look and feel because it +uses the platform's native API rather than emulating the GUI.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +github_account = 'wxWidgets' +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_BZ2] +checksums = ['939e5b77ddc5b6092d1d7d29491fe67010a2433cf9b9c0d841ee4d04acb9dce7'] + +builddependencies = [ + ('gettext', '0.22'), + ('pkgconf', '2.0.3'), + ('Python', '3.11.5'), +] + +dependencies = [ + ('libpng', '1.6.40'), + ('zlib', '1.2.13'), + ('libjpeg-turbo', '3.0.1'), + ('XZ', '5.4.4'), + ('jbigkit', '2.1'), + ('LibTIFF', '4.6.0'), + ('expat', '2.5.0'), + ('GTK3', '3.24.39'), + ('X11', '20231019'), + ('Mesa', '23.1.9'), + ('libGLU', '9.0.3'), + ('SDL2', '2.28.5'), + ('cairo', '1.18.0'), + ('GST-plugins-base', '1.24.8'), + ('GLib', '2.78.1'), +] + +local_cpath_ext = '$EBROOTGTKPLUS/include/gtk-3.0:$EBROOTGLIB/include/glib-2.0:$EBROOTGLIB/lib/glib-2.0/include' + +preconfigopts = 'CPATH=$CPATH:%s ' % local_cpath_ext + +configopts = '--enable-intl --enable-ipv6 ' +# Options required by wxPython +configopts += '--with-gtk=3 --with-gtk-prefix=$EBROOTGTKPLUS ' +# Note: the configure step might claim to find OpenGL headers in +# /usr/include, but it will still use the ones from the Mesa dependency above +configopts += '--with-opengl ' +configopts += '--enable-unicode --enable-sound --enable-graphics_ctx ' +configopts += '--enable-mediactrl --enable-display --enable-geometry ' +configopts += '--enable-debug_flag --enable-optimise --disable-debugreport ' +configopts += '--enable-autoidman --with-sdl ' +configopts += '--disable-webview --disable-webviewwebkit ' +configopts += '--disable-tests ' + + +prebuildopts = 'CPATH=$CPATH:%s ' % local_cpath_ext + +sanity_check_paths = { + 'files': ['bin/wx-config', 'bin/wxrc'], + 'dirs': ['include/wx-%(version_major_minor)s/wx', 'lib', 'share'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.3.0.eb b/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.3.0.eb new file mode 100644 index 00000000000..0c9c8976770 --- /dev/null +++ b/easybuild/easyconfigs/w/wxWidgets/wxWidgets-3.2.6-GCC-13.3.0.eb @@ -0,0 +1,71 @@ +easyblock = 'ConfigureMake' + +name = 'wxWidgets' +version = '3.2.6' + +homepage = 'https://www.wxwidgets.org' +description = """wxWidgets is a C++ library that lets developers create +applications for Windows, Mac OS X, Linux and other platforms with a +single code base. It has popular language bindings for Python, Perl, +Ruby and many other languages, and unlike other cross-platform toolkits, +wxWidgets gives applications a truly native look and feel because it +uses the platform's native API rather than emulating the GUI.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'wxWidgets' +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_BZ2] +checksums = ['939e5b77ddc5b6092d1d7d29491fe67010a2433cf9b9c0d841ee4d04acb9dce7'] + +builddependencies = [ + ('gettext', '0.22.5'), + ('pkgconf', '2.2.0'), + ('Python', '3.12.3'), +] + +dependencies = [ + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('libjpeg-turbo', '3.0.1'), + ('XZ', '5.4.5'), + ('jbigkit', '2.1'), + ('LibTIFF', '4.6.0'), + ('expat', '2.6.2'), + ('GTK3', '3.24.42'), + ('X11', '20240607'), + ('Mesa', '24.1.3'), + ('libGLU', '9.0.3'), + ('SDL2', '2.30.6'), + ('cairo', '1.18.0'), + ('GST-plugins-base', '1.24.8'), + ('GLib', '2.80.4'), +] + +local_cpath_ext = '$EBROOTGTKPLUS/include/gtk-3.0:$EBROOTGLIB/include/glib-2.0:$EBROOTGLIB/lib/glib-2.0/include' + +preconfigopts = 'CPATH=$CPATH:%s ' % local_cpath_ext + +configopts = '--enable-intl --enable-ipv6 ' +# Options required by wxPython +configopts += '--with-gtk=3 --with-gtk-prefix=$EBROOTGTKPLUS ' +# Note: the configure step might claim to find OpenGL headers in +# /usr/include, but it will still use the ones from the Mesa dependency above +configopts += '--with-opengl ' +configopts += '--enable-unicode --enable-sound --enable-graphics_ctx ' +configopts += '--enable-mediactrl --enable-display --enable-geometry ' +configopts += '--enable-debug_flag --enable-optimise --disable-debugreport ' +configopts += '--enable-autoidman --with-sdl ' +configopts += '--disable-webview --disable-webviewwebkit ' +configopts += '--disable-tests ' + + +prebuildopts = 'CPATH=$CPATH:%s ' % local_cpath_ext + +sanity_check_paths = { + 'files': ['bin/wx-config', 'bin/wxrc'], + 'dirs': ['include/wx-%(version_major_minor)s/wx', 'lib', 'share'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-13.2.0.eb b/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..7c564210edb --- /dev/null +++ b/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-13.2.0.eb @@ -0,0 +1,61 @@ +easyblock = 'Bundle' + +name = 'XML-Compile' +version = '1.63' + +homepage = 'https://metacpan.org/pod/XML::Compile' +description = "Perl module for compilation based XML processing" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('pkgconf', '2.0.3'), + ('binutils', '2.40'), +] + +dependencies = [ + ('Perl', '5.38.0'), + ('XML-LibXML', '2.0210'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", '') + +exts_list = [ + ('XML::LibXML::Simple', '1.01', { + 'source_tmpl': 'XML-LibXML-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['cd98c8104b70d7672bfa26b4513b78adf2b4b9220e586aa8beb1a508500365a6'], + }), + ('XML::Compile', version, { + 'source_tmpl': 'XML-Compile-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['4b0871ef4a70bff37266d531bebcd1d065b109e8f5c5e996f87189a9f92d595f'], + }), + ('XML::Compile::Cache', '1.06', { + 'source_tmpl': 'XML-Compile-Cache-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['591b136bd92842c81a5176082503f47df6d5cc4d8e0d78953ef1557f747038a0'], + }), + ('XML::Compile::SOAP', '3.28', { + 'source_tmpl': 'XML-Compile-SOAP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['0921699c4522537f7930e14fac056492de7801a9b9140d0e1faf33414ae6998f'], + }), + ('XML::Compile::WSDL11', '3.08', { + 'source_tmpl': 'XML-Compile-WSDL11-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['dd687ccf5083fe98fce1dd18540e1d0175042437a986e33eec105eca248f8d42'], + }), +] + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', +} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/XML/Compile'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/x/XML-LibXML/XML-LibXML-2.0210-GCCcore-13.2.0.eb b/easybuild/easyconfigs/x/XML-LibXML/XML-LibXML-2.0210-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..9e8ac11247f --- /dev/null +++ b/easybuild/easyconfigs/x/XML-LibXML/XML-LibXML-2.0210-GCCcore-13.2.0.eb @@ -0,0 +1,65 @@ +# updated toolchain, version, and dependency versions +# Thomas Eylenbosch 5-Jun-23 + +easyblock = 'Bundle' + +name = 'XML-LibXML' +version = '2.0210' + +homepage = 'https://metacpan.org/pod/distribution/XML-LibXML/LibXML.pod' +description = "Perl binding for libxml2" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('Perl', '5.38.0'), + ('Perl-bundle-CPAN', '5.38.0'), + ('libxml2', '2.11.5'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perldoc -lm %(ext_name)s ", "") + +exts_list = [ + ('File::chdir', '0.1011', { + 'source_tmpl': 'File-chdir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['31ebf912df48d5d681def74b9880d78b1f3aca4351a0ed1fe3570b8e03af6c79'], + }), + ('Alien::Base', '2.83', { + 'source_tmpl': 'Alien-Build-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/'], + 'checksums': ['4817270314431350ff397125547f55641dcff98bdde213b9e5efc613f7c8b85a'], + }), + ('Alien::Build::Plugin::Download::GitLab', '0.01', { + 'source_tmpl': 'Alien-Build-Plugin-Download-GitLab-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['c1f089c8ea152a789909d48a83dbfcf2626f773daf30431c8622582b26aba902'], + }), + ('Alien::Libxml2', '0.19', { + 'source_tmpl': 'Alien-Libxml2-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['f4a674099bbd5747c0c3b75ead841f3b244935d9ef42ba35368024bd611174c9'], + }), + ('XML::LibXML', version, { + 'source_tmpl': 'XML-LibXML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/'], + 'checksums': ['a29bf3f00ab9c9ee04218154e0afc8f799bf23674eb99c1a9ed4de1f4059a48d'], + }), +] + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', +} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/XML/LibXML'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.47-GCCcore-13.3.0-Perl-5.38.2.eb b/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.47-GCCcore-13.3.0-Perl-5.38.2.eb new file mode 100644 index 00000000000..2afd8c1daf8 --- /dev/null +++ b/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.47-GCCcore-13.3.0-Perl-5.38.2.eb @@ -0,0 +1,31 @@ +easyblock = 'PerlModule' + +name = 'XML-Parser' +version = '2.47' +versionsuffix = '-Perl-%(perlver)s' + +homepage = 'https://search.cpan.org/~toddr/XML-Parser-2.46/' +description = "This is a Perl extension interface to James Clark's XML parser, expat." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/T/TO/TODDR/'] +sources = [SOURCE_TAR_GZ] +checksums = ['ad4aae643ec784f489b956abe952432871a622d4e2b5c619e8855accbfc4d1d8'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Perl', '5.38.2'), + ('expat', '2.6.2'), +] + +options = {'modulename': 'XML::Parser'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/XML'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d9cb7a779c7 --- /dev/null +++ b/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.5-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'Xerces-C++' +version = '3.2.5' + +homepage = 'https://xerces.apache.org/xerces-c/' + +description = """Xerces-C++ is a validating XML parser written in a portable +subset of C++. Xerces-C++ makes it easy to give your application the ability to +read and write XML data. A shared library is provided for parsing, generating, +manipulating, and validating XML documents using the DOM, SAX, and SAX2 +APIs.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://archive.apache.org/dist/xerces/c/%(version_major)s/sources/'] +sources = ['xerces-c-%(version)s.tar.gz'] +checksums = ['545cfcce6c4e755207bd1f27e319241e50e37c0c27250f11cda116018f1ef0f5'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('cURL', '8.7.1'), +] + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/XInclude', + 'include/xercesc/xinclude/XIncludeUtils.hpp', + 'lib/libxerces-c-3.2.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include', 'lib'] +} + +moduleclass = 'lib' 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/easybuild/easyconfigs/x/xESMF/xESMF-0.8.6-foss-2023a.eb b/easybuild/easyconfigs/x/xESMF/xESMF-0.8.6-foss-2023a.eb new file mode 100644 index 00000000000..7dea750a5cf --- /dev/null +++ b/easybuild/easyconfigs/x/xESMF/xESMF-0.8.6-foss-2023a.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'xESMF' +version = '0.8.6' + +homepage = 'https://xesmf.readthedocs.io' +description = "xESMF: Universal Regridder for Geospatial Data" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('pytest', '7.4.2'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ESMPy', '8.6.0'), + ('numba', '0.58.1'), + ('Shapely', '2.0.1'), + ('xarray', '2023.9.0'), + ('dask', '2023.9.2'), +] + +exts_list = [ + ('cftime', '1.6.2', { + 'checksums': ['8614c00fb8a5046de304fdd86dbd224f99408185d7b245ac6628d0276596e6d2'], + }), + ('cf_xarray', '0.9.3', { + 'checksums': ['5012444078964ef931cdc71d559f58488edd5fa9a175fbec326f9356e481b2cf'], + }), + ('sparse', '0.14.0', { + 'checksums': ['5f5827a37f6cd6f6730a541f994c95c60a3ae2329e01f4ba21ced5339aea0098'], + }), + ('xesmf', version, { + 'checksums': ['61c54f0db19fe4871623791db50b1ae589ea1a834d0df461cb58ffbd10d875de'], + 'runtest': 'pytest', + 'testopts': "-v --pyargs xesmf", + 'testinstall': True, + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/x/xarray/xarray-2024.11.0-gfbf-2024a.eb b/easybuild/easyconfigs/x/xarray/xarray-2024.11.0-gfbf-2024a.eb new file mode 100644 index 00000000000..ff593d19130 --- /dev/null +++ b/easybuild/easyconfigs/x/xarray/xarray-2024.11.0-gfbf-2024a.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonBundle' + +name = 'xarray' +version = '2024.11.0' + +homepage = 'https://github.com/pydata/xarray' +description = """xarray (formerly xray) is an open source project and Python package that aims to bring + the labeled data power of pandas to the physical sciences, by providing N-dimensional variants of the + core pandas data structures.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), +] + +exts_list = [ + (name, version, { + 'preinstallopts': """sed -i 's/^dynamic = .*version.*/version = "%(version)s"/g' pyproject.toml && """, + 'checksums': ['1ccace44573ddb862e210ad3ec204210654d2c750bec11bbe7d842dfc298591f'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.3.0.eb b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b611b7c7304 --- /dev/null +++ b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'xproto' +version = '7.0.31' + +homepage = 'https://www.freedesktop.org/wiki/Software/xlibs' +description = "X protocol and ancillary headers" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [XORG_PROTO_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['6d755eaae27b45c5cc75529a12855fed5de5969b367ed05003944cf901ed43c7'] + +builddependencies = [ + ('binutils', '2.42'), + ('xorg-macros', '1.20.1'), +] + +sanity_check_paths = { + 'files': ['include/X11/%s' % x for x in ['ap_keysym.h', 'HPkeysym.h', 'keysym.h', 'Xalloca.h', 'Xatom.h', + 'XF86keysym.h', 'Xfuncs.h', 'Xmd.h', 'Xos.h', 'Xpoll.h', 'Xprotostr.h', + 'Xw32defs.h', 'Xwindows.h', 'DECkeysym.h', 'keysymdef.h', 'Sunkeysym.h', + 'Xarch.h', 'Xdefs.h', 'Xfuncproto.h', 'X.h', 'Xosdefs.h', 'Xos_r.h', + 'Xproto.h', 'Xthreads.h', 'XWDFile.h', 'Xwinsock.h']], + 'dirs': [] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..edda15a373c --- /dev/null +++ b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.2-GCCcore-13.2.0.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'zlib-ng' +version = '2.2.2' + +homepage = 'https://github.com/zlib-ng/zlib-ng' +description = """zlib data compression library for the next generation systems""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('CMake', '3.27.6'), + ('binutils', '2.40'), + ('versioningit', '3.1.2'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +components = [ + (name, version, { + 'easyblock': 'CMakeMake', + 'source_urls': ['https://github.com/zlib-ng/zlib-ng/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['fcb41dd59a3f17002aeb1bb21f04696c9b721404890bb945c5ab39d2cb69654c'], + 'start_dir': '%(name)s-%(version)s', + 'configopts': '-DZLIB_ENABLE_TESTS=ON', + }), + +] + +exts_list = [ + (name, '0.5.1', { + 'source_tmpl': 'zlib_ng-%(version)s.tar.gz', + 'checksums': ['32a46649e8efc21ddd74776a55366a8d8be4e3a95b93dc1f0ffe3880718990d9'], + 'preinstallopts': 'PYTHON_ZLIB_NG_LINK_DYNAMIC=true', + 'modulename': 'zlib_ng', + }), +] + +sanity_check_paths = { + 'files': ['include/zconf-ng.h', 'include/zlib-ng.h', 'lib/libz-ng.a', 'lib/libz-ng.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/z/zsh/zsh-5.9-GCCcore-13.3.0.eb b/easybuild/easyconfigs/z/zsh/zsh-5.9-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2f5aa6a9ca5 --- /dev/null +++ b/easybuild/easyconfigs/z/zsh/zsh-5.9-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'zsh' + +version = '5.9' + +homepage = 'http://www.zsh.org/' +description = """ +Zsh is a shell designed for interactive use, although it is also a powerful scripting language. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://prdownloads.sourceforge.net/%(namelower)s'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['9b8d1ecedd5b5e81fbf1918e876752a7dd948e05c1a0dba10ab863842d45acd5'] + +configopts = '--without-tcsetpgrp' + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('ncurses', '6.5'), +] + +modextrapaths = { + 'FPATH': 'share/zsh/%(version)s/functions' +} + +sanity_check_paths = { + 'files': ['bin/zsh'], + 'dirs': ['lib/zsh/%(version)s', 'share'], +} + +sanity_check_commands = ['zsh --version'] + +moduleclass = 'tools' diff --git a/setup.py b/setup.py index 6eb69fe3ae9..7d0d37fd06b 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '5.0.0.dev0' +VERSION = '5.0.0beta1' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 201c318b003..2ea467eb8b8 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -632,7 +632,7 @@ def check_dep_vars(self, gen, dep, dep_vars): ], # OPERA requires SAMtools 0.x 'SAMtools': [(r'0\.', [r'ChimPipe-0\.9\.5', r'Cufflinks-2\.2\.1', r'OPERA-2\.0\.6', - r'CGmapTools-0\.1\.2', r'BatMeth2-2\.1'])], + r'CGmapTools-0\.1\.2', r'BatMeth2-2\.1', r'OPERA-MS-0\.9\.0-20240703'])], # NanoPlot, NanoComp use an older version of Seaborn 'Seaborn': [(r'0\.10\.1', [r'NanoComp-1\.13\.1-', r'NanoPlot-1\.33\.0-'])], # Shasta requires spoa 3.x @@ -1027,7 +1027,7 @@ def test_sanity_check_paths(self): """Make sure specified sanity check paths adher to the requirements.""" for ec in self.parsed_easyconfigs: - ec_scp = ec['ec']['sanity_check_paths'] + ec_scp = ec['ec'].get_ref('sanity_check_paths') if ec_scp != {}: # if sanity_check_paths is specified (i.e., non-default), it must adher to the requirements # both 'files' and 'dirs' keys, both with list values and with at least one a non-empty list @@ -1044,7 +1044,7 @@ def test_r_libs_site_env_var(self): r_libs_ecs = [] for ec in self.parsed_easyconfigs: for key in ('modextrapaths', 'modextravars'): - if 'R_LIBS' in ec['ec'][key]: + if 'R_LIBS' in ec['ec'].get_ref(key): r_libs_ecs.append(ec['spec']) error_msg = "%d easyconfigs found which set $R_LIBS, should be $R_LIBS_SITE: %s" @@ -1270,12 +1270,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, @@ -1398,8 +1398,8 @@ def test_pr_CMAKE_BUILD_TYPE(self): failing_checks = [] for ec in self.changed_ecs: ec_fn = os.path.basename(ec.path) - build_type = ec.get('build_type') - configopts = ec.get('configopts') + build_type = ec.get_ref('build_type') if 'build_type' in ec else '' + configopts = ec.get_ref('configopts') if isinstance(configopts, list): configopts = ' '.join(configopts) @@ -1417,7 +1417,7 @@ def test_pr_CMAKE_INSTALL_LIBDIR(self): failing_checks = [] for ec in self.changed_ecs: ec_fn = os.path.basename(ec.path) - configopts = ec.get('configopts') + configopts = ec.get_ref('configopts') if isinstance(configopts, list): configopts = ' '.join(configopts) @@ -1444,6 +1444,51 @@ def test_pr_patch_descr(self): self.assertFalse(no_descr_patches, "No description found in patches: %s" % ', '.join(no_descr_patches)) +def verify_patch(specdir, patch_spec, checksum_idx, patch_checksums, extension_name=None): + """Verify existance and checksum of the given patch. + + specdir - Directory of the easyconfig + patch_spec - Patch entry + checksum_idx - Expected index in the checksum list + patch_checksums - List of checksums for patches + extension_name - Name of the extensions this patch is for if any + + Return a (possibly empty) list of failure messages + """ + patch_dir = specdir + if isinstance(patch_spec, str): + patch_name = patch_spec + elif isinstance(patch_spec, (tuple, list)): + patch_name = patch_spec[0] + elif isinstance(patch_spec, dict): + patch_name = patch_spec['name'] + alt_location = patch_spec.get('alt_location') + if alt_location: + basedir = os.path.dirname(os.path.dirname(specdir)) + patch_dir = os.path.join(basedir, letter_dir_for(alt_location), alt_location) + else: + # Should have already been verified + raise RuntimeError('Patch spec is not a string, tuple, list or dict: %s\nType: %s' % (patch_spec, + type(patch_spec))) + + patch_path = os.path.join(patch_dir, patch_name) + patch_descr = "patch file " + patch_name + if extension_name: + patch_descr += " of extension " + extension_name + + # only check actual patch files, not other files being copied via the patch functionality + if patch_path.endswith('.patch'): + if not os.path.isfile(patch_path): + return [patch_descr + "is missing"] + + if checksum_idx < len(patch_checksums): + checksum = patch_checksums[checksum_idx] + if not verify_checksum(patch_path, checksum): + return ["Invalid checksum for %s: %s" % (patch_descr, checksum)] + + return [] # No error + + def template_easyconfig_test(self, spec): """Tests for an individual easyconfig: parsing, instantiating easyblock, check patches, ...""" @@ -1562,7 +1607,7 @@ def template_easyconfig_test(self, spec): failing_checks.extend("Old URL '%s' found" % old_url for old_url in old_urls if old_url in ec.rawtxt) # Note the use of app.cfg which might contain sources populated by e.g. the Cargo easyblock - sources, patches, checksums = app.cfg['sources'], app.cfg['patches'], app.cfg['checksums'] + sources, patches, checksums = app.cfg.get_ref('sources'), app.cfg['patches'], app.cfg['checksums'] # make sure binutils is included as a (build) dep if toolchain is GCCcore if ec['toolchain']['name'] == 'GCCcore': @@ -1580,7 +1625,7 @@ def template_easyconfig_test(self, spec): requires_binutils &= bool(ec['name'] not in binutils_complete_dependencies) # if no sources/extensions/components are specified, it's just a bundle (nothing is being compiled) - requires_binutils &= bool(sources or ec['exts_list'] or ec.get('components')) + requires_binutils &= bool(sources or ec.get_ref('exts_list') or ec.get_ref('components')) if requires_binutils: # dependencies() returns both build and runtime dependencies @@ -1616,27 +1661,9 @@ def template_easyconfig_test(self, spec): # make sure all patch files are available specdir = os.path.dirname(spec) - basedir = os.path.dirname(os.path.dirname(specdir)) + for idx, patch in enumerate(patches): - patch_dir = specdir - if isinstance(patch, str): - patch_name = patch - elif isinstance(patch, (tuple, list)): - patch_name = patch[0] - elif isinstance(patch, dict): - patch_name = patch['name'] - if patch['alt_location']: - patch_dir = os.path.join(basedir, letter_dir_for(patch['alt_location']), patch['alt_location']) - - # only check actual patch files, not other files being copied via the patch functionality - patch_full = os.path.join(patch_dir, patch_name) - if patch_name.endswith('.patch') and not os.path.isfile(patch_full): - failing_checks.append("Patch file %s is missing" % patch_full) - # verify checksum for each patch file - elif idx < len(patch_checksums) and (os.path.exists(patch_full) or patch_name.endswith('.patch')): - checksum = patch_checksums[idx] - if not verify_checksum(patch_full, checksum): - failing_checks.append("Invalid checksum for patch file %s: %s" % (patch_name, checksum)) + failing_checks.extend(verify_patch(specdir, patch, idx, patch_checksums)) # make sure 'source' step is not being skipped, # since that implies not verifying the checksum @@ -1666,21 +1693,7 @@ def template_easyconfig_test(self, spec): patch_checksums = checksums[src_cnt:] for idx, ext_patch in enumerate(ext.get('patches', [])): - if isinstance(ext_patch, (tuple, list)): - ext_patch = ext_patch[0] - - # only check actual patch files, not other files being copied via the patch functionality - ext_patch_full = os.path.join(specdir, ext_patch['name']) - if ext_patch_full.endswith('.patch') and not os.path.isfile(ext_patch_full): - failing_checks.append("Patch file %s for extension %s is missing." % (ext_patch['name'], ext_name)) - continue - - # verify checksum for each patch file - if idx < len(patch_checksums) and os.path.exists(ext_patch_full): - checksum = patch_checksums[idx] - if not verify_checksum(ext_patch_full, checksum): - failing_checks.append("Invalid checksum for patch %s for extension %s: %s." - % (ext_patch['name'], ext_name, checksum)) + failing_checks.extend(verify_patch(specdir, ext_patch, idx, patch_checksums, extension_name=ext_name)) # check whether all extra_options defined for used easyblock are defined extra_opts = app.extra_options() @@ -1711,8 +1724,8 @@ def template_easyconfig_test(self, spec): if key not in DEFAULT_CONFIG and key not in extra_opts: continue - orig_val = resolve_template(ec_dict[key], ec.template_values) - dumped_val = resolve_template(dumped_ec[key], ec.template_values) + orig_val = resolve_template(ec_dict[key], ec.template_values, expect_resolved=False) + dumped_val = resolve_template(dumped_ec[key], ec.template_values, expect_resolved=False) # skip SYSTEM template constant check for 2019b and older toolchain generation easyconfigs # since these fail other CI checks when updated