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/.gitignore b/.gitignore index c667a41e000..c2974194435 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,15 @@ .pydevproject .project LICENSE_HEADER +*.eb.bak_* *.pyc *.pyo *.nja +*.out build/ dist/ *egg-info/ +.venv/ *.swp *.ropeproject/ eb-*.log diff --git a/RELEASE_NOTES b/RELEASE_NOTES index e687bf442f8..af2e74ae887 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,8 +3,178 @@ For more detailed information, please see the git log. These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html. -The latest version of easybuild-easyconfig provides 19,985 easyconfig files, for 3,552 different software packages, -incl. 40 different (compiler) toolchains. +The latest version of easybuild-easyconfig provides 20,670 easyconfig files, for 3,670 different software packages, +incl. 41 different (compiler) toolchains. + + +v4.9.4 (22 September 2024) +-------------------------- + +update/bugfix release + +- added example easyconfig files for 14 new software packages: + - Biotite (#21026), chopper (#21418), CLUMPP (#21329), cramino (#21382), dub (#21378), ESM3 (#21026), GOMC (#21008), + MOKIT (#21352), nanoQC (#21371), phasius (#21389), PyBullet (#21356), rnamotif (#21336), versioningit (#21424), + xskillscore (#21351) +- added additional easyconfigs for various supported software packages, including: + - awscli 2.17.54, BiG-SCAPE-1.1.9, ccache 4.10.2, CLHEP 2.4.7.1, CREST 3.0.2, decona 1.4-2024073, dftd4 3.7.0, + GATE 9.4, Gdk-Pixbuf 2.42.11, Geant4 11.2.2, Geant4-data 11.2, Ghostscript 10.03.1, GitPython 3.1.43, + GObject-Introspection 1.80.1, HarfBuzz 9.0.0, ImageMagick 7.1.1-38, JasPer 4.2.4, joypy 0.2.6, Julia 1.10.4, + LDC 1.39.0, Leptonica 1.84.1, Markdown 3.7, MPICH 4.2.2, NanoComp 1.24.0, nanoget 1.19.3, nanomath 1.4.0, + NanoPlot 1.43.0, Pango 1.54.0, PCAngsd 1.2, Pillow 10.4.0, python-isal 1.7.0, pocl 6.0, PROJ 9.4.1, protobuf 28.0, + protobuf-python 5.28.0, R-tesseract 5.2.1, RepeatMasker 4.1.7-p1, RHEIA 1.1.11, RMBlast 2.14.1, + scikit-build-core 0.10.6, sleuth 0.30.1, SNAP-ESA 10.0.0, tesseract 5.3.4, Triton 2.1.0, TurboVNC 3.1.2, + VirtualGL 3.1.1, zlib-ng 2.2.1 +- minor enhancements, including: + - enable support for Apache ORC to Arrow v14.0.1 and v16.1.0 (#21056) + - use proper dependency for tensorboard in easyconfigs for TensorFlow v2.15.1 (#21337) +- various bug fixes, including: + - account for crates for easyconfigs using Cargo-based easyblock when determining checksums for patches in easyconfigs test suite (#21419) + - avoid missing symbol in mclust extension of R-4.0.3 w/ foss/2020b (#21429) + - fix build of librosa 0.10.1 in some environments by removing "python -m build" for soxr extension (#21434) + - fix repeated sanity check runs in manta easyconfigs (#21435) + - fix test_easyconfig_locations when easyconfigs index is present (#21394) + - use proper dependency for libnsl in git-annex (#21441) + - avoid writing into ~/.stack directory during build for git-annex (#21452) +- other changes: + - remove exts_default_options from TensorFlow 2.3.1 (#21290) + + +v4.9.3 (14 September 2024) +-------------------------- + +update/bugfix release + +- added easyconfigs for foss/2024a (#21100) and intel/2024a (#21101) common toolchains +- new toolchain: gmpflf/2024.06 (#20882) +- added example easyconfig files for 107 new software packages: + - absl-py (#21039), accelerate (#21107), affogato (#20636), APOST3D (#21133), bayesian-optimization (#21301), + BayesOpt (#21261), BGEN-enkre (#15752), bitsandbytes (#21248), bliss (#21206), cfgrib (#21113), CLANS (#21099), + colorize (#20964), CORSIKA (#20693), COSTA (#20989), coxeter (#21254), Critic2 (#20833), crypt4gh (#20870), + dblatex (#21207), dictys (#21166), DL_POLY_Classic_GUI (#20819), EGA-QuickView (#20870, #20888), EMMAX (#21174), + empanada-dl (#20454), empanada-napari (#20454), ESIpy (#21006), fastfilters (#21003), fish (#21345, #21381), + flash-attention (#21083), Flax (#21039), fonttools (#21363), fsm-lite (#20503), GDMA (#21171), GeoDict (#20650), + GPflow (#21172), gtk-doc (#21207), Gubbins (#20413), Gymnasium (#20420), HERRO (#21252), IEntropy (#20808), + ilastik-napari (#21003), IMAGE (#20994), junos-eznc (#21166), jupyter-collaboration (#20741), + jupyter-vscode-proxy (#20876), langchain-mistralai (#20759), langchain-openai (#20711), LRBinner (#21310), + lrcalc (#21339), MAGIC (#20900), mallard-ducktype (#21127), MATES (#21229), MBX (#21155), mcqd (#21283), + MeshLab (#20806), meteogrid (#20921), micro-sam (#20636), miniprot (#21157), napari-denoiseg (#20934), + NECAT (#21359), nellie (#21267), NextPolish (#21265), nifty (#20636), ome-types (#21256), openai-python (#20711), + OpenForceField-Toolkit (#20852), orjson (#20880), PEcAn (#21227), PretextMap (#20790), PyBEL (#20953), + pyMBE (#21034), pystencils (#20889), python-blosc (#20636), python-elf (#20636), rankwidth (#20788), Rasqal (#21207), + Redland (#21227), Regenie (#15752), rMATS-long (#20916), Sagemath (#21365), scCustomize (#20907), SCENICplus (#21085), + scFEA (#20777), sdsl-lite (#20503), SharedMeatAxe (#21303), Single-cell-python-bundle (#20116), SIRIUS (#20989), + sirocco (#21304), SKA2 (#20411), SpFFT (#20989), spla (#11607), Stable-Baselines3 (#20884), submitit (#21103), + SVDSS2 (#20855), tdlib (#21305), torch-em (#20636), Umpire (#20989), Uni-Core (#21182), vigra (#20636), + Visit (#20981), weblogo (#20800), wradlib (#21110), xtb-IFF (#20783), yell (#20964), yelp-tools (#21127), + yelp-xsl (#21127), z5py (#20636), Zoltan (#21324) +- added additional easyconfigs for various supported software packages, including: + - AGAT 1.4.0, ASE 3.23.0, Abseil 20240722.0, Albumentations 1.4.0, AlphaPulldown 2.0.0b4, AlphaPulldown 2.0.0b4, + AmberTools 26.3, Arrow 16.1.0, alsa-lib 1.2.11, archspec 0.2.4, attr 2.5.2, BayesTraits 4.1.2, BeautifulSoup 4.12.3, + Biopython 1.84, Boost.MPI 1.83.0, bcl-convert 4.2.7-2, beagle-lib 4.0.1, biom-format 2.1.16, byacc 2.0.20240109, + CDO 2.3.0, CFITSIO 4.4.1, CUDA-Samples 12.2, CUDA 12.5.0 + 12.6.0, CUTLASS 3.4.0, Catch2 2.13.10, CellOracle 0.18.0, + Clang 18.1.8, Coreutils 9.5, chewBBACA 3.3.9, code-server 4.90.2, connected-components-3d 3.14.1, cooler 0.10.2, + cryptography 42.0.8, cutadapt 4.9, cyvcf2 0.31.1, dorado 0.7.3, dtcmp 1.1.5, ESMF 8.6.1, EvidentialGene 2023.07.15, + Extrae 4.2.0, ecBuild 3.8.5, elfutils 0.191, FFmpeg 7.0.2, FLAC 1.4.3, FUSE 3.16.2, Flask 3.0.3, Flye 2.9.4, + FriBidi 1.0.15, ffnvcodec 12.2.72.0, flatbuffers-python 24.3.25, flatbuffers 24.3.25, fmt 10.2.1, fpylll 0.6.1, + GCC 14.2.0, GDAL 3.9.0, GEOS 3.12.1, GHC 9.10.1, GLM 1.0.1, GLib 2.80.4, GLibmm 2.72.1 + 2.75.0 + 2.77.0 + 2.78.1, + GPAW 24.6.0, GetOrganelle 1.7.7.1, Guile 2.0.14 + 3.0.10, Gurobi 11.0.2, gap 4.13.0, genomepy 0.16.1, gensim 4.3.2, + gffutils 0.13, gh 2.52.0, git-annex 10.20240731, gmpy2 2.2.0, googletest 1.15.2, graph-tool 2.59, HDBSCAN 0.8.38.post1, + HOMER 4.11.1, HTSeq 2.0.7, HiCMatrix 17.2, Highway 1.2.0, Hypre 2.31.0, hatchling 1.24.2, histolab 0.7.0, + hypothesis 6.103.1, IQ-TREE 2.3.5, ImageMagick 7.1.1-34, Imath 3.1.11, IsoQuant 3.5.0, igraph 0.10.12, imageio 2.34.1, + imbalanced-learn 0.12.3, inferCNV 1.21.0, intervaltree 0.1, JsonCpp 1.9.5, Julia 1.10.4, jax 0.4.25, json-fortran 8.5.2, + Kent_tools 468, LLVM 18.1.8, LittleCMS 2.16, libdrm 2.4.122, libdwarf 0.10.1, libedit 20240517, libgeotiff 1.7.3, + libgit2 1.8.1, libopus 1.5.2, libsigc++ 3.6.0, libspatialindex 2.0.0, libunistring 1.2, libunwind 1.8.1, libwebp 1.4.0, + libxslt 1.1.42, libzip 1.10.1, lwgrp 1.0.6, lxml 5.3.0, MCR R2024a, MPICH 4.2.1, MUMPS 5.7.2, MariaDB 11.6.0, + Maven 3.9.7, Mercurial 6.8.1, Mesa 24.1.3, Miniconda3 23.10.0-1, MultiQC 1.22.3, makedepend 1.0.9, matplotlib 3.9.2, + maturin 1.6.0, medaka 1.12.1, meshio 5.3.5, meson-python 0.16.0, mm-common 1.0.6, NanoCaller 3.6.0, Normaliz 3.10.3, + n2v 0.3.3, nano 8.1, ncbi-vdb 3.1.1, nettle 3.10, nsync 1.29.2, numexpr 2.9.0, ORCA 6.0.0, OpenEXR 3.2.4, OpenFOAM 12, + OpenFOAM v2406, OpenJPEG 2.5.2, Optax 0.2.2, Optuna 3.6.1, PaStiX 6.3.2, Perl-bundle-CPAN 5.38.2, Pillow-SIMD 10.4.0, + Pint 0.24, Platypus-Opt 1.2.0, PostgreSQL 16.4, PyAEDT 0.9.9, PyCharm 2024.1.6, PyRosetta 4.release-384, + PyWavelets 1.7.0, PyYAML 6.0.2, Pygments 2.18.0, Pylint 3.2.5, Pyomo 6.7.3, Python-bundle-PyPI 2024.06, packmol 20.14.4, + pagmo 2.19.0, parallel 20240722, pixman 0.43.4, pod5-file-format 0.3.10, poetry 1.8.3, popt 1.19, pretty-yaml 24.7.0, + primecount 7.14, psycopg 3.2.1, pyGenomeTracks 3.9, pybind11 2.12.0, pycocotools 2.0.7, pydantic 2.7.4, pygmo 2.19.5, + pyperf 2.7.0, pyseer 1.3.12, pysteps 1.10.0, QuantumESPRESSO 7.3.1, Qwt 6.3.0, R-bundle-CRAN 2024.06, R 4.4.1, + RDKit 2024.03.3, RapidJSON 1.1.0-20240409, Ray-project 2.9.1, ReFrame 4.6.2, Rust 1.79.0, redis-py 5.0.9, + regionmask 0.12.1, rjags 4-15, rpmrebuild 2.18, SDL2 2.30.6, SHAP 0.43.0, SIP 6.8.3, SRA-Toolkit 3.1.1, + STAR 2.7.11b_alpha_2024-02-09, STRUMPACK 7.1.0, SVDSS2 2.0.0-alpha.3, Safetensors 0.4.3, Salmon 1.10.3, + SciPy-bundle 2024.05, SeqKit 2.8.2, SingleM 0.16.0, Sphinx-RTD-Theme 2.0.0, Stack 3.1.1, SuiteSparse 7.7.0, + SuperLU 6.0.1, SuperLU_DIST 8.2.1, scArches 0.6.1, scib-metrics 0.5.1, scvi-tools 1.1.2, sdsl-lite 2.0.3, + setuptools-rust 1.9.0, sirocco 2.1.0, slepc4py 3.20.2, smafa 0.8.0, snpEff 5.2c, spaCy 3.7.4, spektral 1.2.0, + spglib-python 2.5.0, spglib 2.5.0, TELEMAC-MASCARET 8p5r0, Tk 8.6.14, Tkinter 3.12.3, Trycycler 0.5.5, tiktoken 0.7.0, + timm 1.0.8, UCX-CUDA 1.16.0, unixODBC 2.3.12, utf8proc 2.9.0, VSEARCH 2.28.1, virtualenv 20.26.2, WRF 4.5.1, + Wayland 1.23.0, X11 20240607, XGBoost 2.1.1, XML-LibXML 2.0210, x264 20240513, x265 3.6, xarray 2024.5.0, xtb-IFF 1.1, + xtb 6.7.1, xtensor 0.24.7, yelp-xsl 42.1 +- minor enhancements, including: + - add internal CUDA header patch for PSM2 v12.0.1 (#20804) + - add patch for JupyterHub support to recent tensorboard easyconfigs (#20823) + - make sure that recent ImageMagick versions pick up the right pkgconf + improve sanity check for ImageMagick (#20900) + - also install utilities for recent versions of FUSE 3.x (#20918) + - add RISC-V support to x264 v20231019 (#20968) + - add RISC-v support to recent LAME easyconfigs by removing workaround for finding libncurses (#20970) + - enable PIC in recent x265 easyconfigs to solve compilation errors on RISC-V (#20971) + - add extensions to R-bundle-CRAN: missmDA (#21167, #21183). insight (#21260), performance + datwizard + bayestestR (#21272, #21285) + - add Qt support to VTK 9.3.0 (#21221) + - add `helper_scripts` to `$PATH` in easyconfig for ProteinMPNN v1.0.1-20230627 (#21289) + - also build & install the plugins with OpenFOAM v2406 (#21332) +- various bug fixes, including: + - fix easyconfigs for recent versions of QuantumESPRESSO (#20070) + - add wrapper for Julia with linking safeguards and delegate environment setup to JuliaPackage (#20103) + - fix typo in description of SuiteSparse v7.7.0 (#20567) + - add 'pic' flag to IML (#20789) + - add patch to recent SciPy-bundle easyconfigs to fix build error with numpy with some Fortran compilers (#20817) + - rename unpacked sources for components of EasyBuild v4.9.2, to ensure that '`--install-latest-eb-release`' works with older EasyBuild versions (#20818) + - fix build of OpenBLAS 0.3.24 on A64FX (#20820) + - remove maturin build dependency from langchain-antropic (#20825) + - add GMP and MPFR as dependencies to OpenFOAM v2306 and v2312 (#20841) + - add patch to SciPy-bundle 2024.05 that fixes numpy test failures on RISC-V (#20847) + - skip unreliable memory leak test in PyTorch 2.1.2 (#20874) + - use PyYAML 6.0.1 instead of 6.0 for recent ReFrame versions to fix problem with Cython 3.x (#20879) + - use PyPI source tarball and gfbf/2023a toolchain for pyBigWig (#20881) + - add fix for failing test on zen4 to Highway 1.0.4 (#20942) + - add patch to fix implicit function declaration in OpenMPI 4.1.4 (#20949) + - only use libxsmm as dependency for CP2K 2023.1 w/ `foss/2023a` on x86_64 (#20951) + - copy missing `rsem_perl_utils.pm` in DETONATE, since it's required by `rsem-eval-calculate-score` command (#20956) + - set `$SATSUMA2_PATH` so Satsuma2 can locate executables (#20957) + - disable auto-vectorizer (`-ftree-vectorize`) for OpenFOAM v10 + v11 when using toolchain that with GCC >= 11 (#20958) + - disable test step for WIEN2k 23.2 because files required by it can no longer be downloaded (#20969) + - add patch to fix Qt6 issues with ParaView v5.12.0, e.g. representation selection (#21002) + - update homepage in phonopy easyconfigs (#21014) + - make libunwind dependency architecture specific in Extrae 4.2.0 easyconfig (#21017) + - add `OPENSSL_ENABLE_SHA1_SIGNATURES` for building `ansys-pythonnet` (#21028) + - fix download URLs for old Intel software (2018-2023) by using `IRC_NAS` instead of `irc_nas` (#21108) + - update source and homepage URLs in Szip easyconfigs (#21129) + - rename source URL in HDF v4.2.16-2 easyconfig (#21130) + - consistently fix homeage + source URL for `HDF` + `h4toh5` (#21134) + - ensure that recent BioPerl easyconfigs use `Bundle` easyblock (#21136) + - fix checksum checks for easyconfigs using a `Bundle`-like easyblock in easyconfigs test suite (#21143) + - add pkgconf build dependency to scikit-misc v0.3.1 (#21144) + - explicitly disable use of MySQL in recent GDAL easyconfigs (#21156) + - fix easyconfig tensorflow-probability v0.20.0 to pass `pip check` (#21172) + - stop RStudio-Server 2023.09 from installing R packages (+ move to `foss/2023a` toolchain) (#21175) + - remove `Time::HiRes` from `Perl-bundle-CPAN` since there's newer version in `Perl` (#21198) + - fix build of STAR 2.7.11a + 2.7.11b on non-x86 architectures by avoiding use of `-maxv2` + add missing `xxd` build dependency (#21200) + - add missing cairo dependency for python-igraph v0.10.6 (#21211) + - add patch for xtb 6.7.0 to fix build failure due to changes in tblite (#21255) + - add patch for HDF5 v1.14.3 to suppress fp exceptions (#21280) + - update easyconfig for dorado 0.7.3 to properly use provided OpenSSL dependency, and not install external libraries into its own lib directory (#21297) + - use proper Python dependency for OTF2 (#21325) + - use source tarballs from GitHub for recent libdap easyconfigs (#21334) + - remove Highway build dependency in Brunsli easyconfigs, since it's not actually required at all (#21366) + - add alternative checksum for bold 1.3.0 extension in R-bundle-CRAN (#21370) +- other changes: + - archive outdated example easyconfigs for Fujitsu toolchain (#20781) + - upgrade rpmrebuild build dependency to version 2.18 in bcl-convert 4.2.7 easyconfig (#20861) + - use proper dependency for Safetensors in easyconfig for Transformers v4.39.3 (#20864) + - remove CMake Arrow flag as there is no Arrow dependency in recent GDAL easyconfigs (#20905) + - whitelist `ConfigureMakePythonPackage` for `sanity_check_paths` CI check (#20963) + - rename `gubbins-2.4.0.eb` to `Gubbins-2.4.0.eb` (#20995) + - make pytest v7.4.2 independent of Python-bundle-PyPI (#21004) + - reorganize Flax/JAX stack in 2023a: move `jax` + `Optax` to `gfbf/2023a` toolchain + use standalone `Flax` + `absl-py` as dependencies (#21038) + - use stand-alone absl-py as dependency for jax w/ `gfbf/2023a` (#21039) + - remove Cython dependency from Python-bundle-PyPI 2024.06 + add standalone easyconfig for Cython 3.0.10 (#21233) + - add Cython build dependency for SciPy-bundle v2024.05 (#21235) + - use top-level parameters for `use_pip` & co instead of `exts_default_options` for `PythonBundle` easyconfigs (#21292) v4.9.2 (12 June 2024) diff --git a/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023a.eb b/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023a.eb new file mode 100644 index 00000000000..b21e8fda565 --- /dev/null +++ b/easybuild/easyconfigs/a/ABRicate/ABRicate-1.0.0-gompi-2023a.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': '2023a'} + +# https://github.com/tseemann/abricate +github_account = 'tseemann' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.zip'] +checksums = ['e7e2af45e47b887c4dba754af87a24014dcb5552eb3fe2a3fd66bb5359a0daf9'] + +dependencies = [ + ('Perl', '5.36.1'), + ('any2fasta', '0.4.2'), + ('BioPerl', '1.7.8'), + ('BLAST+', '2.14.1'), +] + +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/AGAT/AGAT-1.4.0-GCC-12.3.0.eb b/easybuild/easyconfigs/a/AGAT/AGAT-1.4.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..2677e62fda1 --- /dev/null +++ b/easybuild/easyconfigs/a/AGAT/AGAT-1.4.0-GCC-12.3.0.eb @@ -0,0 +1,70 @@ +# easybuild easyconfig +# +# John Dey Fred Hutchinson Cancer Center +# Thomas Eylenbosch - Gluo NV +# Update: Petr Král (INUITS) +# +easyblock = 'Bundle' + +name = 'AGAT' +version = '1.4.0' + +homepage = 'https://agat.readthedocs.io/en/latest/' +description = """AGAT: Another GTF/GFF Analysis Toolkit. Suite of tools to handle gene annotations + in any GTF/GFF format.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Perl', '5.36.1'), + ('BioPerl', '1.7.8'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", '') + +exts_list = [ + ('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'], + }), + ('File::Share', '0.27', { + 'source_tmpl': 'File-Share-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['d6e8f4b55ebd38e0bb45e44392e3fa27dc1fde16abc5d1ff53e157e19a5755be'], + }), + ('Sort::Naturally', '1.03', { + 'source_tmpl': 'Sort-Naturally-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['eaab1c5c87575a7826089304ab1f8ffa7f18e6cd8b3937623e998e865ec1e746'], + }), + ('Class::MethodMaker', '2.24', { + 'source_tmpl': 'Class-MethodMaker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SC/SCHWIGON/class-methodmaker'], + 'checksums': ['5eef58ccb27ebd01bcde5b14bcc553b5347a0699e5c3e921c7780c3526890328'], + }), + ('Term::ProgressBar', '2.23', { + 'source_tmpl': 'Term-ProgressBar-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['defc03fb9f4ac1c9df1359d312bff3c0865ddefbf3aba64cd42a69a86215d49d'], + }), + (name, version, { + 'modulename': 'AGAT::Utilities', + 'source_urls': ['https://github.com/NBISweden/AGAT/archive/refs/tags'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['d5e30db44b5d05ed51c606a823894c01c85c1ed85580148ad5473cb2f2b2ac77'], + }), +] + +modextrapaths = {'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin', 'lib/perl5/site_perl/%(perlver)s/%(name)s'], +} + +sanity_check_commands = ['agat_convert_bed2gff.pl --help'] +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023b.eb b/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023b.eb new file mode 100644 index 00000000000..eb1a53ff8da --- /dev/null +++ b/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023b.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'ALL' +version = '0.9.2' + +homepage = 'https://gitlab.jsc.fz-juelich.de/SLMS/loadbalancing' +description = """A Load Balancing Library (ALL) aims to provide an easy way to include dynamic +domain-based load balancing into particle based simulation codes. The library +is developed in the Simulation Laboratory Molecular Systems of the Jülich +Supercomputing Centre at Forschungszentrum Jülich.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ["https://gitlab.jsc.fz-juelich.de/SLMS/loadbalancing/-/archive/v%(version)s/"] +sources = ['loadbalancing-v%(version)s.tar.gz'] +checksums = ['2b4ef52c604c3c0c467712d0912a33c82177610b67edc14df1e034779c6ddb71'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Boost', '1.83.0'), # only needed for tests +] + +dependencies = [ + ('VTK', '9.3.0'), +] + +configopts = '-DCM_ALL_FORTRAN=ON -DCM_ALL_USE_F08=ON -DCM_ALL_VORONOI=ON -DCM_ALL_VTK_OUTPUT=ON ' +configopts += '-DCM_ALL_TESTS=ON -DCM_ALL_AUTO_DOC=OFF -DVTK_DIR=$EBROOTVTK ' + +runtest = 'test' + +sanity_check_paths = { + 'files': [ + 'include/ALL.hpp', 'include/ALL_Voronoi.hpp', 'lib/all_module.mod', + 'lib/libALL.a', 'lib/libALL_fortran.a' + ], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/AMRFinderPlus/AMRFinderPlus-3.12.8-gompi-2023a.eb b/easybuild/easyconfigs/a/AMRFinderPlus/AMRFinderPlus-3.12.8-gompi-2023a.eb new file mode 100644 index 00000000000..cc4de6c8fb0 --- /dev/null +++ b/easybuild/easyconfigs/a/AMRFinderPlus/AMRFinderPlus-3.12.8-gompi-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'MakeCp' + +name = 'AMRFinderPlus' +version = '3.12.8' + +homepage = 'https://github.com/ncbi/amr' +description = """This software and the accompanying database are designed to find acquired antimicrobial + resistance genes and some point mutations in protein or assembled nucleotide sequences.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +github_account = 'ncbi' +source_urls = ['https://github.com/ncbi/amr/archive/'] +sources = ['amrfinder_v%(version)s.tar.gz'] +checksums = ['a199bc332877bad9033a7620bc5e8e849db1f19a9ba8b7357ec5451a6a283aa0'] + +dependencies = [ + ('BLAST+', '2.14.1'), + ('HMMER', '3.4'), + ('cURL', '8.0.1') +] + +# Binaries are installed to the root of the installation, so add that root to the PATH: +modextrapaths = {'PATH': ''} + +# a list of binary files that will be produced +local_binaries = ['amr_report', 'amrfinder', 'amrfinder_update', 'dna_mutation', 'fasta2parts', 'fasta_check', + 'fasta_extract', 'gff_check'] + +files_to_copy = local_binaries + +sanity_check_paths = { + 'files': local_binaries, + 'dirs': [], +} + +sanity_check_commands = [ + ('amrfinder', '-h') +] + +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/AOCC/AOCC-4.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/AOCC/AOCC-4.2.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b88337b09b4 --- /dev/null +++ b/easybuild/easyconfigs/a/AOCC/AOCC-4.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +name = 'AOCC' +version = '4.2.0' + +homepage = 'https://developer.amd.com/amd-aocc/' +description = """AOCC is a high-performance x86 CPU compiler for C, C++, and Fortran programming languages. + It supports target-dependent and target-independent optimizations. It is highly optimized for x86 targets, + especially for AMD “Zen”-based processors giving a performance edge for time critical HPC and other + applications over other compilers.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [ + 'https://download.amd.com/developer/eula/%(namelower)s/%(namelower)s-%(version_major)s-%(version_minor)s' +] +sources = ['%(namelower)s-compiler-%(version)s.tar'] +checksums = ['ed5a560ec745b24dc0685ccdcbde914843fb2f2dfbfce1ba592de4ffbce1ccab'] + +dependencies = [ + ('binutils', '2.42'), + ('ncurses', '6.5'), + ('zlib', '1.3.1'), + ('libxml2', '2.12.7'), +] + +clangversion = '16.0.3' + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/a/AOCC/AOCC-5.0.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/a/AOCC/AOCC-5.0.0-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..36d359a6469 --- /dev/null +++ b/easybuild/easyconfigs/a/AOCC/AOCC-5.0.0-GCCcore-14.2.0.eb @@ -0,0 +1,24 @@ +name = 'AOCC' +version = '5.0.0' + +homepage = 'https://developer.amd.com/amd-aocc/' +description = "AMD Optimized C/C++ & Fortran compilers (AOCC) based on LLVM 13.0" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = ['https://download.amd.com/developer/eula/aocc/aocc-5-0/'] +sources = ['aocc-compiler-%(version)s.tar'] +checksums = ['966fac2d2c759e9de6e969c10ada7a7b306c113f7f1e07ea376829ec86380daa'] + +clangversion = '17.0.6' + +dependencies = [ + ('binutils', '2.42'), + ('ncurses', '6.5'), + ('zlib', '1.3.1'), + ('libxml2', '2.13.4'), +] + +moduleclass = 'compiler' 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..07ad1ecc555 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2023b.eb @@ -0,0 +1,48 @@ +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 +] + +use_pip = True +sanity_pip_check = True + +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..472ebbb24b2 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.23.0-gfbf-2024a.eb @@ -0,0 +1,48 @@ +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 +] + +use_pip = True +sanity_pip_check = True + +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/ATK/ATK-2.38.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..506079ce98c --- /dev/null +++ b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'MesonNinja' + +name = 'ATK' +version = '2.38.0' + +homepage = 'https://developer.gnome.org/atk/' +description = """ + ATK provides the set of accessibility interfaces that are implemented by other + toolkits and applications. Using the ATK interfaces, accessibility tools have + full access to view and control running applications. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ac4de2a4ef4bd5665052952fe169657e65e895c5057dffb3c2a810f6191a0c36'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), +] + +dependencies = [ + ('GLib', '2.80.4'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dintrospection=true " + +sanity_check_paths = { + 'files': ['lib/libatk-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.5.0-foss-2023a.eb b/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.5.0-foss-2023a.eb new file mode 100644 index 00000000000..2c31ade2eb0 --- /dev/null +++ b/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.5.0-foss-2023a.eb @@ -0,0 +1,74 @@ +# Updated by: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'ConfigureMake' + +name = 'AUGUSTUS' +version = '3.5.0' + +homepage = 'https://bioinf.uni-greifswald.de/augustus/' +description = "AUGUSTUS is a program that predicts genes in eukaryotic genomic sequences" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'Gaius-Augustus' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['5ed6ce6106303b800c5e91d37a250baff43b20824657b853ae04d11ad8bdd686'] + +builddependencies = [ + ('Python', '3.11.3'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('Boost', '1.82.0'), + ('GSL', '2.7'), + ('SAMtools', '1.18'), + ('HTSlib', '1.18'), # also provides tabix + ('BCFtools', '1.18'), + ('lpsolve', '5.5.2.11'), + ('SuiteSparse', '7.1.0'), + ('BamTools', '2.5.2'), + ('SQLite', '3.42.0'), +] + +skipsteps = ['configure'] + +# run "make clean" to avoid using binaries included with the source tarball +prebuildopts = "make clean && " + +_tmpl = 'INCLUDE_PATH_{dep}=-I{root}{incl} LIBRARY_PATH_{dep}="-L{root}{lib} -Wl,-rpath,{root}{lib}"' + +buildopts = ' '.join([ + 'COMPGENEPRED=true SQLITE=true ZIPINPUT=true MYSQL=false CXX="$CXX" ', + _tmpl.format(dep='ZLIB', root='$EBROOTZLIB', incl='/include', lib='/lib'), + _tmpl.format(dep='BOOST', root='$EBROOTBOOST', incl='/include', lib='/lib'), + _tmpl.format(dep='LPSOLVE', root='$EBROOTLPSOLVE', incl='/include', lib='/lib'), + _tmpl.format(dep='SUITESPARSE', root='$EBROOTSUITESPARSE', incl='/include', lib='/lib'), + _tmpl.format(dep='GSL', root='$EBROOTGSL', incl='/include', lib='/lib'), + _tmpl.format(dep='SQLITE', root='$EBROOTSQLITE', incl='/include', lib='/lib'), + _tmpl.format(dep='BAMTOOLS', root='$EBROOTBAMTOOLS', incl='/include/bamtools', lib='/lib'), + _tmpl.format(dep='HTSLIB', root='$EBROOTHTSLIB', incl='/include/htslib', lib='/lib'), +]) + +preinstallopts = "sed -i '/ln -sf/d' Makefile && " +installopts = 'INSTALLDIR=%(installdir)s ' + +sanity_check_paths = { + 'files': ['bin/augustus', 'bin/bam2hints', 'bin/etraining', 'bin/fastBlockSearch', + 'bin/filterBam', 'bin/getSeq', 'bin/homGeneMapping', 'bin/joingenes', + 'bin/load2sqlitedb', 'bin/prepareAlign'], + 'dirs': ['config', 'scripts'], +} +sanity_check_commands = ['augustus --help'] + +modextrapaths = {'PATH': 'scripts'} +modextravars = { + 'AUGUSTUS_BIN_PATH': '%(installdir)s/bin', + 'AUGUSTUS_CONFIG_PATH': '%(installdir)s/config', + 'AUGUSTUS_SCRIPTS_PATH': '%(installdir)s/scripts', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/Abseil/Abseil-20240722.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/Abseil/Abseil-20240722.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..24951c68814 --- /dev/null +++ b/easybuild/easyconfigs/a/Abseil/Abseil-20240722.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'Abseil' +version = '20240722.0' + +homepage = 'https://abseil.io/' +description = """Abseil is an open-source collection of C++ library code designed to augment the +C++ standard library. The Abseil library code is collected from Google's own +C++ code base, has been extensively tested and used in production, and is the +same code we depend on in our daily coding lives.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://github.com/%(namelower)s/%(namelower)s-cpp/archive/refs/tags'] +sources = ['%(version)s.tar.gz'] +checksums = ['f50e5ac311a81382da7fa75b97310e4b9006474f9560ac46f54a9967f07d4ae3'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = "-DABSL_PROPAGATE_CXX_STD=ON " + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['lib/libabsl_base.' + SHLIB_EXT], + 'dirs': ['include/absl'], +} + +moduleclass = 'lib' 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/AlphaFold/AlphaFold-2.3.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3fe9e6719f6 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,167 @@ +easyblock = 'PythonBundle' + +name = 'AlphaFold' +version = '2.3.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://deepmind.com/research/case-studies/alphafold' +description = "AlphaFold can predict protein structures with atomic accuracy even where no similar structure is known" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1') +] + +dependencies = [ + ('Python', '3.11.3'), + ('CUDA', '12.1.1', '', SYSTEM), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('TensorFlow', '2.13.0'), # doesn't require TF-gpu + ('Biopython', '1.83'), + ('HH-suite', '3.3.0'), + ('HMMER', '3.4'), + ('Kalign', '3.4.0'), + ('jax', '0.4.25', versionsuffix), # also provides absl-py # requirement is ==0.3.25! + ('UCX-CUDA', '1.14.1', versionsuffix), + ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), + ('NCCL', '2.18.3', versionsuffix), + ('OpenMM', '8.0.0', versionsuffix), + ('dm-tree', '0.1.8'), + ('dm-haiku', '0.0.12', versionsuffix), +] + +# commit to use for downloading stereo_chemical_props.txt and copy to alphafold/common, +# see docker/Dockerfile in AlphaFold repository +local_scp_commit = '7102c6' + +components = [ + ('stereo_chemical_props.txt', local_scp_commit, { + 'easyblock': 'Binary', + 'source_urls': [ + 'https://git.scicore.unibas.ch/schwede/openstructure/-/raw/%s/modules/mol/alg/src/' % local_scp_commit, + ], + 'sources': [ + { + 'download_filename': 'stereo_chemical_props.txt', + 'filename': 'stereo_chemical_props-%s.txt' % local_scp_commit, + 'extract_cmd': "cp %s ./stereo_chemical_props.txt", + } + ], + 'checksums': [ + '24510899eeb49167cffedec8fa45363a4d08279c0c637a403b452f7d0ac09451', # stereo_chemical_props-7102c6.txt + ] + }) +] + +use_pip = True + +exts_list = [ + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/refs/tags/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + ('tabulate', '0.9.0', { + 'checksums': ['0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c'], + }), + ('websocket-client', '1.5.1', { + 'modulename': 'websocket', + 'checksums': ['3f09e6d8230892547132177f575a4e3e73cfdf06526e20cc02aa1c3b47184d40'], + }), + ('docker', '7.0.0', { + 'checksums': ['323736fb92cd9418fc5e7133bc953e11a9da04f4483f828b527db553f1e7e5a3'], + }), + ('immutabledict', '4.1.0', { + 'checksums': ['93d100ccd2cd09a1fd3f136b9328c6e59529ba341de8bb499437f6819159fe8a'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml_collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + (name, version, { + 'patches': [ + 'AlphaFold-2.0.0_fix-packages.patch', + 'AlphaFold-2.3.2_data-dep-paths-shebang-UniRef30.patch', + 'AlphaFold-2.0.0_n-cpu.patch', + 'AlphaFold-2.0.1_setup_rm_tfcpu.patch', + 'AlphaFold-2.3.2_use_openmm_8.0.0.patch', + 'AlphaFold-2.3.2_BioPythonPDBData.patch', + ], + 'source_urls': ['https://github.com/deepmind/alphafold/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': [ + {'AlphaFold-2.3.2.tar.gz': '4ea8005ba1b573fa1585e4c29b7d188c5cbfa59b4e4761c9f0c15c9db9584a8e'}, + {'AlphaFold-2.0.0_fix-packages.patch': '826d2d1a5d6ac52c51a60ba210e1947d5631a1e2d76f8815305b5d23f74458db'}, + {'AlphaFold-2.3.2_data-dep-paths-shebang-UniRef30.patch': + '58cd0ce4094afe76909649abe68034c4fbdb500967f5c818f49b530356dc012b'}, + {'AlphaFold-2.0.0_n-cpu.patch': 'dfda4dd5f9aba19fe2b6eb9a0ec583d12dcefdfee8ab8803fc57ad48d582db04'}, + {'AlphaFold-2.0.1_setup_rm_tfcpu.patch': + '1a2e4e843bd9a4d15ee39e6c37cc63ba281311cc7a0a5610f0e43b52ef93faac'}, + {'AlphaFold-2.3.2_use_openmm_8.0.0.patch': + 'bbef940c0c959040aaf3984ec47777a229c164517b54616a2688d58fae636d84'}, + {'AlphaFold-2.3.2_BioPythonPDBData.patch': + 'e4483a525ae5c4dc5a5f633bed8cf5337c329e64b603ab7b684a9d18cd26a22f'}, + ], + }), +] + +local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages' +local_link_scp = 'ln -s %%(installdir)s/stereo_chemical_props.txt %s/alphafold/common' % local_pylibdir + +postinstallcmds = [ + 'cp %(builddir)s/AlphaFold/alphafold-%(version)s/run_alphafold*.py %(installdir)s/bin', + 'cp -rpP %(builddir)s/AlphaFold/alphafold-%(version)s/scripts %(installdir)s', + 'cd %(installdir)s/bin && ln -s run_alphafold.py alphafold', + 'chmod a+x %(installdir)s/bin/run_alphafold.py', + local_link_scp, +] + +sanity_check_paths = { + 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'stereo_chemical_props.txt'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'scripts'], +} + +sanity_check_commands = [ + "pdbfixer --help", + "python -m openmm.testInstallation", + "python -c 'import alphafold'", + "alphafold --help 2>&1 | grep 'Full AlphaFold protein structure prediction script'", + "python %(installdir)s/bin/run_alphafold_test.py", +] + +sanity_pip_check = True + +# these allow to make predictions on proteins that would typically be too long to fit into GPU memory; +# see https://github.com/deepmind/alphafold/blob/main/docker/run_docker.py +modextravars = { + # these allow to make predictions on proteins that would typically be too long to fit into GPU memory; + # see https://github.com/deepmind/alphafold/blob/main/docker/run_docker.py + 'TF_FORCE_UNIFIED_MEMORY': '1', + # jaxlib 0.4.1: https://jax.readthedocs.io/en/latest/changelog.html#jaxlib-0-4-1-dec-13-2022 + # "The behavior of XLA_PYTHON_CLIENT_MEM_FRACTION=.XX has been changed to allocate XX% of the total GPU memory + # instead of the previous behavior of using currently available GPU memory to calculate preallocation. Please refer + # to GPU memory allocation for more details." + # https://jax.readthedocs.io/en/latest/gpu_memory_allocation.html + 'XLA_PYTHON_CLIENT_MEM_FRACTION': '2.5', + # + # Download with $EBROOTALPHAFOLD/scripts/download_all_data.sh /path/to/AlphaFold_DBs/$EBVERSIONALPHAFOLD + 'ALPHAFOLD_DATA_DIR': '/path/to/AlphaFold_DBs/%(versions)s', # please adapt + # Adapt in order to use a different version of UniRef30 by default, + # e.g., v2023_02 from https://wwwuser.gwdg.de/~compbiol/uniclust/2023_02/UniRef30_2023_02_hhsuite.tar.gz: + 'ALPHAFOLD_UNIREF30_VER': '2021_03', + 'OPENMM_RELAX': 'CUDA' # unset or set to 'CPU' in order not to run the energy minimization on GPU; PR#189 +} + +postinstallmsgs = [ + "A newer version of UniRef30 (2023_02) is available at: " + "https://wwwuser.gwdg.de/~compbiol/uniclust/2023_02/UniRef30_2023_02_hhsuite.tar.gz. " + "Untar to $ALPHAFOLD_DATA_DIR/uniref30/ and set the default version accordingly by changing " + "modextravars:ALPHAFOLD_UNIREF30_VER." +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_BioPythonPDBData.patch b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_BioPythonPDBData.patch new file mode 100644 index 00000000000..df73873cb1c --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_BioPythonPDBData.patch @@ -0,0 +1,14 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2024/10 +# BioPython 1.83 does not provide protein_letters_3to1 in Bio.Data.SCOPdata but in Bio.Data.PDBData (and Bio.Data.IUPACData) +diff -ru -ru alphafold-2.3.2/alphafold/data/mmcif_parsing.py alphafold-2.3.2_BioPythonSCOPData/alphafold/data/mmcif_parsing.py +--- alphafold-2.3.2/alphafold/data/mmcif_parsing.py 2024-02-19 09:55:16.359778490 +0100 ++++ alphafold-2.3.2_BioPythonSCOPData/alphafold/data/mmcif_parsing.py 2023-03-27 13:50:49.000000000 +0200 +@@ -21,7 +21,7 @@ + + from absl import logging + from Bio import PDB +-from Bio.Data import SCOPData ++from Bio.Data import PDBData as SCOPData + + # Type aliases: + ChainId = str diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_data-dep-paths-shebang-UniRef30.patch b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_data-dep-paths-shebang-UniRef30.patch new file mode 100644 index 00000000000..c7bbd59ac0c --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_data-dep-paths-shebang-UniRef30.patch @@ -0,0 +1,164 @@ +pick up on $ALPHAFOLD_DATA_DIR to specify location to downloaded data +(see https://github.com/deepmind/alphafold/blob/main/docker/run_docker.py); +pick up on HH-suite, HHMER, Kalign dependencies provided via EasyBuild +author: Kenneth Hoste (HPC-UGent) +update 2.0.1 -> 2.1.0/2.1.2/2.3.0/2.3.2: Thomas Hoffmann (EMBL); +uniref30 version env. variable (THEMBL) + +diff -ru alphafold-2.3.2/run_alphafold.py alphafold-2.3.2_data-dep-paths-shebang-UniRef30/run_alphafold.py +--- alphafold-2.3.2/run_alphafold.py 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_data-dep-paths-shebang-UniRef30/run_alphafold.py 2024-10-11 11:34:06.330278962 +0200 +@@ -1,3 +1,4 @@ ++#!/usr/bin/env python + # Copyright 2021 DeepMind Technologies Limited + # + # Licensed under the Apache License, Version 2.0 (the "License"); +@@ -42,6 +43,48 @@ + import numpy as np + + # Internal import (7716). ++use_reduced_dbs = any("--db_preset=reduced_dbs" in s for s in sys.argv[1:]) ++use_monomer_preset = not any("--model_preset=multimer" in s for s in sys.argv[1:]) ++ ++data_dir = os.getenv('ALPHAFOLD_DATA_DIR') ++use_gpu_relax = os.getenv('OPENMM_RELAX')=='CUDA' ++uniref30_ver = os.getenv('ALPHAFOLD_UNIREF30_VER') ++if not uniref30_ver: uniref30_ver = '2021_03' ++ ++if data_dir: ++ mgnify_database_path = os.path.join(data_dir, 'mgnify', 'mgy_clusters_2022_05.fa') ++ uniref90_database_path = os.path.join(data_dir, 'uniref90', 'uniref90.fasta') ++ template_mmcif_dir = os.path.join(data_dir, 'pdb_mmcif', 'mmcif_files') ++ obsolete_pdbs_path = os.path.join(data_dir, 'pdb_mmcif', 'obsolete.dat') ++ if use_monomer_preset: ++ pdb_seqres_database_path = None ++ uniprot_database_path = None ++ pdb70_database_path = os.path.join(data_dir, 'pdb70', 'pdb70') ++ else: ++ pdb_seqres_database_path = os.path.join(data_dir, 'pdb_seqres', 'pdb_seqres.txt') ++ uniprot_database_path = os.path.join(data_dir, 'uniprot', 'uniprot.fasta') ++ pdb70_database_path = None ++ if use_reduced_dbs: ++ small_bfd_database_path = os.path.join(data_dir, 'small_bfd','bfd-first_non_consensus_sequences.fasta') ++ uniref30_database_path = None ++ bfd_database_path = None ++ else: ++ small_bfd_database_path = None ++ bfd_database_path = os.path.join(data_dir, 'bfd', 'bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt') ++ uniref30_database_path = os.path.join(data_dir, 'uniref30', 'UniRef30_%s' % uniref30_ver) ++else: ++ sys.stderr.write("$ALPHAFOLD_DATA_DIR is not defined!") ++ uniref90_database_path = None ++ mgnify_database_path = None ++ bfd_database_path = None ++ uniref30_database_path = None ++ pdb70_database_path = None ++ template_mmcif_dir = None ++ obsolete_pdbs_path = None ++ small_bfd_database_path = None ++ uniprot_database_path = None ++ pdb_seqres_database_path = None ++ use_gpu_relax = None + + logging.set_verbosity(logging.INFO) + +@@ -59,7 +102,7 @@ + 'separated by commas. All FASTA paths must have a unique basename as the ' + 'basename is used to name the output directories for each prediction.') + +-flags.DEFINE_string('data_dir', None, 'Path to directory of supporting data.') ++flags.DEFINE_string('data_dir', data_dir, 'Path to directory of supporting data.') + flags.DEFINE_string('output_dir', None, 'Path to a directory that will ' + 'store the results.') + flags.DEFINE_string('jackhmmer_binary_path', shutil.which('jackhmmer'), +@@ -71,32 +114,32 @@ + flags.DEFINE_string('hmmsearch_binary_path', shutil.which('hmmsearch'), + 'Path to the hmmsearch executable.') + flags.DEFINE_string('hmmbuild_binary_path', shutil.which('hmmbuild'), +- 'Path to the hmmbuild executable.') ++ 'Path to the hmmbuild executable.') + flags.DEFINE_string('kalign_binary_path', shutil.which('kalign'), +- 'Path to the Kalign executable.') +-flags.DEFINE_string('uniref90_database_path', None, 'Path to the Uniref90 ' +- 'database for use by JackHMMER.') +-flags.DEFINE_string('mgnify_database_path', None, 'Path to the MGnify ' +- 'database for use by JackHMMER.') +-flags.DEFINE_string('bfd_database_path', None, 'Path to the BFD ' +- 'database for use by HHblits.') +-flags.DEFINE_string('small_bfd_database_path', None, 'Path to the small ' +- 'version of BFD used with the "reduced_dbs" preset.') +-flags.DEFINE_string('uniref30_database_path', None, 'Path to the UniRef30 ' +- 'database for use by HHblits.') +-flags.DEFINE_string('uniprot_database_path', None, 'Path to the Uniprot ' +- 'database for use by JackHMMer.') +-flags.DEFINE_string('pdb70_database_path', None, 'Path to the PDB70 ' +- 'database for use by HHsearch.') +-flags.DEFINE_string('pdb_seqres_database_path', None, 'Path to the PDB ' +- 'seqres database for use by hmmsearch.') +-flags.DEFINE_string('template_mmcif_dir', None, 'Path to a directory with ' +- 'template mmCIF structures, each named .cif') ++ 'Path to the Kalign executable.') ++flags.DEFINE_string('uniref90_database_path', uniref90_database_path, 'Path to the Uniref90 ' ++ 'database for use by JackHMMER.') ++flags.DEFINE_string('mgnify_database_path', mgnify_database_path, 'Path to the MGnify ' ++ 'database for use by JackHMMER.') ++flags.DEFINE_string('bfd_database_path', bfd_database_path, 'Path to the BFD ' ++ 'database for use by HHblits.') ++flags.DEFINE_string('small_bfd_database_path', small_bfd_database_path, 'Path to the small ' ++ 'version of BFD used with the "reduced_dbs" preset.') ++flags.DEFINE_string('uniref30_database_path', uniref30_database_path, 'Path to the UniRef30 ' ++ 'database for use by HHblits.') ++flags.DEFINE_string('uniprot_database_path', uniprot_database_path, 'Path to the Uniprot ' ++ 'database for use by JackHMMer.') ++flags.DEFINE_string('pdb70_database_path', pdb70_database_path, 'Path to the PDB70 ' ++ 'database for use by HHsearch.') ++flags.DEFINE_string('pdb_seqres_database_path', pdb_seqres_database_path, 'Path to the PDB ' ++ 'seqres database for use by hmmsearch.') ++flags.DEFINE_string('template_mmcif_dir', template_mmcif_dir, 'Path to a directory with ' ++ 'template mmCIF structures, each named .cif') + flags.DEFINE_string('max_template_date', None, 'Maximum template release date ' +- 'to consider. Important if folding historical test sets.') +-flags.DEFINE_string('obsolete_pdbs_path', None, 'Path to file containing a ' +- 'mapping from obsolete PDB IDs to the PDB IDs of their ' +- 'replacements.') ++ 'to consider. Important if folding historical test sets.') ++flags.DEFINE_string('obsolete_pdbs_path', obsolete_pdbs_path, 'Path to file containing a ' ++ 'mapping from obsolete PDB IDs to the PDB IDs of their ' ++ 'replacements.') + flags.DEFINE_enum('db_preset', 'full_dbs', + ['full_dbs', 'reduced_dbs'], + 'Choose preset MSA database configuration - ' +@@ -137,7 +180,7 @@ + 'distracting stereochemical violations but might help ' + 'in case you are having issues with the relaxation ' + 'stage.') +-flags.DEFINE_boolean('use_gpu_relax', None, 'Whether to relax on GPU. ' ++flags.DEFINE_boolean('use_gpu_relax', use_gpu_relax, 'Whether to relax on GPU. ' + 'Relax on GPU can be much faster than CPU, so it is ' + 'recommended to enable if possible. GPUs must be available' + ' if this setting is enabled.') +@@ -334,6 +377,10 @@ + 'sure it is installed on your system.') + + use_small_bfd = FLAGS.db_preset == 'reduced_dbs' ++ if use_small_bfd and data_dir: ++ bfd_database_path = None ++ uniref30_database_path = None ++ + _check_flag('small_bfd_database_path', 'db_preset', + should_be_set=use_small_bfd) + _check_flag('bfd_database_path', 'db_preset', +@@ -456,13 +503,7 @@ + flags.mark_flags_as_required([ + 'fasta_paths', + 'output_dir', +- 'data_dir', +- 'uniref90_database_path', +- 'mgnify_database_path', +- 'template_mmcif_dir', + 'max_template_date', +- 'obsolete_pdbs_path', +- 'use_gpu_relax', + ]) + + app.run(main) diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_use_openmm_8.0.0.patch b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_use_openmm_8.0.0.patch new file mode 100644 index 00000000000..765fdb3c4d6 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.2_use_openmm_8.0.0.patch @@ -0,0 +1,243 @@ +# Add compatibility with OpenMM-8.0.0 +# The patch is based on the recipe from https://github.com/deepmind/alphafold/issues/404 +# Author: maxim-masterov (SURF) (7.7.0) +# update 8.0.0: THEMBL +diff -ru alphafold-2.3.2/alphafold/relax/amber_minimize.py alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/amber_minimize.py +--- alphafold-2.3.2/alphafold/relax/amber_minimize.py 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/amber_minimize.py 2023-04-06 10:38:33.512754033 +0200 +@@ -27,10 +27,10 @@ + import ml_collections + import numpy as np + import jax +-from simtk import openmm +-from simtk import unit +-from simtk.openmm import app as openmm_app +-from simtk.openmm.app.internal.pdbstructure import PdbStructure ++from openmm import * ++from openmm import unit ++from openmm import app as openmm_app ++from openmm.app.internal.pdbstructure import PdbStructure + + + ENERGY = unit.kilocalories_per_mole +@@ -47,7 +47,7 @@ + + + def _add_restraints( +- system: openmm.System, ++ system: System, + reference_pdb: openmm_app.PDBFile, + stiffness: unit.Unit, + rset: str, +diff -ru alphafold-2.3.2/alphafold/relax/cleanup.py alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/cleanup.py +--- alphafold-2.3.2/alphafold/relax/cleanup.py 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/cleanup.py 2023-04-06 10:39:25.224888763 +0200 +@@ -20,8 +20,8 @@ + import io + + import pdbfixer +-from simtk.openmm import app +-from simtk.openmm.app import element ++from openmm import app ++from openmm.app import element + + + def fix_pdb(pdbfile, alterations_info): +diff -ru alphafold-2.3.2/alphafold/relax/cleanup_test.py alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/cleanup_test.py +--- alphafold-2.3.2/alphafold/relax/cleanup_test.py 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_use_openmm_7.7.0/alphafold/relax/cleanup_test.py 2023-04-06 10:39:58.409616942 +0200 +@@ -17,7 +17,7 @@ + + from absl.testing import absltest + from alphafold.relax import cleanup +-from simtk.openmm.app.internal import pdbstructure ++from openmm.app.internal import pdbstructure + + + def _pdb_to_structure(pdb_str): +diff -ru alphafold-2.3.2/docker/Dockerfile alphafold-2.3.2_use_openmm_7.7.0/docker/Dockerfile +--- alphafold-2.3.2/docker/Dockerfile 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_use_openmm_7.7.0/docker/Dockerfile 2023-04-06 10:41:10.315194781 +0200 +@@ -76,7 +76,6 @@ + + # Apply OpenMM patch. + WORKDIR /opt/conda/lib/python3.8/site-packages +-RUN patch -p0 < /app/alphafold/docker/openmm.patch + + # Add SETUID bit to the ldconfig binary so that non-root users can run it. + RUN chmod u+s /sbin/ldconfig.real +diff -ru alphafold-2.3.2/notebooks/AlphaFold.ipynb alphafold-2.3.2_use_openmm_7.7.0/notebooks/AlphaFold.ipynb +--- alphafold-2.3.2/notebooks/AlphaFold.ipynb 2023-03-27 13:50:49.000000000 +0200 ++++ alphafold-2.3.2_use_openmm_7.7.0/notebooks/AlphaFold.ipynb 2023-04-06 10:50:41.351746867 +0200 +@@ -103,16 +103,17 @@ + " %shell rm -rf /opt/conda\n", + " %shell wget -q -P /tmp \\\n", + " https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \\\n", +- " \u0026\u0026 bash /tmp/Miniconda3-latest-Linux-x86_64.sh -b -p /opt/conda \\\n", +- " \u0026\u0026 rm /tmp/Miniconda3-latest-Linux-x86_64.sh\n", ++ " && bash /tmp/Miniconda3-latest-Linux-x86_64.sh -b -p /opt/conda \\\n", ++ " && rm /tmp/Miniconda3-latest-Linux-x86_64.sh\n", ++ + " pbar.update(9)\n", + "\n", + " PATH=%env PATH\n", + " %env PATH=/opt/conda/bin:{PATH}\n", + " %shell conda install -qy conda==4.13.0 \\\n", +- " \u0026\u0026 conda install -qy -c conda-forge \\\n", ++ " && conda install -qy -c conda-forge \\\n", + " python=3.9 \\\n", +- " openmm=7.5.1 \\\n", ++ " openmm=8.0.0 \\\n", + " pdbfixer\n", + " pbar.update(80)\n", + "\n", +@@ -164,8 +165,8 @@ + " pbar.update(10)\n", + "\n", + " # Apply OpenMM patch.\n", +- " %shell pushd /opt/conda/lib/python3.9/site-packages/ \u0026\u0026 \\\n", +- " patch -p0 \u003c /content/alphafold/docker/openmm.patch \u0026\u0026 \\\n", ++ " %shell pushd /opt/conda/lib/python3.8/site-packages/ && \\\n", ++ + " popd\n", + "\n", + " # Make sure stereo_chemical_props.txt is in all locations where it could be searched for.\n", +@@ -189,9 +190,10 @@ + "\n", + "import jax\n", + "if jax.local_devices()[0].platform == 'tpu':\n", +- " raise RuntimeError('Colab TPU runtime not supported. Change it to GPU via Runtime -\u003e Change Runtime Type -\u003e Hardware accelerator -\u003e GPU.')\n", ++ " raise RuntimeError('Colab TPU runtime not supported. Change it to GPU via Runtime -> Change Runtime Type -> Hardware accelerator -> GPU.')\n", + "elif jax.local_devices()[0].platform == 'cpu':\n", +- " raise RuntimeError('Colab CPU runtime not supported. Change it to GPU via Runtime -\u003e Change Runtime Type -\u003e Hardware accelerator -\u003e GPU.')\n", ++ " raise RuntimeError('Colab CPU runtime not supported. Change it to GPU via Runtime -> Change Runtime Type -> Hardware accelerator -> GPU.')\n", ++ + "else:\n", + " print(f'Running with {jax.local_devices()[0].device_kind} GPU')\n", + "\n", +@@ -211,7 +213,7 @@ + "source": [ + "## Making a prediction\n", + "\n", +- "Please paste the sequence of your protein in the text box below, then run the remaining cells via _Runtime_ \u003e _Run after_. You can also run the cells individually by pressing the _Play_ button on the left.\n", ++ "Please paste the sequence of your protein in the text box below, then run the remaining cells via _Runtime_ > _Run after_. You can also run the cells individually by pressing the _Play_ button on the left.\n", + "\n", + "Note that the search against databases and the actual prediction can take some time, from minutes to hours, depending on the length of the protein and what type of GPU you are allocated by Colab (see FAQ below)." + ] +@@ -306,21 +308,21 @@ + "\n", + "# Check whether total length exceeds limit.\n", + "total_sequence_length = sum([len(seq) for seq in sequences])\n", +- "if total_sequence_length \u003e MAX_LENGTH:\n", ++ "if total_sequence_length > MAX_LENGTH:\n", + " raise ValueError('The total sequence length is too long: '\n", + " f'{total_sequence_length}, while the maximum is '\n", + " f'{MAX_LENGTH}.')\n", + "\n", + "# Check whether we exceed the monomer limit.\n", + "if model_type_to_use == ModelType.MONOMER:\n", +- " if len(sequences[0]) \u003e MAX_MONOMER_MODEL_LENGTH:\n", ++ " if len(sequences[0]) > MAX_MONOMER_MODEL_LENGTH:\n", + " raise ValueError(\n", + " f'Input sequence is too long: {len(sequences[0])} amino acids, while '\n", + " f'the maximum for the monomer model is {MAX_MONOMER_MODEL_LENGTH}. You may '\n", + " 'be able to run this sequence with the multimer model by selecting the '\n", + " 'use_multimer_model_for_monomers checkbox above.')\n", + " \n", +- "if total_sequence_length \u003e MAX_VALIDATED_LENGTH:\n", ++ "if total_sequence_length > MAX_VALIDATED_LENGTH:\n", + " print('WARNING: The accuracy of the system has not been fully validated '\n", + " 'above 3000 residues, and you may experience long running times or '\n", + " f'run out of memory. Total sequence length is {total_sequence_length} '\n", +@@ -421,7 +423,7 @@ + "]\n", + "\n", + "# Search UniProt and construct the all_seq features only for heteromers, not homomers.\n", +- "if model_type_to_use == ModelType.MULTIMER and len(set(sequences)) \u003e 1:\n", ++ "if model_type_to_use == ModelType.MULTIMER and len(set(sequences)) > 1:\n", + " MSA_DATABASES.extend([\n", + " # Swiss-Prot and TrEMBL are concatenated together as UniProt.\n", + " {'db_name': 'uniprot',\n", +@@ -455,7 +457,7 @@ + " for sequence_index, sequence in enumerate(sorted(set(sequences)), 1):\n", + " fasta_path = f'target_{sequence_index:02d}.fasta'\n", + " with open(fasta_path, 'wt') as f:\n", +- " f.write(f'\u003equery\\n{sequence}')\n", ++ " f.write(f'>query\\n{sequence}')\n", + " sequence_to_fasta_path[sequence] = fasta_path\n", + "\n", + " # Run the search against chunks of genetic databases (since the genetic\n", +@@ -516,7 +518,7 @@ + " num_templates=0, num_res=len(sequence)))\n", + "\n", + " # Construct the all_seq features only for heteromers, not homomers.\n", +- " if model_type_to_use == ModelType.MULTIMER and len(set(sequences)) \u003e 1:\n", ++ " if model_type_to_use == ModelType.MULTIMER and len(set(sequences)) > 1:\n", + " valid_feats = msa_pairing.MSA_FEATURES + (\n", + " 'msa_species_identifiers',\n", + " )\n", +@@ -680,7 +682,7 @@ + "banded_b_factors = []\n", + "for plddt in plddts[best_model_name]:\n", + " for idx, (min_val, max_val, _) in enumerate(PLDDT_BANDS):\n", +- " if plddt \u003e= min_val and plddt \u003c= max_val:\n", ++ " if plddt >= min_val and plddt <= max_val:\n", + " banded_b_factors.append(idx)\n", + " break\n", + "banded_b_factors = np.array(banded_b_factors)[:, None] * final_atom_mask\n", +@@ -693,14 +695,14 @@ + " f.write(relaxed_pdb)\n", + "\n", + "\n", +- "# --- Visualise the prediction \u0026 confidence ---\n", ++ "# --- Visualise the prediction & confidence ---\n", + "show_sidechains = True\n", + "def plot_plddt_legend():\n", + " \"\"\"Plots the legend for pLDDT.\"\"\"\n", +- " thresh = ['Very low (pLDDT \u003c 50)',\n", +- " 'Low (70 \u003e pLDDT \u003e 50)',\n", +- " 'Confident (90 \u003e pLDDT \u003e 70)',\n", +- " 'Very high (pLDDT \u003e 90)']\n", ++ " thresh = ['Very low (pLDDT < 50)',\n", ++ " 'Low (70 > pLDDT > 50)',\n", ++ " 'Confident (90 > pLDDT > 70)',\n", ++ " 'Very high (pLDDT > 90)']\n", + "\n", + " colors = [x[2] for x in PLDDT_BANDS]\n", + "\n", +@@ -816,13 +818,13 @@ + "id": "jeb2z8DIA4om" + }, + "source": [ +- "## FAQ \u0026 Troubleshooting\n", ++ "## FAQ & Troubleshooting\n", + "\n", + "\n", + "* How do I get a predicted protein structure for my protein?\n", + " * Click on the _Connect_ button on the top right to get started.\n", + " * Paste the amino acid sequence of your protein (without any headers) into the “Enter the amino acid sequence to fold”.\n", +- " * Run all cells in the Colab, either by running them individually (with the play button on the left side) or via _Runtime_ \u003e _Run all._ Make sure you run all 5 cells in order.\n", ++ " * Run all cells in the Colab, either by running them individually (with the play button on the left side) or via _Runtime_ > _Run all._ Make sure you run all 5 cells in order.\n", + " * The predicted protein structure will be downloaded once all cells have been executed. Note: This can take minutes to hours - see below.\n", + "* How long will this take?\n", + " * Downloading the AlphaFold source code can take up to a few minutes.\n", +@@ -831,8 +833,8 @@ + " * Running AlphaFold and generating the prediction can take minutes to hours, depending on the length of your protein and on which GPU-type Colab has assigned you.\n", + "* My Colab no longer seems to be doing anything, what should I do?\n", + " * Some steps may take minutes to hours to complete.\n", +- " * If nothing happens or if you receive an error message, try restarting your Colab runtime via _Runtime_ \u003e _Restart runtime_.\n", +- " * If this doesn’t help, try resetting your Colab runtime via _Runtime_ \u003e _Factory reset runtime_.\n", ++ " * If nothing happens or if you receive an error message, try restarting your Colab runtime via _Runtime_ > _Restart runtime_.\n", ++ " * If this doesn’t help, try resetting your Colab runtime via _Runtime_ > _Factory reset runtime_.\n", + "* How does this compare to the open-source version of AlphaFold?\n", + " * This Colab version of AlphaFold searches a selected portion of the BFD dataset and currently doesn’t use templates, so its accuracy is reduced in comparison to the full version of AlphaFold that is described in the [AlphaFold paper](https://doi.org/10.1038/s41586-021-03819-2) and [Github repo](https://github.com/deepmind/alphafold/) (the full version is available via the inference script).\n", + "* What is a Colab?\n", +@@ -841,7 +843,7 @@ + " * The resources allocated to your Colab vary. See the [Colab FAQ](https://research.google.com/colaboratory/faq.html) for more details.\n", + " * You can execute the Colab nonetheless.\n", + "* I received an error “Colab CPU runtime not supported” or “No GPU/TPU found”, what do I do?\n", +- " * Colab CPU runtime is not supported. Try changing your runtime via _Runtime_ \u003e _Change runtime type_ \u003e _Hardware accelerator_ \u003e _GPU_.\n", ++ " * Colab CPU runtime is not supported. Try changing your runtime via _Runtime_ > _Change runtime type_ > _Hardware accelerator_ > _GPU_.\n", + " * The type of GPU allocated to your Colab varies. See the [Colab FAQ](https://research.google.com/colaboratory/faq.html) for more details.\n", + " * If you receive “Cannot connect to GPU backend”, you can try again later to see if Colab allocates you a GPU.\n", + " * [Colab Pro](https://colab.research.google.com/signup) offers priority access to GPUs.\n", diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b2_fix-import-protein_letters_3to1.patch b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b2_fix-import-protein_letters_3to1.patch new file mode 100644 index 00000000000..34994664f80 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b2_fix-import-protein_letters_3to1.patch @@ -0,0 +1,13 @@ +fix import of protein_letters_3to1 from Biopython +author: Kenneth Hoste (HPC-UGent) +--- AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py.orig 2024-06-05 09:30:16.114746286 +0200 ++++ AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py 2024-06-05 09:30:35.242665615 +0200 +@@ -4,7 +4,7 @@ + from alphafold.data.mmcif_parsing import parse + from alphafold.common.residue_constants import residue_atoms, atom_types + from Bio.PDB import NeighborSearch, PDBIO, MMCIFIO +-from Bio.PDB.Polypeptide import protein_letters_3to1 ++from Bio.Data.SCOPData import protein_letters_3to1 + from Bio import SeqIO + from colabfold.batch import convert_pdb_to_mmcif + from Bio.PDB import Structure, Model, Chain, Residue diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..492a787c919 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,106 @@ +# created by Denis Kristak (Inuits) +easyblock = 'PythonBundle' + +name = 'AlphaPulldown' +version = '2.0.0b4' +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': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('OpenMM', '8.0.0'), + ('Kalign', '3.3.5'), + ('PyYAML', '6.0'), + ('jax', '0.3.25', versionsuffix), # also provides absl-py + ('Biopython', '1.79'), + ('h5py', '3.7.0'), + ('IPython', '8.5.0'), + ('JupyterLab', '3.5.0'), + ('matplotlib', '3.5.2'), + ('TensorFlow', '2.11.0', versionsuffix), + ('PyTorch', '1.12.0', versionsuffix), + ('tqdm', '4.64.0'), + ('dm-tree', '0.1.8'), + ('py3Dmol', '2.0.1.post1'), + ('HMMER', '3.3.2'), + ('HH-suite', '3.3.0'), + ('Uni-Core', '0.0.3', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('importlib-resources', '5.13.0', { + 'modulename': 'importlib_resources', + 'source_tmpl': 'importlib_resources-%(version)s.tar.gz', + 'checksums': ['82d5c6cca930697dbbd86c93333bb2c2e72861d4789a11c2662b933e5ad2b528'], + }), + ('jmp', '0.0.4', { + 'checksums': ['5dfeb0fd7c7a9f72a70fff0aab9d0cbfae32a809c02f4037ff3485ceb33e1730'], + }), + ('dm-haiku', '0.0.9', { + 'modulename': 'haiku', + 'source_urls': ['https://github.com/deepmind/dm-haiku/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['d550f07f5891ede30ada5faafde98f549ed1b8ceadb7a601cca3d81db7d82414'], + }), + ('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'], + }), + (name, version, { + 'sources': [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/KosinskiLab', + 'repo_name': 'AlphaPulldown', + 'tag': version, + 'recursive': True, + }, + }], + 'patches': ['AlphaPulldown-2.0.0b2_fix-import-protein_letters_3to1.patch'], + 'checksums': [ + None, + 'd41247cd12f6ef8579adbc893f6c1af5fba051167ee838449974365f4bdccf06', + ], + # remove strict version requirements for Python dependencies + 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + }), +] + +fix_python_shebang_for = ['bin/*.py'] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], +} + +sanity_check_commands = [ + "run_multimer_jobs.py --help | grep 'A script to perform structure prediction'", + "convert_to_modelcif.py --help | grep 'turn it into a ModelCIF'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a.eb new file mode 100644 index 00000000000..f410c438e23 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2022a.eb @@ -0,0 +1,104 @@ +# created by Denis Kristak (Inuits) +easyblock = 'PythonBundle' + +name = 'AlphaPulldown' +version = '2.0.0b4' + +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': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('OpenMM', '8.0.0'), + ('Kalign', '3.3.5'), + ('PyYAML', '6.0'), + ('jax', '0.3.25'), # also provides absl-py + ('Biopython', '1.79'), + ('h5py', '3.7.0'), + ('IPython', '8.5.0'), + ('JupyterLab', '3.5.0'), + ('matplotlib', '3.5.2'), + ('TensorFlow', '2.11.0'), + ('PyTorch', '1.12.0'), + ('tqdm', '4.64.0'), + ('dm-tree', '0.1.8'), + ('py3Dmol', '2.0.1.post1'), + ('HMMER', '3.3.2'), + ('HH-suite', '3.3.0'), + ('Uni-Core', '0.0.3'), +] + +use_pip = True + +exts_list = [ + ('importlib-resources', '5.13.0', { + 'modulename': 'importlib_resources', + 'source_tmpl': 'importlib_resources-%(version)s.tar.gz', + 'checksums': ['82d5c6cca930697dbbd86c93333bb2c2e72861d4789a11c2662b933e5ad2b528'], + }), + ('jmp', '0.0.4', { + 'checksums': ['5dfeb0fd7c7a9f72a70fff0aab9d0cbfae32a809c02f4037ff3485ceb33e1730'], + }), + ('dm-haiku', '0.0.9', { + 'modulename': 'haiku', + 'source_urls': ['https://github.com/deepmind/dm-haiku/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['d550f07f5891ede30ada5faafde98f549ed1b8ceadb7a601cca3d81db7d82414'], + }), + ('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'], + }), + (name, version, { + 'sources': [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/KosinskiLab', + 'repo_name': 'AlphaPulldown', + 'tag': version, + 'recursive': True, + }, + }], + 'patches': ['AlphaPulldown-2.0.0b2_fix-import-protein_letters_3to1.patch'], + 'checksums': [ + None, + 'd41247cd12f6ef8579adbc893f6c1af5fba051167ee838449974365f4bdccf06', + ], + # remove strict version requirements for Python dependencies + 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + }), +] + +fix_python_shebang_for = ['bin/*.py'] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], +} + +sanity_check_commands = [ + "run_multimer_jobs.py --help | grep 'A script to perform structure prediction'", + "convert_to_modelcif.py --help | grep 'turn it into a ModelCIF'", +] + +moduleclass = 'bio' 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/Arrow/Arrow-14.0.1-gfbf-2023a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb index 85715fef495..0c588b9f16b 100644 --- a/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb +++ b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb @@ -39,10 +39,10 @@ dependencies = [ start_dir = 'cpp' # see https://arrow.apache.org/docs/developers/python.html -configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON " configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " -configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " -configopts += "-DZSTD_ROOT=$EBROOTZSTD " +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 && " @@ -52,7 +52,7 @@ _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_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " exts_defaultclass = 'PythonPackage' exts_default_options = { @@ -81,6 +81,7 @@ 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/Arrow/Arrow-16.1.0-gfbf-2023b.eb b/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb index 87862215507..5219bd9c54f 100644 --- a/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb +++ b/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb @@ -39,10 +39,10 @@ dependencies = [ start_dir = 'cpp' # see https://arrow.apache.org/docs/developers/python.html -configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON " configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " -configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " -configopts += "-DZSTD_ROOT=$EBROOTZSTD " +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 && " @@ -52,7 +52,7 @@ _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_preinstall_opts += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 " exts_defaultclass = 'PythonPackage' exts_default_options = { @@ -81,6 +81,7 @@ 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/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..76dcfd2cc40 --- /dev/null +++ b/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb @@ -0,0 +1,96 @@ +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_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib -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 = { + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} +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'], + }), +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_paths = { + 'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT, + 'lib/python%%(pyshortver)s/site-packages/pyarrow/libarrow_python.%s' % SHLIB_EXT], + 'dirs': ['include/arrow', 'lib/cmake/Arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import pyarrow'", + "python -c 'import pyarrow.dataset'", + "python -c 'import pyarrow.parquet'", + "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 d4f3285a8fd..b2d0fe9046a 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 @@ -53,7 +53,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", ] modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} diff --git a/easybuild/easyconfigs/a/Auto-WEKA/Auto-WEKA-2.6-WEKA-3.8.5-Java-11.eb b/easybuild/easyconfigs/a/Auto-WEKA/Auto-WEKA-2.6-WEKA-3.8.5-Java-11.eb new file mode 100644 index 00000000000..165bfe50d5a --- /dev/null +++ b/easybuild/easyconfigs/a/Auto-WEKA/Auto-WEKA-2.6-WEKA-3.8.5-Java-11.eb @@ -0,0 +1,42 @@ +easyblock = "Tarball" + +name = 'Auto-WEKA' +version = '2.6' +local_weka_version = '3.8.5' +versionsuffix = '-WEKA-%s-Java-%%(javaver)s' % local_weka_version + +homepage = 'http://www.cs.ubc.ca/labs/beta/Projects/autoweka/' +description = """ +Auto-WEKA considers the problem of simultaneously selecting a learning +algorithm and setting its hyperparameters, going beyond previous methods that +address these issues in isolation. Auto-WEKA does this using a fully automated +approach, leveraging recent innovations in Bayesian optimization. Our hope is +that Auto-WEKA will help non-expert users to more effectively identify machine +learning algorithms and hyperparameter settings appropriate to their +applications, and hence to achieve improved performance.""" + +toolchain = SYSTEM + +source_urls = ['http://www.cs.ubc.ca/labs/beta/Projects/autoweka/'] +sources = ['autoweka-%(version)s.zip'] +checksums = ['8fba8835f6326a9fd621ffe9f119921adae00dcef97ffad5357362b155374840'] + +dependencies = [ + ('Java', '11'), + ('WEKA', local_weka_version, '-Java-%(javaver)s'), +] + +sanity_check_paths = { + 'files': ['autoweka.jar'], + 'dirs': [] +} + +sanity_check_commands = [ + "java weka.Run -no-scan weka.classifiers.meta.AutoWEKAClassifier -h" +] + +modloadmsg = """Run %(name)s classifiers with: +java weka.Run -no-scan weka.classifiers.meta.AutoWEKAClassifier -h +""" + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..faadde2a51d --- /dev/null +++ b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-12.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'absl-py' +version = '2.1.0' + +homepage = 'https://github.com/abseil/abseil-py' +description = """absl-py is a collection of Python library code for building Python +applications. The code is collected from Google's own Python code base, and has +been extensively tested and used in production.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [('Python', '3.11.3')] + +use_pip = True + +exts_list = [ + ('absl-py', version, { + 'modulename': 'absl', + 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fb76611558b --- /dev/null +++ b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'absl-py' +version = '2.1.0' + +homepage = 'https://github.com/abseil/abseil-py' +description = """absl-py is a collection of Python library code for building Python +applications. The code is collected from Google's own Python code base, and has +been extensively tested and used in production.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Python', '3.12.3')] + +use_pip = True + +exts_list = [ + ('absl-py', version, { + 'modulename': 'absl', + 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/adjustText/adjustText-0.7.3-foss-2022b.eb b/easybuild/easyconfigs/a/adjustText/adjustText-0.7.3-foss-2022b.eb new file mode 100644 index 00000000000..4c13c121047 --- /dev/null +++ b/easybuild/easyconfigs/a/adjustText/adjustText-0.7.3-foss-2022b.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'adjustText' +version = '0.7.3' + +homepage = 'https://github.com/Phlya/adjustText' +description = "A small library for automatically adjustment of text position in matplotlib plots to minimize overlaps." + +toolchain = {'name': 'foss', 'version': '2022b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['b90e275a95b4d980cbbac7967914b8d66477c09bc346a0b3c9e2125bba664b06'] + +dependencies = [ + ('Python', '3.10.8'), + ('matplotlib', '3.7.0'), + ('SciPy-bundle', '2023.02'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +options = {'modulename': 'adjustText'} + +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..c6b30e2d82e --- /dev/null +++ b/easybuild/easyconfigs/a/aiohttp/aiohttp-3.10.10-GCCcore-13.3.0.eb @@ -0,0 +1,72 @@ +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'), +] + +use_pip = True + +# 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'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..fd05a43146f --- /dev/null +++ b/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'alsa-lib' +version = '1.2.11' + +homepage = 'https://www.alsa-project.org' +description = """The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality + to the Linux operating system.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://www.alsa-project.org/files/pub/lib/'] +sources = [SOURCE_TAR_BZ2] +checksums = ['9f3f2f69b995f9ad37359072fbc69a3a88bfba081fc83e9be30e14662795bb4d'] + +dependencies = [('binutils', '2.40')] + +configopts = ['--disable-shared --enable-static', '--enable-shared'] + +sanity_check_paths = { + 'files': ['bin/aserver', 'include/asoundlib.h', + 'lib64/libatopology.%s' % SHLIB_EXT, 'lib64/libasound.%s' % SHLIB_EXT, 'lib64/libasound.a'], + 'dirs': ['include/alsa', 'lib/pkgconfig', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4333348a741 --- /dev/null +++ b/easybuild/easyconfigs/a/alsa-lib/alsa-lib-1.2.11-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'alsa-lib' +version = '1.2.11' + +homepage = 'https://www.alsa-project.org' +description = """The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality + to the Linux operating system.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.alsa-project.org/files/pub/lib/'] +sources = [SOURCE_TAR_BZ2] +checksums = ['9f3f2f69b995f9ad37359072fbc69a3a88bfba081fc83e9be30e14662795bb4d'] + +dependencies = [('binutils', '2.42')] + +configopts = ['--disable-shared --enable-static', '--enable-shared'] + +sanity_check_paths = { + 'files': ['bin/aserver', 'include/asoundlib.h', + 'lib64/libatopology.%s' % SHLIB_EXT, 'lib64/libasound.%s' % SHLIB_EXT, 'lib64/libasound.a'], + 'dirs': ['include/alsa', 'lib/pkgconfig', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/anndata/anndata-0.10.5.post1-foss-2023a.eb b/easybuild/easyconfigs/a/anndata/anndata-0.10.5.post1-foss-2023a.eb index b49190c6e5a..8c520bf7d04 100644 --- a/easybuild/easyconfigs/a/anndata/anndata-0.10.5.post1-foss-2023a.eb +++ b/easybuild/easyconfigs/a/anndata/anndata-0.10.5.post1-foss-2023a.eb @@ -9,11 +9,14 @@ description = """anndata is a Python package for handling annotated data matrice toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), ('h5py', '3.9.0'), - ('hatchling', '1.18.0'), ] use_pip = True 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..cb2317d16cc --- /dev/null +++ b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb @@ -0,0 +1,45 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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-12.3.0.eb b/easybuild/easyconfigs/a/any2fasta/any2fasta-0.4.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..3f96b328b6a --- /dev/null +++ b/easybuild/easyconfigs/a/any2fasta/any2fasta-0.4.2-GCCcore-12.3.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': '12.3.0'} + +# https://github.com/tseemann/any2fasta +github_account = 'tseemann' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.zip'] +checksums = ['3faa738ab409c7073afe3769e9d32dd5b28a2c12e72c2e4ac6f4e9946ee9a22f'] + +dependencies = [('Perl', '5.36.1')] + +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/argtable/argtable-2.13-GCCcore-12.3.0.eb b/easybuild/easyconfigs/a/argtable/argtable-2.13-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..8a411de3fd2 --- /dev/null +++ b/easybuild/easyconfigs/a/argtable/argtable-2.13-GCCcore-12.3.0.eb @@ -0,0 +1,30 @@ +# 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 +# Modified by: Adam Huffman +# The Francis Crick Institute + +easyblock = 'ConfigureMake' + +name = 'argtable' +version = '2.13' + +homepage = 'https://argtable.sourceforge.io/' +description = """ Argtable is an ANSI C library for parsing GNU style + command line options with a minimum of fuss. """ + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%s%s.tar.gz' % (name, version.replace('.', '-'))] +checksums = ['8f77e8a7ced5301af6e22f47302fdbc3b1ff41f2b83c43c77ae5ca041771ddbf'] + +builddependencies = [('binutils', '2.40')] + +sanity_check_paths = { + 'files': ['include/argtable2.h', 'lib/libargtable2.%s' % SHLIB_EXT, 'lib/libargtable2.a'], + 'dirs': ['share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/arrow-R/arrow-R-16.1.0-foss-2023b-R-4.4.1.eb b/easybuild/easyconfigs/a/arrow-R/arrow-R-16.1.0-foss-2023b-R-4.4.1.eb new file mode 100644 index 00000000000..dd2e4260145 --- /dev/null +++ b/easybuild/easyconfigs/a/arrow-R/arrow-R-16.1.0-foss-2023b-R-4.4.1.eb @@ -0,0 +1,35 @@ +easyblock = 'RPackage' + +name = 'arrow-R' +version = '16.1.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/arrow' +description = "R interface to the Apache Arrow C++ library" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = [ + 'https://cran.r-project.org/src/contrib/Archive/arrow', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages +] +sources = ['arrow_%(version)s.tar.gz'] +checksums = ['66c1586ee7becd65b4d21b11ffcd157dc19f75c3c10ff5c5b3610689aadce7ef'] + +dependencies = [ + ('R', '4.4.1'), + ('R-bundle-CRAN', '2024.06'), + ('Arrow', '16.1.0'), # arrow-R x.y.z[.N] only works with Arrow x.y.z +] + +preinstallopts = "export LIBARROW_BINARY=true && " + +sanity_check_paths = { + 'files': [], + 'dirs': ['arrow'], +} + +options = {'modulename': 'arrow'} + +moduleclass = 'tools' 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/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..9b70b1a9008 --- /dev/null +++ b/easybuild/easyconfigs/a/awscli/awscli-2.17.54-GCCcore-13.2.0.eb @@ -0,0 +1,73 @@ +easyblock = 'PythonBundle' + +name = 'awscli' +version = '2.17.54' + +homepage = 'https://pypi.python.org/pypi/awscli' +description = 'Universal Command Line Environment for AWS' + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), # required for awscrt +] + +dependencies = [ + ('Python', '3.11.5'), + ('PyYAML', '6.0.1'), + ('ruamel.yaml', '0.18.6'), +] + +use_pip = True + +exts_list = [ + ('jmespath', '1.0.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980'], + }), + ('botocore', '1.35.22', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d9bc656e7dde0b3e3f3080fc54bacff6a97fd7806b98acbcc21c7f9d4d0102b9'], + }), + ('s3transfer', '0.10.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['eca1c20de70a39daee580aef4986996620f365c4e0fda6a86100231d62f1bf69'], + }), + ('prompt_toolkit', '3.0.47', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0d7bfa67001d5e39d02c224b663abc33687405033a8c422d0d675a5a13361d10'], + }), + ('distro', '1.9.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2'], + }), + ('awscrt', '0.21.5', { + 'preinstallopts': "export AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 && ", + 'checksums': ['7ec2a67af30fbf386494df00bbdf996f7024000df6b01ab160014afef2b91005'], + }), + # older version of `urllib3` to avoid `ImportError: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_'` + # see https://github.com/aws/aws-cli/issues/7905#issuecomment-1559817550 + ('urllib3', '1.26.20', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e'], + }), + (name, version, { + # version requirements are too strict + 'preinstallopts': """sed -i 's/>[^"]*//g' pyproject.toml && """, + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/aws/aws-cli/archive/'], + 'checksums': ['c0a37eeb52b7df336e117667b67a275929701e9f6dad0ddb7de59a6f834e5b48'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/aws'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_check_commands = ["aws help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/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/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..bf5a35b052b --- /dev/null +++ b/easybuild/easyconfigs/b/BGEN-enkre/BGEN-enkre-1.1.7-GCC-12.3.0.eb @@ -0,0 +1,73 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen +# we recommend to use --download-timeout=1000 when fetching the files + +easyblock = 'CmdCp' + +name = 'BGEN-enkre' +version = '1.1.7' + +homepage = 'https://enkre.net/cgi-bin/code/bgen/dir?ci=trunk' +description = """This repository contains a reference implementation +of the BGEN format, written in C++. The library can be used as the +basis for BGEN support in other software, or as a reference for +developers writing their own implementations of the BGEN format. +Please cite: +Band, G. and Marchini, J., "BGEN: a binary file format for imputed genotype and haplotype data", +bioArxiv 308296; doi: https://doi.org/10.1101/308296 +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://code.enkre.net/bgen/tarball/v%(version)s/'] +sources = ['v%(version)s.tgz'] +patches = [ + '3rd-party-removal.patch', + 'BGEN-enkre_streampos.patch', +] + +checksums = [ + ('6476b077af6c8e98e85fd7e09f58cb3fdf143ff91850c984248fd4dc2d74a8c3', # v1.1.7.tgz + 'b922ac22c1c0e365d0de6054f6ce2ad911bc81db5bcd8ca915bae750f57bd0a7'), + '0269b91d21976f38a9cf9bf7811375d16bf35be587d903ab1d846b2001b7d767', # 3rd-party-removal.patch + '61c05ae5f7363d5b7b6015f0a015b93f149dbda4b23b9f48f9517a6ce93d5869', # BGEN-enkre_streampos.patch +] + +builddependencies = [ + ('Python', '3.11.3'), +] + +dependencies = [ + ('SQLite', '3.42.0'), + ('zstd', '1.5.5'), + ('Boost', '1.55.0'), +] + +cmds_map = [ + ('.*', "./waf configure && echo LIB_zstd = [\\'zstd\\'] >> build/c4che/_cache.py &&" + " echo LIB_sqlite3 = [\\'sqlite3\\'] >> build/c4che/_cache.py &&" + "echo LIB_boost = [\\'boost_system\\', \\'boost_filesystem\\', \\'boost_thread\\', \\'boost_timer\\'] " + " >> build/c4che/_cache.py && ./waf"), +] + +files_to_copy = [ + (['build/apps/edit-bgen', 'build/apps/bgenix', 'build/apps/cat-bgen'], 'bin'), + (['build/db/libdb.a', 'build/libbgen.a'], 'lib'), + (['genfile/include/*', 'db/include/*'], 'include'), +] + +postinstallcmds = ['./build/test/unit/test_bgen'] + +sanity_check_paths = { + 'files': ['bin/edit-bgen', 'bin/bgenix', 'bin/cat-bgen'], + 'dirs': ['bin', 'lib', 'include'], +} + +sanity_check_commands = [ + 'bgenix -help', + 'cat-bgen -help', + 'edit-bgen -help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BLAT/BLAT-3.7-GCC-12.3.0.eb b/easybuild/easyconfigs/b/BLAT/BLAT-3.7-GCC-12.3.0.eb new file mode 100644 index 00000000000..ba6cac7d238 --- /dev/null +++ b/easybuild/easyconfigs/b/BLAT/BLAT-3.7-GCC-12.3.0.eb @@ -0,0 +1,55 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 The Cyprus Institute +# Authors:: Andreas Panteli , Thekla Loizou +# Contributors:: Alex Domingo (Vrije Universiteit Brussel) +# License:: MIT/GPL +# +## + +name = 'BLAT' +version = '3.7' + +homepage = 'https://genome.ucsc.edu/goldenPath/help/blatSpec.html' +description = """BLAT on DNA is designed to quickly find sequences of 95% and +greater similarity of length 25 bases or more.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://genome-test.gi.ucsc.edu/~kent/src/'] +sources = ['%%(namelower)sSrc%s.zip' % ''.join(version.split('.'))] +patches = ['BLAT-%(version)s_mend-tests.patch'] +checksums = [ + {'blatSrc37.zip': '88ee2b272d42ab77687c61d200b11f1d58443951069feb7e10226a2509f84cf2'}, + {'BLAT-3.7_mend-tests.patch': '1f42c7fadf7676a5cc3a2016f70089c3541aa1d53816cf86072682c44cf311a6'}, +] + +# BLAT relies on a bundled old version of HTSlib. We use the bundled library +# because it is statically linked and the newer HTSlib in this toolchain is not +# API compatible with it. +dependencies = [ + ('freetype', '2.13.0'), + ('libiconv', '1.17'), + ('libpng', '1.6.39'), + ('MariaDB', '11.6.0'), + ('OpenSSL', '1.1', '', SYSTEM), + ('util-linux', '2.39'), + ('zlib', '1.2.13'), +] + +pretestopts = 'PATH="%(builddir)s/blatSrc/bin:$PATH"' +runtest = 'test' + +_blat_bins = ["blat", "faToNib", "faToTwoBit", "gfClient", "gfServer", "nibFrag", "pslPretty", + "pslReps", "pslSort", "twoBitInfo", "twoBitToFa"] + +files_to_copy = [(["bin/%s" % x for x in _blat_bins] + ["webBlat/webBlat"], 'bin')] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in _blat_bins + ["webBlat"]], + '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/BRiAl/BRiAl-1.2.12-GCC-13.2.0.eb b/easybuild/easyconfigs/b/BRiAl/BRiAl-1.2.12-GCC-13.2.0.eb new file mode 100644 index 00000000000..50bbeea16ee --- /dev/null +++ b/easybuild/easyconfigs/b/BRiAl/BRiAl-1.2.12-GCC-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'BRiAl' +version = '1.2.12' + +homepage = 'https://github.com/BRiAl/BRiAl' +description = """BRiAl is the legacy version of PolyBoRi maintained by sagemath developers.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/BRiAl/BRiAl/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['ca009e3722dd3f0a60d15501caed1413146c80abced57423e32ae0116f407494'] + +dependencies = [ + ('Boost', '1.83.0'), + ('m4ri', '20200125'), + ('CUDD', '3.0.0'), +] + +configopts = "--with-boost=$EBROOTBOOST " + +runtest = 'check' + +sanity_check_paths = { + 'files': ['include/polybori.h'] + + ['lib/libbrial.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.2.0.eb b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.2.0.eb new file mode 100644 index 00000000000..a8e5449e98c --- /dev/null +++ b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.2.0.eb @@ -0,0 +1,22 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +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.2.0'} +toolchainopts = {'pic': True} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['4d8b84bd07b673d0ed41031348f10ca98dd6fa6a4460f9b9668d6f1d4084dfc8'] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +# https://github.com/pezmaster31/bamtools +github_account = 'pezmaster31' + +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..23e1ad0e743 --- /dev/null +++ b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-13.3.0.eb @@ -0,0 +1,22 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +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} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['4d8b84bd07b673d0ed41031348f10ca98dd6fa6a4460f9b9668d6f1d4084dfc8'] + +builddependencies = [ + ('CMake', '3.29.3'), +] + +# https://github.com/pezmaster31/bamtools +github_account = 'pezmaster31' + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BayesOpt/BayesOpt-0.9-GCC-12.3.0.eb b/easybuild/easyconfigs/b/BayesOpt/BayesOpt-0.9-GCC-12.3.0.eb new file mode 100644 index 00000000000..2e20ceba904 --- /dev/null +++ b/easybuild/easyconfigs/b/BayesOpt/BayesOpt-0.9-GCC-12.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'BayesOpt' +version = '0.9' + +homepage = 'https://rmcantin.github.io/bayesopt' +description = """BayesOpt is an efficient implementation of the Bayesian optimization methodology for +nonlinear-optimization, experimental design, stochastic bandits and hyperparameter tunning""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/rmcantin/bayesopt/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f4e60cfac380eccd2d1adc805b752b5bd22a1d8a27dc6aeb630c403adc04f28c'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('Boost', '1.82.0'), + ('NLopt', '2.7.1'), +] + +# don't build included version of NLopt (use provided dependency) +configopts = "-DNLOPT_BUILD=OFF" + +sanity_check_paths = { + 'files': ['lib/libbayesopt.a'], + 'dirs': ['include/bayesopt'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/b/BayesTraits/BayesTraits-4.1.2-Linux.eb b/easybuild/easyconfigs/b/BayesTraits/BayesTraits-4.1.2-Linux.eb new file mode 100644 index 00000000000..541dedf129e --- /dev/null +++ b/easybuild/easyconfigs/b/BayesTraits/BayesTraits-4.1.2-Linux.eb @@ -0,0 +1,40 @@ +# 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 by +# Author: Alex Salois +# Research Cyberinfrastructure +# Montana State University + +easyblock = "Tarball" + +name = 'BayesTraits' +version = '4.1.2' +versionsuffix = '-Linux' + +homepage = 'https://www.evolution.reading.ac.uk/SoftwareMain.html' +description = """ BayesTraits is a computer package for performing analyses of trait + evolution among groups of species for which a phylogeny or sample of phylogenies is + available. This new package incoporates our earlier and separate programes Multistate, + Discrete and Continuous. BayesTraits can be applied to the analysis of traits that adopt + a finite number of discrete states, or to the analysis of continuously varying traits. + Hypotheses can be tested about models of evolution, about ancestral states and about + correlations among pairs of traits. """ + +toolchain = SYSTEM + +source_urls = ['https://www.evolution.reading.ac.uk/BayesTraitsV%(version)s/Files/'] +sources = ['BayesTraitsV%(version)s%(versionsuffix)s.tar.gz'] +checksums = ['d5251c2b256405fc63c55caf8371b267530a3c4ebd11cbfd3ebd4013c9d49db0'] + +sanity_check_paths = { + 'files': ['BayesTraitsV4', 'Artiodactyl.trees', 'Bird.trees', 'Mammal.trees', + 'Marsupials.trees', 'NortheastBantu.trees', 'Primates.trees'], + 'dirs': [], +} + +modextrapaths = {'PATH': ''} + +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/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb b/easybuild/easyconfigs/b/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb new file mode 100644 index 00000000000..59f7c1a7cd5 --- /dev/null +++ b/easybuild/easyconfigs/b/BiG-SCAPE/BiG-SCAPE-1.1.9-foss-2023b.eb @@ -0,0 +1,68 @@ +easyblock = 'PythonPackage' + +name = 'BiG-SCAPE' +version = '1.1.9' + +homepage = 'https://bigscape-corason.secondarymetabolites.org/index.html' +description = """BiG-SCAPE and CORASON provide a set of tools to explore the diversity of biosynthetic gene clusters +(BGCs) across large numbers of genomes, by constructing BGC sequence similarity networks, grouping BGCs into gene +cluster families, and exploring gene cluster diversity linked to enzyme phylogenies.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +github_account = 'medema-group' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'BiG-SCAPE-1.1.5_use_env_var_for_html.patch', + 'BiG-SCAPE-1.1.5_use_correct_name_for_FastTree.patch', +] +checksums = [ + {'v1.1.9.tar.gz': 'ef0ddb5b433e0b1467ae5f96037fd6d23ebcba6bc08201d1421eba35d072e534'}, + {'BiG-SCAPE-1.1.5_use_env_var_for_html.patch': '540be22396ab982c2aeaaed4ce5acdb8ccb8ce2b31d36bc69d37be7a29c7c42a'}, + {'BiG-SCAPE-1.1.5_use_correct_name_for_FastTree.patch': + 'e1572e4134c6163a3927ac32bd2a39b7f87cf01109f7913b3c55126e2381a771'}, +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('Biopython', '1.84'), + ('scikit-learn', '1.4.0'), + ('networkx', '3.2.1'), + ('HMMER', '3.4'), + ('FastTree', '2.1.11'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': 'bigscape'} + +local_lib_py_bigscape_path = 'lib/python%(pyshortver)s/site-packages/bigscape' + +sanity_check_paths = { + 'files': ['bin/bigscape'], + 'dirs': [local_lib_py_bigscape_path], +} + +sanity_check_commands = [ + 'bigscape --help', +] + +modextravars = { + 'BIG_SCAPE_HTML_PATH': '%(installdir)s/' + local_lib_py_bigscape_path, +} + +modloadmsg = "%(name)s needs processed Pfam database to work properly.\n" +modloadmsg += "For this, download the latest 'Pfam-A.hmm.gz' file from the Pfam website " +modloadmsg += "(http://ftp.ebi.ac.uk/pub/databases/Pfam/releases/), " +modloadmsg += "uncompress it and process it using the `hmmpress` command.\n" +modloadmsg += "For data files, like the domains_color_file.tsv and domain_includelist.txt, " +modloadmsg += "one can set the environment variable BIG_SCAPE_DATA_PATH, if that is not set " +modloadmsg += "it will use the directory where the bigscape command is started from.\n" +modloadmsg += "One can copy the domains_color_file.tsv from " +modloadmsg += "%(installdir)s/lib/python%(pyshortver)s/site-packages/BiG-SCAPE/domains_color_file.tsv\n" + +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..49345e486d8 --- /dev/null +++ b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a.eb @@ -0,0 +1,89 @@ +easyblock = 'Tarball' + +name = 'BindCraft' +version = '1.1.0' + +homepage = 'https://github.com/martinpacesa/BindCraft' +description = """Simple binder design pipeline using AlphaFold2 backpropagation, MPNN, and PyRosetta. + Select your target and let the script do the rest of the work and finish once you have enough designs to order!""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/martinpacesa/BindCraft/archive/refs/tags/'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['c682f59501f0bcfbb8289fd066362dcea37ed8553cdff5c794a2baa6d4149ce7'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Seaborn', '0.13.2'), + ('tqdm', '4.66.1'), + ('OpenMM', '8.0.0'), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('PyRosetta', '4.release-387'), + ('jax', '0.4.25'), + ('dm-haiku', '0.0.13'), + ('dm-tree', '0.1.8'), + ('ml-collections', '0.1.1'), + ('Optax', '0.2.2'), + ('py3Dmol', '2.1.0'), + ('JupyterLab', '4.0.5'), + ('hatchling', '1.18.0'), + ('Flax', '0.8.4'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} +exts_list = [ + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + # older version compatible with `jupyterlab-4.0.5` + ('notebook', '7.0.8', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['7f421b3fd46a17d91830e724b94e8e9ae922af152ebfd48b1e13ae4a07d8193c'], + }), + ('jupyter', '1.1.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83'], + }), + ('immutabledict', '4.2.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d728b2c2410d698d95e6200237feb50a695584d20289ad3379a439aa3d90baba'], + }), + ('colabdesign', '1.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8f556fb575d2bbef79fa1789698d55221f2cc51df38f2cc054f38cb6ecc08e27'], + }), +] + +fix_python_shebang_for = ['bindcraft.py'] + +postinstallcmds = ['chmod a+x %(installdir)s/bindcraft.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': ['', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_paths = { + 'files': ['bindcraft.py'], + 'dirs': [], +} + +sanity_check_commands = ["bindcraft.py --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/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/Biotite/Biotite-0.41.0-gfbf-2023a.eb b/easybuild/easyconfigs/b/Biotite/Biotite-0.41.0-gfbf-2023a.eb new file mode 100644 index 00000000000..8d4385e45f5 --- /dev/null +++ b/easybuild/easyconfigs/b/Biotite/Biotite-0.41.0-gfbf-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'Biotite' +version = '0.41.0' + +homepage = 'https://www.biotite-python.org/' +description = """Biotite is your Swiss army knife for bioinformatics. Whether you want to +identify homologous sequence regions in a protein family or you would like to +find disulfide bonds in a protein structure: Biotite has the right tool for +you. This package bundles popular tasks in computational molecular biology into +a uniform Python library.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), +] + +use_pip = True + +exts_list = [ + ('biotite', version, { + 'checksums': ['a5fddb4d738291772735cf04dfa8b642e0bdd6b4c2c0c71e2db727c0a66bd106'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Block/Block-1.5.3-20200525-foss-2023a.eb b/easybuild/easyconfigs/b/Block/Block-1.5.3-20200525-foss-2023a.eb new file mode 100644 index 00000000000..da1316c8aa6 --- /dev/null +++ b/easybuild/easyconfigs/b/Block/Block-1.5.3-20200525-foss-2023a.eb @@ -0,0 +1,56 @@ +easyblock = 'MakeCp' + +name = 'Block' +version = '1.5.3-20200525' +_commit = 'f95317b08043b7c531289576d59ad74a6d920741' + +homepage = 'https://sanshar.github.io/Block/' +description = """Block implements the density matrix renormalization group (DMRG) algorithm for +quantum chemistry.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'cstd': 'c++11', 'pic': True} + +# Version 1.5 is a major rewrite of Block that was named at some point StackBlock +# sources are available in sanshar/StackBlock +# sources at sanshar/Block@b0e3671aad and pyscf/Block@db27636b76 correspond to version 1.1.1 +source_urls = ['https://github.com/sanshar/StackBlock/archive'] +sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': '%(version)s.tar.gz'}] +patches = [ + 'Block-1.5.3_use-eb-environment.patch', + 'Block-1.5.3_replace_mpi_cxx_binds_with_boost_mpi.patch', + 'Block-1.5.3_resolve_deprecated_Bind_placeholder.patch' +] +checksums = [ + {'1.5.3-20200525.tar.gz': '8d793c5e460d7747a0adcb06ce4b457c6750cf2d42cead1d060db8b44643c3b1'}, + {'Block-1.5.3_use-eb-environment.patch': '7f3e8a52f28d251441d20dfde1f9cb8cdc0c34216defab61cc6980e540a6cf60'}, + {'Block-1.5.3_replace_mpi_cxx_binds_with_boost_mpi.patch': + 'f53f1f88cb7b12ab38d1313f93a9bbd31c745dca1beca7a8d51d00e0ae4e762f'}, + {'Block-1.5.3_resolve_deprecated_Bind_placeholder.patch': + '51d692f294e800e0a9e027ef35bf761612ecb9efe77ddb378ec973b55e39a1e8'}, +] + +dependencies = [ + ('Boost.MPI', '1.82.0'), +] + +buildopts = [ + # Multi-threaded build (block.spin_adapted-serial) + 'OPENMP="yes" EXECUTABLE="block.spin_adapted-serial"', + # MPI build (block.spin_adapted) + 'USE_MPI="yes"', +] + +files_to_copy = [(['block.spin_adapted*'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/block.spin_adapted', 'bin/block.spin_adapted-serial'], + 'dirs': [], +} + +sanity_check_commands = [ + "block.spin_adapted-serial --version", + "%(mpi_cmd_prefix)s block.spin_adapted --version", +] + +moduleclass = 'phys' 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.75.0-GCC-12.3.0.eb b/easybuild/easyconfigs/b/Boost/Boost-1.75.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..9e6080cae87 --- /dev/null +++ b/easybuild/easyconfigs/b/Boost/Boost-1.75.0-GCC-12.3.0.eb @@ -0,0 +1,28 @@ +name = 'Boost' +version = '1.75.0' + +homepage = 'https://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 = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/'] +sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['aeb26f80e80945e82ee93e5939baebdca47b9dee80a07d3144be1e1a6a66dd6a'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), + ('XZ', '5.4.2'), + ('zstd', '1.5.5'), + ('ICU', '73.2'), +] + +configopts = '--without-libraries=python,mpi' + +# disable MPI, build Boost libraries with tagged layout +boost_mpi = False +tagged_layout = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.2.0.eb index 22f38cbf5f9..9e505b4df5e 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.2.0.eb @@ -21,7 +21,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.0.9'), - ('Highway', '0.12.2'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.3.0.eb index 301194a32a4..0661abf0609 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-10.3.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.0.9'), - ('Highway', '0.12.2'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-11.3.0.eb index 7522f1025e3..57bba400bde 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-11.3.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.0.9'), - ('Highway', '1.0.3'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.2.0.eb index cc914cae6cd..df29a7bda20 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.2.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.0.9'), - ('Highway', '1.0.3'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.3.0.eb index 22917f651e9..42e15bb4356 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-12.3.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.0.9'), - ('Highway', '1.0.4'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.2.0.eb index 249b1170411..6481ba231cd 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.2.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.1.0'), - ('Highway', '1.0.7'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency diff --git a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.3.0.eb index d374a07304a..3afc7fffd75 100644 --- a/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/b/Brunsli/Brunsli-0.1-GCCcore-13.3.0.eb @@ -22,7 +22,6 @@ builddependencies = [ dependencies = [ ('Brotli', '1.1.0'), - ('Highway', '1.2.0'), ] # skip use of third_party directory, since we provide Brotli via a proper dependency 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..89703e6caf7 --- /dev/null +++ b/easybuild/easyconfigs/b/bakta/bakta-1.10.1-foss-2023b.eb @@ -0,0 +1,69 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/bayesian-optimization/bayesian-optimization-1.5.1-foss-2023a.eb b/easybuild/easyconfigs/b/bayesian-optimization/bayesian-optimization-1.5.1-foss-2023a.eb new file mode 100644 index 00000000000..8215f2c822a --- /dev/null +++ b/easybuild/easyconfigs/b/bayesian-optimization/bayesian-optimization-1.5.1-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'bayesian-optimization' +version = '1.5.1' + +homepage = 'https://bayesian-optimization.github.io/BayesianOptimization/index.html' +description = "Pure Python implementation of bayesian global optimization with gaussian processes." + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('scikit-learn', '1.3.1'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('colorama', '0.4.6', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6'], + }), + ('bayesian_optimization', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'modulename': 'bayes_opt', + 'checksums': ['098946c933d6039073b7ccb0c9f1b4c73ac6e39350043b02e5243b08583c4c5c'], + }), +] + +sanity_check_commands = ["python -c 'from bayes_opt import BayesianOptimization'"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..8127a86c558 --- /dev/null +++ b/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'bitsandbytes' +version = '0.43.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://huggingface.co/docs/bitsandbytes/main/en/index' +description = "bitsandbytes enables accessible large language models via k-bit quantization for PyTorch." +github_account = 'bitsandbytes-foundation' + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['7a468bc977da19c176cc578954bfd7a3c64182f387a6849e9f0a38d5cba1b4df'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), + ('SciPy-bundle', '2023.07'), +] + +configopts = '-DCOMPUTE_BACKEND=cuda' +skipsteps = ['install'] + +postinstallcmds = [ + 'pip install --prefix=%(installdir)s --no-deps --ignore-installed --no-index --no-build-isolation %(start_dir)s', +] + +sanity_check_paths = { + 'files': ['lib/python%%(pyshortver)s/site-packages/bitsandbytes/libbitsandbytes_cuda121.%s' % SHLIB_EXT], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import bitsandbytes'", +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a.eb b/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a.eb new file mode 100644 index 00000000000..8b360bb263b --- /dev/null +++ b/easybuild/easyconfigs/b/bitsandbytes/bitsandbytes-0.43.3-foss-2023a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'bitsandbytes' +version = '0.43.3' + +homepage = 'https://huggingface.co/docs/bitsandbytes/main/en/index' +description = "bitsandbytes enables accessible large language models via k-bit quantization for PyTorch." +github_account = 'bitsandbytes-foundation' + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['7a468bc977da19c176cc578954bfd7a3c64182f387a6849e9f0a38d5cba1b4df'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('SciPy-bundle', '2023.07'), +] + +skipsteps = ['install'] + +postinstallcmds = [ + 'pip install --prefix=%(installdir)s --no-deps --ignore-installed --no-index --no-build-isolation %(start_dir)s', +] + +sanity_check_paths = { + 'files': ['lib/python%%(pyshortver)s/site-packages/bitsandbytes/libbitsandbytes_cpu.%s' % SHLIB_EXT], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import bitsandbytes'", +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/b/bliss/bliss-0.77-GCC-13.2.0.eb b/easybuild/easyconfigs/b/bliss/bliss-0.77-GCC-13.2.0.eb new file mode 100644 index 00000000000..ec9a99bc306 --- /dev/null +++ b/easybuild/easyconfigs/b/bliss/bliss-0.77-GCC-13.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'bliss' +version = '0.77' + +homepage = 'https://users.aalto.fi/~tjunttil/bliss/' +description = """Bliss is an open-source tool for computing canonical labelings and automorphism groups of graphs.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://users.aalto.fi/~tjunttil/bliss/downloads/'] +sources = [SOURCE_ZIP] +patches = ['bliss-0.77_install_fix.patch'] +checksums = [ + {'bliss-0.77.zip': 'acc8b98034f30fad24c897f365abd866c13d9f1bb207e398d0caf136875972a4'}, + {'bliss-0.77_install_fix.patch': '1550b6c7f8208f56093c0b6bf0d2e3df42afab81cd69eb70303515c9923e9513'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +configopts = "-DUSE_GMP=ON " + +sanity_check_paths = { + 'files': [ + 'bin/bliss', + 'lib/libbliss.%s' % SHLIB_EXT, + ], + 'dirs': [ + 'include/%(name)s', + ], +} + +sanity_check_commands = ["bliss -help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/b/bliss/bliss-0.77_install_fix.patch b/easybuild/easyconfigs/b/bliss/bliss-0.77_install_fix.patch new file mode 100644 index 00000000000..faea2ad4daf --- /dev/null +++ b/easybuild/easyconfigs/b/bliss/bliss-0.77_install_fix.patch @@ -0,0 +1,33 @@ +Adds install commands to CMakeLists.txt +Source: https://gitlab.archlinux.org/archlinux/packaging/packages/bliss/-/blob/0.77-3/make-install.patch +diff -u CMakeLists.txt.orig CMakeLists.txt +--- CMakeLists.txt.orig 2021-02-18 11:59:34.000000000 +0100 ++++ CMakeLists.txt 2024-08-15 15:04:21.293765655 +0200 +@@ -62,3 +62,27 @@ + target_link_libraries(bliss-executable ${GMP_LIBRARIES}) + endif(USE_GMP) + set_target_properties(bliss-executable PROPERTIES OUTPUT_NAME bliss) ++ ++include(GNUInstallDirs) ++ ++set( ++ BLISS_HEADERS ++ src/bliss_C.h ++ src/uintseqhash.hh ++ src/abstractgraph.hh ++ src/stats.hh ++ src/digraph.hh ++ src/defs.hh ++ src/heap.hh ++ src/graph.hh ++ src/partition.hh ++ src/kqueue.hh ++ src/utils.hh ++ src/orbit.hh ++ src/timer.hh ++ src/bignum.hh ++) ++ ++install(TARGETS bliss-executable RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) ++install(TARGETS bliss LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++install(FILES ${BLISS_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/bliss) 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..fadc3d201b6 --- /dev/null +++ b/easybuild/easyconfigs/b/bokeh/bokeh-3.6.0-gfbf-2024a.eb @@ -0,0 +1,49 @@ +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'), +] + +use_pip = True + +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"] + +sanity_pip_check = True + +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..4f327430573 --- /dev/null +++ b/easybuild/easyconfigs/b/boto3/boto3-1.35.36-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +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'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/byacc/byacc-2.0.20240109-GCCcore-13.3.0.eb b/easybuild/easyconfigs/b/byacc/byacc-2.0.20240109-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fa57e4306e6 --- /dev/null +++ b/easybuild/easyconfigs/b/byacc/byacc-2.0.20240109-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'byacc' +version = '2.0.20240109' + +homepage = 'http://invisible-island.net/byacc/byacc.html' +description = """Berkeley Yacc (byacc) is generally conceded to be the best yacc variant available. + In contrast to bison, it is written to avoid dependencies upon a particular compiler. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://invisible-island.net/archives/byacc/'] +sources = ['byacc-%s.tgz' % version.split('.')[2]] +checksums = ['f2897779017189f1a94757705ef6f6e15dc9208ef079eea7f28abec577e08446'] + +builddependencies = [('binutils', '2.42')] + +sanity_check_paths = { + 'files': ["bin/yacc"], + 'dirs': [] +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb new file mode 100644 index 00000000000..af659719245 --- /dev/null +++ b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-foss-2023a.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'CAMPARI' +version = '4.0' +_date = '12202020' + +homepage = 'http://campari.sourceforge.net/V4/index.html' +description = """ +CAMPARI is a joint package for performing and analyzing molecular simulations, in particular of systems of biological +relevance. It focuses on a wide availability of algorithms for (advanced) sampling and is capable of combining Monte +Carlo and molecular dynamics in seamless fashion.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['campari_v%s_%s.zip' % (version.split('.')[0], _date)] +checksums = ['bc627fb286b5461a5c68aa3e1a551ecd81016495163685800163c734f7c4f1bd'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('netCDF-Fortran', '4.6.1'), + ('libtirpc', '1.3.3'), +] + +start_dir = 'source' + +# remove hardcoded paths in configure script +preconfigopts = 'sed -i "s|/usr/share|$EBROOTAUTOMAKE/share|" configure &&' +# ignore default compiler settings and use EB build environment +local_fcflags = '$FCFLAGS -fallow-argument-mismatch $CPPFLAGS' +configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="%s" ' % local_fcflags +configopts += '--enable-mpi=auto ' +configopts += 'LIBS="$LIBS $LIBFFT $LIBBLAS -ltirpc"' + +buildopts = 'all' + +maxparallel = 10 + +postinstallcmds = ['cp -a %(builddir)s/campari/{data,doc,examples,params,tools,LICENSE} %(installdir)s/'] + +_binaries = ['campari', 'campari_mpi', 'campari_mpi_threads', 'campari_threads', 'camp_ncminer', 'camp_ncminer_threads'] +_libraries = ['lcampari.a', 'lcampari_mpi.a', 'lcampari_mpi_threads.a', 'lcampari_threads.a', 'libxdrf.a'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries] + ['lib/%s' % x for x in _libraries], + 'dirs': [], +} + +sanity_check_commands = ['campari -h | grep "USAGE: CAMPARI"'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb index 203b4e4cd9f..743bf47a462 100644 --- a/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb +++ b/easybuild/easyconfigs/c/CAMPARI/CAMPARI-4.0-intel-2023a.eb @@ -30,9 +30,10 @@ start_dir = 'source' # remove hardcoded paths in configure script preconfigopts = 'sed -i "s|/usr/share|$EBROOTAUTOMAKE/share|" configure &&' # ignore default compiler settings and use EB build environment -configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="$FCFLAGS" ' +local_fcflags = '$FCFLAGS -fallow-argument-mismatch $CPPFLAGS' +configopts = '--enable-compiler=ignore --with-trailing-user-fcflags="%s" ' % local_fcflags configopts += '--enable-mpi=auto ' -configopts += 'LIBS="$LIBS $LIBFFT -ltirpc"' +configopts += 'LIBS="$LIBS $LIBFFT $LIBBLAS -ltirpc"' buildopts = 'all' 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/CD-HIT/CD-HIT-4.8.1-GCC-12.3.0.eb b/easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..bd59609605c --- /dev/null +++ b/easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-12.3.0.eb @@ -0,0 +1,41 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# changed toolchain and Perl version +# Updated by: Thomas Eylenbosch(Gluo N.V.), Pavel Tománek (Inuits) + +easyblock = 'MakeCp' + +name = 'CD-HIT' +version = '4.8.1' + +homepage = 'http://weizhongli-lab.org/cd-hit/' +description = """ CD-HIT is a very widely used program for clustering and + comparing protein or nucleotide sequences.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/weizhongli/cdhit/releases/download/V%(version)s/'] +sources = ['%(namelower)s-v%(version)s-2019-0228.tar.gz'] +checksums = ['26172dba3040d1ae5c73ff0ac6c3be8c8e60cc49fc7379e434cdf9cb1e7415de'] + +dependencies = [ + ('Perl', '5.36.1'), + ('zlib', '1.2.13'), +] + +buildopts = ' CC="$CXX" CCFLAGS="$CPPFLAGS $CXXFLAGS"' + +local_list_of_executables = ['cd-hit', 'cd-hit-est', 'cd-hit-2d', 'cd-hit-est-2d', 'cd-hit-div', 'cd-hit-454'] + +files_to_copy = [(local_list_of_executables, 'bin'), (['*.pl'], 'bin'), 'README', 'doc', 'license.txt'] + +fix_perl_shebang_for = ['bin/*.pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_list_of_executables], + 'dirs': [], +} + +sanity_check_commands = ["cd-hit -h | grep 'CD-HIT version %(version)s'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-13.2.0.eb b/easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-13.2.0.eb new file mode 100644 index 00000000000..c1a0cf57158 --- /dev/null +++ b/easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-13.2.0.eb @@ -0,0 +1,41 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# changed toolchain and Perl version +# Updated by: Thomas Eylenbosch(Gluo N.V.), Pavel Tománek (Inuits) +# Update: Petr Král (INUITS) +easyblock = 'MakeCp' + +name = 'CD-HIT' +version = '4.8.1' + +homepage = 'http://weizhongli-lab.org/cd-hit/' +description = """ CD-HIT is a very widely used program for clustering and + comparing protein or nucleotide sequences.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/weizhongli/cdhit/releases/download/V%(version)s/'] +sources = ['%(namelower)s-v%(version)s-2019-0228.tar.gz'] +checksums = ['26172dba3040d1ae5c73ff0ac6c3be8c8e60cc49fc7379e434cdf9cb1e7415de'] + +dependencies = [ + ('Perl', '5.38.0'), + ('zlib', '1.2.13'), +] + +buildopts = ' CC="$CXX" CCFLAGS="$CPPFLAGS $CXXFLAGS"' + +local_list_of_executables = ['cd-hit', 'cd-hit-est', 'cd-hit-2d', 'cd-hit-est-2d', 'cd-hit-div', 'cd-hit-454'] + +files_to_copy = [(local_list_of_executables, 'bin'), (['*.pl'], 'bin'), 'README', 'doc', 'license.txt'] + +fix_perl_shebang_for = ['bin/*.pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_list_of_executables], + 'dirs': [], +} + +sanity_check_commands = ["cd-hit -h | grep 'CD-HIT version %(version)s'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CDBtools/CDBtools-0.99-GCC-12.3.0.eb b/easybuild/easyconfigs/c/CDBtools/CDBtools-0.99-GCC-12.3.0.eb new file mode 100644 index 00000000000..8266bd8155c --- /dev/null +++ b/easybuild/easyconfigs/c/CDBtools/CDBtools-0.99-GCC-12.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'MakeCp' + +name = 'CDBtools' +version = '0.99' + +homepage = 'http://compbio.dfci.harvard.edu/tgi' +description = "CDB (Constant DataBase) indexing and retrieval tools for FASTA files" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['ftp://occams.dfci.harvard.edu/pub/bio/tgi/software/cdbfasta'] +sources = [{'download_filename': 'cdbfasta.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['68767e8b2fb9de5a6d68ee16df73293f65e02f05cf2f747a9dd6b8854766722c'] + +buildopts = 'CC="$CXX" DBGFLAGS="$CXXFLAGS"' + +files_to_copy = [(['cdbfasta', 'cdbyank'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/cdbfasta', 'bin/cdbyank'], + 'dirs': [], +} + +sanity_check_commands = [ + "cdbfasta -v", + "cdbyank -v", +] + +moduleclass = 'bio' 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..6a41b512096 --- /dev/null +++ b/easybuild/easyconfigs/c/CIRCE/CIRCE-0.3.4-foss-2023a.eb @@ -0,0 +1,55 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +# 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/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb b/easybuild/easyconfigs/c/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..4bf02eab9a1 --- /dev/null +++ b/easybuild/easyconfigs/c/CLHEP/CLHEP-2.4.7.1-GCC-12.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'CLHEP' +version = '2.4.7.1' + +homepage = 'https://proj-clhep.web.cern.ch/proj-clhep/' +description = """The CLHEP project is intended to be a set of HEP-specific foundation and + utility classes such as random generators, physics vectors, geometry and linear algebra. + CLHEP is structured in a set of packages independent of any external package.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://proj-clhep.web.cern.ch/proj-clhep/dist1/'] +sources = [SOURCELOWER_TGZ] +checksums = ['1c8304a7772ac6b99195f1300378c6e3ddf4ad07c85d64a04505652abb8a55f9'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +sanity_check_paths = { + 'files': ['bin/clhep-config', 'lib/libCLHEP.a', 'lib/libCLHEP.%s' % SHLIB_EXT], + 'dirs': ['include/CLHEP'], +} + +sanity_check_commands = ["clhep-config --help"] + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb b/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb new file mode 100644 index 00000000000..3b42e01a2be --- /dev/null +++ b/easybuild/easyconfigs/c/CLUMPP/CLUMPP-1.1.2-Linux64.eb @@ -0,0 +1,38 @@ +easyblock = 'Tarball' + +name = 'CLUMPP' +version = '1.1.2' +versionsuffix = '-Linux64' + +homepage = 'https://rosenberglab.stanford.edu/clumpp.html' +description = """ +CLUMPP is a program that deals with label switching and multimodality problems +in population-genetic cluster analyses.""" + +toolchain = SYSTEM + +source_urls = ['https://rosenberglab.stanford.edu/software/'] +sources = ['%(name)s_Linux64.%(version)s.tar.gz'] +checksums = ['58cf3fe9e37f890621a76a244362256ffe4dde5e409346ae811d56af26cfe724'] + +postinstallcmds = [ + 'cd %(installdir)s && mkdir bin && mv CLUMPP bin/' +] + +sanity_check_paths = { + 'files': ['bin/CLUMPP'], + 'dirs': [], +} + +_clumpp_test_cmd = [ + "tmpdir=$(mktemp -d)", + "cp %(installdir)s/{paramfile,arabid.popfile,arabid.permutationfile} $tmpdir", + "cd $tmpdir", + "CLUMPP", +] + +sanity_check_commands = [ + " && ".join(_clumpp_test_cmd), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/COLMAP/COLMAP-3.8-foss-2022b.eb b/easybuild/easyconfigs/c/COLMAP/COLMAP-3.8-foss-2022b.eb new file mode 100644 index 00000000000..1da3b634c94 --- /dev/null +++ b/easybuild/easyconfigs/c/COLMAP/COLMAP-3.8-foss-2022b.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeNinja' + +name = 'COLMAP' +version = '3.8' + +homepage = 'https://colmap.github.io' +description = """COLMAP is a general-purpose Structure-from-Motion (SfM) and Multi-View Stereo (MVS) pipeline +with a graphical and command-line interface""" + +source_urls = ['https://github.com/colmap/colmap/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['02288f8f61692fe38049d65608ed832b31246e7792692376afb712fa4cef8775'] + +toolchain = {'name': 'foss', 'version': '2022b'} + +builddependencies = [ + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), + ('Eigen', '3.4.0'), + ('googletest', '1.12.1'), +] + +dependencies = [ + ('Boost', '1.81.0'), + ('Qt5', '5.15.7'), + ('FLANN', '1.9.2'), + ('FreeImage', '3.18.0'), + ('METIS', '5.1.0'), + ('glog', '0.6.0'), + ('SQLite', '3.39.4'), + ('glew', '2.2.0', '-egl'), + ('CGAL', '5.5.2'), + ('Ceres-Solver', '2.2.0'), +] + +configopts = "-DCMAKE_CXX_STANDARD=17" + +sanity_check_paths = { + 'files': ['bin/colmap', 'lib/colmap/libcolmap.a', 'lib/colmap/libpba.a', 'lib/colmap/libvlfeat.a'], + 'dirs': ['include/colmap'], +} + +sanity_check_commands = ["colmap -h"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550-foss-2023a.eb b/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550-foss-2023a.eb new file mode 100644 index 00000000000..c6f619d9d75 --- /dev/null +++ b/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = "ConfigureMake" + +name = 'CORSIKA' +version = '77550' + +homepage = "https://www.iap.kit.edu/corsika" +description = """CORSIKA (COsmic Ray SImulations for KAscade) is a program for detailed +simulation of extensive air showers initiated by high energy cosmic ray +particles. Protons, light nuclei up to iron, photons, and many other particles +may be treated as primaries.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +download_instructions = "Sources have to be requested to the developers" +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_fix_include.patch'] +checksums = [ + {'corsika-77550.tar.gz': 'fed74c144e22deb5a7c1d2dc1f04f0100eb2732cb48665a3da49ce471a3775ee'}, + {'CORSIKA-77550_fix_include.patch': 'e858fc4c1fa33d31d050b2fca50e130c23b2d3e4b81b851af34dc3f39e9c709e'}, +] + +dependencies = [ + ("ROOT", "6.30.06"), +] + +# custom coconut script does not recognize -j +parallel = False + +# execute ./coconut manually with your own options and extract configure command from top of config.log +_mpi_opts = "--enable-PARALLEL --with-mpirunner-lib=src/parallel --enable-PARALLELIB " +configopts = "CORDETECTOR=HORIZONTAL CORTIMELIB=TIMEAUTO CORHEMODEL=QGSJETII CORLEMODEL=URQMD " +configopts += "--enable-UPWARD --enable-SLANT --enable-THIN --enable-COREAS " +configopts += _mpi_opts + +build_cmd = "./coconut" +buildopts = "--batch " + _mpi_opts + +install_cmd = ' && '.join([ + 'mkdir -p %(installdir)s/bin', + 'cp %(builddir)s/%(namelower)s-%(version)s/run/* %(installdir)s/bin/', +]) + +sanity_check_paths = { + 'files': ['bin/mpi_corsika77550Linux_QGSII_urqmd_thin_coreas_parallel_runner'], + 'dirs': [], +} + +moduleclass = "phys" diff --git a/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550_fix_include.patch b/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550_fix_include.patch new file mode 100644 index 00000000000..e7bc3863fae --- /dev/null +++ b/easybuild/easyconfigs/c/CORSIKA/CORSIKA-77550_fix_include.patch @@ -0,0 +1,22 @@ +Move include out of function to avoid error: +/usr/include/sys/stat.h:453:1: error: nested function ‘stat’ declared ‘extern’ +Author: Samuel Moors (Vrije Universiteit Brussel) +diff -Nur corsika-77550.orig/src/parallel/mpi_runner.c corsika-77550/src/parallel/mpi_runner.c +--- corsika-77550.orig/src/parallel/mpi_runner.c 2024-04-18 18:30:39.000000000 +0200 ++++ corsika-77550/src/parallel/mpi_runner.c 2024-08-09 16:15:39.969688000 +0200 +@@ -99,6 +99,7 @@ + #include + #include + #include "config.h" ++#include + + /////////////////////initializing parameters/////////////////// + //the number of data type block in the MPI message +@@ -1023,7 +1024,6 @@ + strcpy(str2, strtmp); + } + strcpy(statdir,str2); +- #include + struct stat sb; + if (stat(statdir, &sb) == 0 && S_ISDIR(sb.st_mode)) + { 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..06b34618eb5 --- /dev/null +++ b/easybuild/easyconfigs/c/CPPE/CPPE-0.3.1-GCC-12.3.0.eb @@ -0,0 +1,49 @@ +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], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} + +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'], +} + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb similarity index 59% rename from easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb rename to easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb index 7649571fc62..87ae95876bf 100644 --- a/easybuild/easyconfigs/c/CREST/CREST-20240319-gfbf-2023a.eb +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-gfbf-2023b.eb @@ -5,8 +5,7 @@ easyblock = 'CMakeMake' name = 'CREST' -version = '20240319' -_commit = '2719412edf8bb606cebdd4cd6bbb4cdbd249e1e5' +version = '2.12' homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' description = """CREST is an utility/driver program for the xtb program. Originally it was designed @@ -16,23 +15,24 @@ description = """CREST is an utility/driver program for the xtb program. Origina program) and tool for the creation and analysation of structure ensembles. """ -toolchain = {'name': 'gfbf', 'version': '2023a'} -toolchainopts = {'opt': True, 'optarch': True, 'extra_fflags': '-ffree-line-length-none'} - -separate_build_dir = False +toolchain = {'name': 'gfbf', 'version': '2023b'} github_account = 'grimme-lab' source_urls = [GITHUB_LOWER_SOURCE] -sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': SOURCE_TAR_GZ}] -checksums = ['770b7ca72bc47bc4e1ffd8ca56566df7b03f4d3b702b04ec6b83bad9a125884d'] +sources = ['v%(version)s.tar.gz'] +patches = ['CREST-2.12-longline.patch'] +checksums = [ + {'v2.12.tar.gz': '390f0ac0aedafbd6bb75974fcffefe7e0232ad6c4ea0ab4f1a77e656a3ce263d'}, + {'CREST-2.12-longline.patch': '596ca2bcce3bbdfe99a3849934f41b388fb763a4898240091593b9b6a454fea9'}, +] -builddependencies = [('CMake', '3.26.3')] +builddependencies = [('CMake', '3.27.6')] -dependencies = [('xtb', '6.6.1')] # required to run the program +dependencies = [('xtb', '6.7.1')] # required to run the program # Simple test command just to check if the program is working: -test_cmd = 'export PATH=%%(builddir)s/%%(namelower)s-%s:$PATH && ' % _commit -test_cmd += 'cd %%(builddir)s/%%(namelower)s-%s/examples/expl-0/ && ./run.sh ' % _commit +test_cmd = 'export PATH=%(builddir)s/easybuild_obj:$PATH && ' +test_cmd += 'cd %(builddir)s/%(namelower)s-%(version)s/examples/expl-0/ && ./run.sh ' sanity_check_paths = { 'files': ['bin/%s' % name.lower()], diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch b/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch new file mode 100644 index 00000000000..c3b84785f5f --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-longline.patch @@ -0,0 +1,16 @@ +Dealing with a long line, which gfortran does not like +Author: J. Sassmannshausen (Imperial College London/UK) +diff --git a/crest-2.12.orig/src/qcg/solvtool.f90 b/crest-2.12/src/qcg/solvtool.f90 +index cec514c..f38b576 100644 +--- a/crest-2.12.orig/src/qcg/solvtool.f90 ++++ b/crest-2.12/src/qcg/solvtool.f90 +@@ -3158,7 +3158,8 @@ subroutine check_prog_path_iff(env) + str=trim(str) + open(unit=27, file=str, iostat=ios) + read(27,'(a)',iostat=ios) path +- if(ios .ne. 0) error stop 'No xtb-IFF found. This is currently required for QCG and available at https:/github.com/grimme-lab/xtbiff/releases/tag/v1.1' ++ if(ios .ne. 0) error stop 'No xtb-IFF found. This is currently required for QCG and available at & ++ https:/github.com/grimme-lab/xtbiff/releases/tag/v1.1' + + end subroutine check_prog_path_iff + diff --git a/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb new file mode 100644 index 00000000000..38fc051e0fb --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'CMakeMake' + +name = 'CREST' +version = '3.0.2' + +homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' +description = """CREST is an utility/driver program for the xtb program. Originally it was designed + as conformer sampling program, hence the abbreviation Conformer–Rotamer Ensemble Sampling Tool, + but now offers also some utility functions for calculations with the GFNn–xTB methods. Generally + the program functions as an IO based OMP scheduler (i.e., calculations are performed by the xtb + program) and tool for the creation and analysation of structure ensembles. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'opt': True} + +sources = [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/crest-lab', + 'repo_name': 'crest', + 'tag': 'v%s' % version, + 'recursive': True, + }, +}] +checksums = [None] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('dftd4', '3.7.0'), + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), + ('xtb', '6.6.1'), +] + +runtest = "test" + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["crest -h", "crest --cite"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CREST/CREST-3.0.2-gfbf-2023b.eb b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-gfbf-2023b.eb new file mode 100644 index 00000000000..9b7dd90fcf7 --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-3.0.2-gfbf-2023b.eb @@ -0,0 +1,47 @@ +easyblock = 'CMakeMake' + +name = 'CREST' +version = '3.0.2' + +homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' +description = """CREST is an utility/driver program for the xtb program. Originally it was designed + as conformer sampling program, hence the abbreviation Conformer–Rotamer Ensemble Sampling Tool, + but now offers also some utility functions for calculations with the GFNn–xTB methods. Generally + the program functions as an IO based OMP scheduler (i.e., calculations are performed by the xtb + program) and tool for the creation and analysation of structure ensembles. +""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} +toolchainopts = {'opt': True} + +sources = [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/crest-lab', + 'repo_name': 'crest', + 'tag': 'v%s' % version, + 'recursive': True, + }, +}] +checksums = [None] + +builddependencies = [('CMake', '3.27.6')] + +dependencies = [ + ('dftd4', '3.7.0'), + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), + ('xtb', '6.7.1'), +] + +runtest = "test" + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["crest -h", "crest --cite"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CUDA-Python/CUDA-Python-12.1.0-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CUDA-Python/CUDA-Python-12.1.0-gfbf-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..f58021c3a9a --- /dev/null +++ b/easybuild/easyconfigs/c/CUDA-Python/CUDA-Python-12.1.0-gfbf-2023a-CUDA-12.1.1.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'CUDA-Python' +# Warning: major and minor versions of CUDA and CUDA-Python are tied +version = '12.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://nvidia.github.io/cuda-python/' +description = "Python bindings for CUDA" +github_account = 'NVIDIA' + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('CUDA', '%(version_major)s.%(version_minor)s.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True + +exts_list = [ + ('pyclibrary', '0.2.2', { + 'checksums': ['9902fffe361bb86f57ab62aa4195ec4dd382b63c5c6892be6d9784ec0a3575f7'], + }), + ('cuda-python', version, { + 'modulename': 'cuda', + 'source_urls': ['https://github.com/%(github_account)s/%(namelower)s/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(namelower)s-%(version)s.tar.gz'}], + 'checksums': ['6fdfacaabbd6bc7f5dddec3ecf6bb0968e4a6b5151896d6352703ff5e0fc4abb'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = ["python -c 'from cuda import cuda, nvrtc'"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/CUDA/CUDA-12.6.0.eb b/easybuild/easyconfigs/c/CUDA/CUDA-12.6.0.eb new file mode 100644 index 00000000000..24c7b5f5c90 --- /dev/null +++ b/easybuild/easyconfigs/c/CUDA/CUDA-12.6.0.eb @@ -0,0 +1,22 @@ +name = 'CUDA' +version = '12.6.0' +local_nv_version = '560.28.03' + +homepage = 'https://developer.nvidia.com/cuda-toolkit' +description = """CUDA (formerly Compute Unified Device Architecture) is a parallel + computing platform and programming model created by NVIDIA and implemented by the + graphics processing units (GPUs) that they produce. CUDA gives developers access + to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs.""" + +toolchain = SYSTEM + +source_urls = ['https://developer.download.nvidia.com/compute/cuda/%(version)s/local_installers/'] +sources = ['cuda_%%(version)s_%s_linux%%(cudaarch)s.run' % local_nv_version] +checksums = [{ + 'cuda_%%(version)s_%s_linux.run' % local_nv_version: + '31ab04394e69b14dd8656e2b44c2877db1a0e898dff8a7546a4c628438101b94', + 'cuda_%%(version)s_%s_linux_sbsa.run' % local_nv_version: + '398db7baca17d51ad5035c606714c96380c965fd1742478c743bc6bbb1d8f63c' +}] + +moduleclass = 'system' diff --git a/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-13.2.0.eb b/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..c1f83cad099 --- /dev/null +++ b/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-13.2.0.eb @@ -0,0 +1,22 @@ +easyblock = 'ConfigureMake' + +name = 'CUDD' +version = '3.0.0' + +homepage = 'https://github.com/ivmai/cudd' +description = """The CUDD package is a package written in C for the manipulation of + decision diagrams. It supports binary decision diagrams (BDDs), algebraic decision + diagrams (ADDs), and Zero-Suppressed BDDs (ZDDs).""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/ivmai/cudd/archive/refs/tags'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5fe145041c594689e6e7cf4cd623d5f2b7c36261708be8c9a72aed72cf67acce'] + +sanity_check_paths = { + 'files': ['include/cudd.h', 'lib/libcudd.a'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/CUTLASS/CUTLASS-3.4.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-3.4.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3322e6b4b56 --- /dev/null +++ b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-3.4.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'CUTLASS' +version = '3.4.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/NVIDIA/cutlass' +description = """CUTLASS is a collection of CUDA C++ template +abstractions for implementing high-performance matrix-matrix +multiplication (GEMM) and related computations at all levels and scales +within CUDA. It incorporates strategies for hierarchical decomposition +and data movement similar to those used to implement cuBLAS and cuDNN. +CUTLASS decomposes these "moving parts" into reusable, modular software +components abstracted by C++ template classes. Primitives for different +levels of a conceptual parallelization hierarchy can be specialized and +tuned via custom tiling sizes, data types, and other algorithmic policy. +The resulting flexibility simplifies their use as building blocks within +custom kernels and applications.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'NVIDIA' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['49f4b854acc2a520126ceefe4f701cfe8c2b039045873e311b1f10a8ca5d5de1'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Python', '3.11.3'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), +] + +_copts = [ + '-DCUTLASS_NVCC_ARCHS="%(cuda_cc_cmake)s"', + '-DCUTLASS_ENABLE_CUBLAS=1', + '-DCUTLASS_ENABLE_CUDNN=1', +] +configopts = ' '.join(_copts) + +sanity_check_paths = { + 'files': ['include/cutlass/cutlass.h', 'lib/libcutlass.%s' % SHLIB_EXT], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb b/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb new file mode 100644 index 00000000000..d6793ad49bb --- /dev/null +++ b/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonPackage' + +name = 'CVXOPT' +version = '1.3.2' + +homepage = 'https://cvxopt.org' +description = """CVXOPT is a free software package for convex optimization based on the Python programming language. + Its main purpose is to make the development of software for convex optimization applications straightforward by + building on Python's extensive standard library and on the strengths of Python as a high-level programming language. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] + +patches = ['CVXOPT-1.3.1_fix-setup-py.patch'] + +checksums = [ + '3461fa42c1b2240ba4da1d985ca73503914157fc4c77417327ed6d7d85acdbe6', # cvxopt-1.3.2.tar.gz + '350904c0427d4652fc73b95b7e0d78a17c917cb94ed6c356dbbbfb07f2173849', # CVXOPT-1.3.1_fix-setup-py.patch +] + +dependencies = [ + ('Python', '3.11.3'), + ('SuiteSparse', '7.1.0'), + ('GSL', '2.7'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +preinstallopts = " ".join([ + 'CVXOPT_BUILD_FFTW=1', + 'CVXOPT_BUILD_GSL=1', + 'CVXOPT_BLAS_EXTRA_LINK_ARGS="$LIBBLAS"', + 'CVXOPT_LAPACK_EXTRA_LINK_ARGS="$LIBLAPACK"', + 'CVXOPT_FFTW_EXTRA_LINK_ARGS="$LIBFFT"', + 'CVXOPT_SUITESPARSE_LIB_DIR=$EBROOTSUITESPARSE/lib', + 'CVXOPT_SUITESPARSE_INC_DIR=$EBROOTSUITESPARSE/include', +]) + +installopts = ' --no-binary cvxopt' + +sanity_check_commands = ['cd %(builddir)s/%(namelower)s-%(version)s && python -m unittest discover -s tests'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/Cassiopeia/Cassiopeia-2.0.0-foss-2023a.eb b/easybuild/easyconfigs/c/Cassiopeia/Cassiopeia-2.0.0-foss-2023a.eb index 69b70834b9b..bdcee918b8b 100644 --- a/easybuild/easyconfigs/c/Cassiopeia/Cassiopeia-2.0.0-foss-2023a.eb +++ b/easybuild/easyconfigs/c/Cassiopeia/Cassiopeia-2.0.0-foss-2023a.eb @@ -11,6 +11,8 @@ toolchain = {'name': 'foss', 'version': '2023a'} builddependencies = [ ('CMake', '3.26.3'), ('poetry', '1.5.1'), + ('hatchling', '1.18.0'), + ('hatch-jupyter-builder', '0.9.1'), ] dependencies = [ @@ -27,7 +29,6 @@ dependencies = [ ('PyYAML', '6.0'), ('typing-extensions', '4.9.0'), ('tqdm', '4.66.1'), - ('hatchling', '1.18.0'), ('BeautifulSoup', '4.12.2'), ('statsmodels', '0.14.1'), ('Seaborn', '0.13.2'), @@ -39,12 +40,6 @@ use_pip = True sanity_pip_check = True exts_list = [ - ('hatch_jupyter_builder', '0.9.1', { - 'checksums': ['79278198d124c646b799c5e8dca8504aed9dcaaa88d071a09eb0b5c2009a58ad'], - }), - ('hatch_nodejs_version', '0.3.2', { - 'checksums': ['8a7828d817b71e50bbbbb01c9bfc0b329657b7900c56846489b9c958de15b54c'], - }), ('deprecation', '2.1.0', { 'checksums': ['72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff'], }), 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/CellRank/CellRank-2.0.2-foss-2022a.eb b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2022a.eb new file mode 100644 index 00000000000..1bd10280160 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2022a.eb @@ -0,0 +1,67 @@ +easyblock = 'PythonBundle' + +name = 'CellRank' +version = '2.0.2' + +homepage = 'https://cellrank.readthedocs.io/en/stable/' +description = """CellRank is a toolkit to uncover cellular dynamics based on + Markov state modeling of single-cell data. It contains two main modules: +kernels compute cell-cell transition probabilities and estimators generate +hypothesis based on these. """ + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('petsc4py', '3.17.4'), + ('slepc4py', '3.17.2'), + ('scikit-learn', '1.1.2'), + ('scVelo', '0.2.5'), + ('scanpy', '1.9.1'), # also provides anndata + ('numba', '0.56.4'), + ('networkx', '2.8.4'), + ('matplotlib', '3.5.2'), + ('Seaborn', '0.12.1'), + ('wrapt', '1.15.0'), +] + +use_pip = True + +_preinstallopts_pygam = """sed -i -e 's/numpy = .*/numpy = "^1.22.3"/g' """ +_preinstallopts_pygam += """-e 's/scipy = .*/scipy = "^1.8.1"/g' pyproject.toml && """ + +exts_list = [ + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + ('python-utils', '3.8.1', { + 'checksums': ['ec3a672465efb6c673845a43afcfafaa23d2594c24324a40ec18a0c59478dc0b'], + }), + ('progressbar2', '4.3.2', { + 'modulename': 'progressbar', + 'checksums': ['c37e6e1b4e57ab43f95c3d0e8d90061bec140e4fed56b8343183db3aa1e19a52'], + }), + ('pygam', '0.9.0', { + 'patches': ['pygam-0.9.0_fix-poetry.patch'], + 'checksums': [ + {'pygam-0.9.0.tar.gz': 'dba62285a275cdd15a6adf764f6717b3cd077502f01cf1bcee5ce7cbda221956'}, + {'pygam-0.9.0_fix-poetry.patch': '90460a5416167f146f5bf2c55e46c23d1e7a8f864652e24665354a1b39d7e3d0'}, + ], + 'preinstallopts': _preinstallopts_pygam, + }), + ('pygpcca', '1.0.4', { + 'checksums': ['5e3b49279abc62d25133811daeee050715f995ff02042c46e2a2034331d090d1'], + 'preinstallopts': "sed -i 's/jinja2==/jinja2>=/g' requirements.txt && ", + }), + ('cellrank', version, { + 'checksums': ['47c1d2e953ac91f572937d816142b4ac5f0c876174c60f857562de76a9f8aa61'], + # strip away too strict version requirements for pandas + anndata + 'preinstallopts': "sed -i -e 's/pandas>=1.5.0/pandas/g' -e 's/anndata>=0.9/anndata/g' pyproject.toml && ", + }), +] + +sanity_pip_check = True + +sanity_check_commands = ["python -c 'import cellrank as cr'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3ec16f6ab04 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRank/CellRank-2.0.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,78 @@ +easyblock = 'PythonBundle' + +name = 'CellRank' +version = '2.0.2' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://cellrank.readthedocs.io/en/stable/' +description = """CellRank is a toolkit to uncover cellular dynamics based on + Markov state modeling of single-cell data. It contains two main modules: +kernels compute cell-cell transition probabilities and estimators generate +hypothesis based on these. """ + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('poetry', '1.5.1')] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('anndata', '0.10.5.post1'), + ('matplotlib', '3.7.2'), + ('networkx', '3.1'), + ('numba', '0.58.1'), + ('scanpy', '1.9.8'), + ('scikit-learn', '1.3.1'), + ('scVelo', '0.3.1'), + ('Seaborn', '0.13.2'), + ('wrapt', '1.15.0'), + ('PyTorch', '2.1.2', versionsuffix), + ('wandb', '0.16.1'), + ('PyTorch-Lightning', '2.2.1', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('loguru', '0.7.2', { + 'checksums': ['e671a53522515f34fd406340ee968cb9ecafbc4b36c679da03c18fd8d0bd51ac'], + }), + ('nam', '0.0.3', { + 'checksums': ['48400d12b5f29fdd1671aebdf78d7f41bcac4f5c8ab7ed48770ee0c4fbc0673b'], + }), + ('python-utils', '3.8.2', { + 'checksums': ['c5d161e4ca58ce3f8c540f035e018850b261a41e7cb98f6ccf8e1deb7174a1f1'], + }), + ('progressbar2', '4.4.1', { + 'modulename': 'progressbar', + 'checksums': ['97d323ba03ad3d017a4d047fd0b2d3e733c5a360c07f87d269f96641c3de729f'], + }), + ('dunamai', '1.19.2', { + 'checksums': ['3be4049890763e19b8df1d52960dbea60b3e263eb0c96144a677ae0633734d2e'], + }), + ('poetry_dynamic_versioning', '1.2.0', { + 'checksums': ['1a7bbdba2530499e73dfc6ac0af19de29020ab4aaa3e507573877114e6b71ed6'], + }), + ('pygpcca', '1.0.4', { + 'preinstallopts': "sed -i 's/jinja2==3.0.3/jinja2>=3.0.3/' requirements.txt && ", + 'checksums': ['5e3b49279abc62d25133811daeee050715f995ff02042c46e2a2034331d090d1'], + }), + ('pygam', '0.9.1', { + 'checksums': ['a321a017bf485ed93fc6233e02621f8e7eab3d4f8971371c9ae9e079c55be01d'], + }), + ('joblib', '1.3.2', { + 'checksums': ['92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + (name, version, { + 'modulename': 'cellrank', + 'preinstallopts': "sed -i 's/matplotlib>=3.5.0,<3.7.2/matplotlib>=3.5.0/' pyproject.toml && ", + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['47c1d2e953ac91f572937d816142b4ac5f0c876174c60f857562de76a9f8aa61'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CellRank/pygam-0.9.0_fix-poetry.patch b/easybuild/easyconfigs/c/CellRank/pygam-0.9.0_fix-poetry.patch new file mode 100644 index 00000000000..cc463d4ea64 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRank/pygam-0.9.0_fix-poetry.patch @@ -0,0 +1,26 @@ +workaround for: + RuntimeError: The Poetry configuration is invalid: + - Additional properties are not allowed ('group' was unexpected) +author: Kenneth Hoste (HPC-UGent) +--- pygam-0.9.0/pyproject.toml.orig 2024-01-05 22:13:47.399107878 +0100 ++++ pygam-0.9.0/pyproject.toml 2024-01-05 22:13:52.323119792 +0100 +@@ -12,19 +12,6 @@ + scipy = "^1.10.1" + progressbar2 = "^4.2.0" + +-[tool.poetry.group.dev.dependencies] +-pytest = "^7.2.2" +-flake8 = "^6.0.0" +-codecov = "^2.1.12" +-pytest-cov = "^4.0.0" +-mock = "^5.0.1" +-nbsphinx = "^0.9.0" +-sphinx-rtd-theme = "^1.2.0" +-sphinxcontrib-napoleon = "^0.7" +-ipython = "^8.11.0" +-pandas = "^1.5.3" +-black = "^23.1.0" +- + [tool.black] + line-length = 88 + skip-string-normalization = true 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..67df72c221f --- /dev/null +++ b/easybuild/easyconfigs/c/Cellformer/Cellformer-20240917-foss-2023a-R-4.3.2.eb @@ -0,0 +1,186 @@ +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], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, + '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': '', + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +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/Ceres-Solver/Ceres-Solver-2.2.0-foss-2022b.eb b/easybuild/easyconfigs/c/Ceres-Solver/Ceres-Solver-2.2.0-foss-2022b.eb new file mode 100644 index 00000000000..e0adc9dd257 --- /dev/null +++ b/easybuild/easyconfigs/c/Ceres-Solver/Ceres-Solver-2.2.0-foss-2022b.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'Ceres-Solver' +version = '2.2.0' + +homepage = 'http://ceres-solver.org' +description = """Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization +problems""" + +source_urls = ['http://ceres-solver.org/'] +sources = ['ceres-solver-%(version)s.tar.gz'] +checksums = ['48b2302a7986ece172898477c3bcd6deb8fb5cf19b3327bc49969aad4cede82d'] + +toolchain = {'name': 'foss', 'version': '2022b'} + +builddependencies = [ + ('CMake', '3.24.3'), + ('Eigen', '3.4.0'), +] + +dependencies = [ + ('glog', '0.6.0'), + ('gflags', '2.2.2'), + ('SuiteSparse', '5.13.0', '-METIS-5.1.0'), +] + +sanity_check_paths = { + 'files': ['lib/libceres.a'], + 'dirs': ['include/ceres', 'lib/cmake/Ceres'], +} + +moduleclass = 'lib' 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/CheMPS2/CheMPS2-1.8.12-foss-2023a.eb b/easybuild/easyconfigs/c/CheMPS2/CheMPS2-1.8.12-foss-2023a.eb new file mode 100644 index 00000000000..fb8dea8412b --- /dev/null +++ b/easybuild/easyconfigs/c/CheMPS2/CheMPS2-1.8.12-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CheMPS2' +version = '1.8.12' + +homepage = 'https://github.com/SebWouters/CheMPS2' +description = """CheMPS2 is a scientific library which contains a spin-adapted implementation of the +density matrix renormalization group (DMRG) for ab initio quantum chemistry.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/SebWouters/CheMPS2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['eef1b92d74ac07fde58c043f64e8cac02b5400c209c44dcbb51641f86e0c7c83'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('HDF5', '1.14.0') +] + +pretestopts = 'export OMP_NUM_THREADS=1 && ' +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/chemps2', 'lib64/libchemps2.%s' % SHLIB_EXT, 'lib64/libchemps2.a'], + 'dirs': ['include/chemps2'] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/Check/Check-0.15.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/Check/Check-0.15.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1e0764bfb44 --- /dev/null +++ b/easybuild/easyconfigs/c/Check/Check-0.15.2-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'Check' +version = '0.15.2' + +homepage = 'https://libcheck.github.io/check/' +description = """ +Check is a unit testing framework for C. It features a simple interface for +defining unit tests, putting little in the way of the developer. Tests are +run in a separate address space, so both assertion failures and code errors +that cause segmentation faults or other signals can be caught. Test results +are reportable in the following: Subunit, TAP, XML, and a generic logging +format.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'libcheck' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['998d355294bb94072f40584272cf4424571c396c631620ce463f6ea97aa67d2e'] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = "--disable-build-docs" + +sanity_check_paths = { + 'files': ['bin/checkmk', 'lib/libcheck.a', 'lib/libcheck.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'] +} + +moduleclass = 'lib' 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/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb new file mode 100644 index 00000000000..947a6afdad5 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-17.0.0_20230515-GCCcore-12.3.0-CUDA-12.1.1.eb @@ -0,0 +1,61 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2015 Dmitri Gribenko, Ward Poelmans +# Authors:: Dmitri Gribenko +# Authors:: Ward Poelmans +# License:: GPLv2 or later, MIT, three-clause BSD. +# $Id$ +## + +name = 'Clang' +version = '17.0.0_20230515' +versionsuffix = '-CUDA-%(cudaver)s' +_commit = 'c5dede880d17' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [{ + 'source_urls': ["https://github.com/llvm/llvm-project/archive"], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': 'llvm-project-%s.tar.gz' % version, +}] +checksums = ['6f371f9ac208b8e9dc57fc117b1a9c8565d7ea2bbb49a2768cb9c3c0fee0291d'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Perl', '5.36.1'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.11.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.40'), + ('hwloc', '2.9.1'), + ('libxml2', '2.11.4'), + ('ncurses', '6.4'), + ('GMP', '6.2.1'), + ('Z3', '4.12.2'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True + +llvm_runtimes = ['libunwind', 'libcxx', 'libcxxabi'] +llvm_projects = ['polly', 'lld', 'lldb', 'clang-tools-extra', 'flang'] + +moduleclass = 'compiler' 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/Clustal-Omega/Clustal-Omega-1.2.4-GCC-12.3.0.eb b/easybuild/easyconfigs/c/Clustal-Omega/Clustal-Omega-1.2.4-GCC-12.3.0.eb new file mode 100644 index 00000000000..04f5b0991d1 --- /dev/null +++ b/easybuild/easyconfigs/c/Clustal-Omega/Clustal-Omega-1.2.4-GCC-12.3.0.eb @@ -0,0 +1,35 @@ +# 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 +# Modified by Adam Huffman +# Francis Crick Institute + +easyblock = 'ConfigureMake' + +name = 'Clustal-Omega' +version = '1.2.4' + +homepage = 'http://www.clustal.org/omega/' +description = """ Clustal Omega is a multiple sequence alignment + program for proteins. It produces biologically meaningful multiple + sequence alignments of divergent sequences. Evolutionary relationships + can be seen via viewing Cladograms or Phylograms """ + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'openmp': True} + +source_urls = [homepage] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8683d2286d663a46412c12a0c789e755e7fd77088fb3bc0342bb71667f05a3ee'] + +dependencies = [('argtable', '2.13')] + +sanity_check_paths = { + 'files': ['bin/clustalo'], + 'dirs': [], +} + +sanity_check_commands = ["clustalo --help"] + +moduleclass = 'bio' 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-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/ConcurrentVersionsSystem/ConcurrentVersionsSystem-1.11.23-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/ConcurrentVersionsSystem/ConcurrentVersionsSystem-1.11.23-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b43a426454f --- /dev/null +++ b/easybuild/easyconfigs/c/ConcurrentVersionsSystem/ConcurrentVersionsSystem-1.11.23-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +## + +easyblock = 'ConfigureMake' + +name = 'ConcurrentVersionsSystem' +version = '1.11.23' + +homepage = 'https://savannah.nongnu.org/projects/cvs' +description = """CVS is a version control system, an important component of +Source Configuration Management (SCM). +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [' https://ftp.gnu.org/non-gnu/cvs/source/stable/%(version)s/'] +sources = ['cvs-%(version)s.tar.bz2'] +patches = [ + 'CVS-1.11.23-zlib-1.patch', + 'CVS-1.11.23-getline.patch', +] +checksums = [ + '400f51b59d85116e79b844f2d5dbbad4759442a789b401a94aa5052c3d7a4aa9', # cvs-1.11.23.tar.bz2 + # CVS-1.11.23-zlib-1.patch + '3c0ee6509c4622778c093316437a5b047c51820e11cee3ed3a405c2a590a9ff4', + # CVS-1.11.23-getline.patch + '6a1aa65acfbb41b7639adc70248d908981f172c2529bb52d84359713f9541874', +] + +builddependencies = [ + ('binutils', '2.42') +] + +dependencies = [ + ('zlib', '1.3.1') +] + +sanity_check_paths = { + 'files': ['bin/cvs', 'bin/cvsbug', 'bin/rcs2log'], + 'dirs': [], +} + +moduleclass = 'devel' 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/CubeLib/CubeLib-4.8.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..6b2414be446 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-13.3.0.eb @@ -0,0 +1,52 @@ +# Copyright 2019-2024 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# Jan André Reuter +# 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': '13.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.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('zlib', '1.3.1'), +] + +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/CubeWriter/CubeWriter-4.8.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e030f21ba6c --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-13.3.0.eb @@ -0,0 +1,52 @@ +# Copyright:: Copyright 2019-2024 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# Jan André Reuter +# 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': '13.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.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), +] + +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/Cufflinks/Cufflinks-20190706-GCC-12.3.0.eb b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-20190706-GCC-12.3.0.eb new file mode 100644 index 00000000000..3f087e541cb --- /dev/null +++ b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-20190706-GCC-12.3.0.eb @@ -0,0 +1,49 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +name = 'Cufflinks' +version = '20190706' +local_commit = 'dc3b0cb' + +homepage = 'http://cole-trapnell-lab.github.io/%(namelower)s/' +description = "Transcript assembly, differential expression, and differential regulation for RNA-Seq" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +github_account = 'cole-trapnell-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +patches = ['Cufflinks-20190706_fix-automake.patch'] +checksums = [ + {'Cufflinks-20190706.tar.gz': '444c632083a473fe4fd99ff189cef5bbd95daee0912e8eefe79534bf225fbcb6'}, + {'Cufflinks-20190706_fix-automake.patch': '4eb2eb9e8e549eb6c2e17493801c36554dbfb009d9af86e28195e898a350b3a6'}, +] + +builddependencies = [ + ('Eigen', '3.4.0'), + ('Autotools', '20220317'), + ('SAMtools', '1.18'), + ('Boost', '1.75.0'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('HTSlib', '1.18'), +] + +preconfigopts = 'autoreconf -i && export LIBS="${LIBS} -lhts" && export CFLAGS="$CFLAGS -fcommon" && ' +configopts = '--with-boost=${EBROOTBOOST} --with-bam=${EBROOTSAMTOOLS}' + +buildopts = "BOOST_FILESYSTEM_LIB=$EBROOTBOOST/lib/libboost_filesystem.a " +buildopts += "BOOST_SERIALIZATION_LIB=$EBROOTBOOST/lib/libboost_serialization.a " +buildopts += "BOOST_SYSTEM_LIB=$EBROOTBOOST/lib/libboost_system.a " +buildopts += "BOOST_THREAD_LIB=$EBROOTBOOST/lib/libboost_thread.a " + +sanity_check_paths = { + 'files': ['bin/cufflinks'], + 'dirs': [] +} + +sanity_check_commands = ["cufflinks 2>&1 | grep 'Usage:.* cufflinks'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cufflinks/Cufflinks-20190706_fix-automake.patch b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-20190706_fix-automake.patch new file mode 100644 index 00000000000..332b4c724e4 --- /dev/null +++ b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-20190706_fix-automake.patch @@ -0,0 +1,14 @@ +fix for: +error: AM_INIT_AUTOMAKE expanded multiple times +author: Kenneth Hoste (HPC-UGent) +--- cufflinks-dc3b0cb72a4ac2b6bbc887099e71fc0c21e107b7/configure.ac.orig 2019-07-06 18:28:01.000000000 +0200 ++++ cufflinks-dc3b0cb72a4ac2b6bbc887099e71fc0c21e107b7/configure.ac 2024-09-27 13:39:13.512597490 +0200 +@@ -14,7 +14,7 @@ + AC_CONFIG_SRCDIR([config.h.in]) + AC_CONFIG_HEADERS([config.h]) + AC_CONFIG_AUX_DIR([build-aux]) +-AM_INIT_AUTOMAKE ++#AM_INIT_AUTOMAKE + + #AM_PATH_CPPUNIT(1.10.2) + diff --git a/easybuild/easyconfigs/c/Cython/Cython-3.0.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/Cython/Cython-3.0.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..c9e419d570a --- /dev/null +++ b/easybuild/easyconfigs/c/Cython/Cython-3.0.10-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonPackage' + +name = 'Cython' +version = '3.0.10' + +homepage = 'https://cython.org/' +description = """ +Cython is an optimising static compiler for both the Python programming +language and the extended Cython programming language (based on Pyrex). +""" +docurls = [ + 'https://cython.org/#documentation', + 'https://github.com/cython/cython', +] + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['dcc96739331fb854dcf503f94607576cfe8488066c61ca50dfd55836f132de99'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Python', '3.12.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/cygdb', 'bin/cython', 'bin/cythonize'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["cython --version"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5a6b4ee2256 --- /dev/null +++ b/easybuild/easyconfigs/c/ccache/ccache-4.10.2-GCCcore-13.3.0.eb @@ -0,0 +1,49 @@ +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL + +easyblock = 'CMakeNinja' + +name = 'ccache' +version = '4.10.2' + +homepage = 'https://ccache.dev/' +description = """Ccache (or “ccache”) is a compiler cache. It speeds up recompilation by +caching previous compilations and detecting when the same compilation is being done again""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_GZ] +checksums = ['108100960bb7e64573ea925af2ee7611701241abb36ce0aae3354528403a7d87'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('zstd', '1.5.6'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('hiredis', '1.2.0'), +] + +# use BFD linker rather than default ld.gold (required on CentOS 8) +preconfigopts = 'LDFLAGS="-fuse-ld=bfd"' +configopts = ' '.join([ + '-DENABLE_DOCUMENTATION=OFF', + '-DENABLE_IPO=ON', + # Link most libraries statically + '-DSTATIC_LINK=ON', + # Disable downloading dependencies + '-DZSTD_FROM_INTERNET=OFF -DHIREDIS_FROM_INTERNET=OFF', +]) + +sanity_check_paths = { + 'files': ['bin/ccache'], + 'dirs': [] +} +sanity_check_commands = ['ccache --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/cell2location/cell2location-0.05-alpha-fosscuda-2020b.eb b/easybuild/easyconfigs/c/cell2location/cell2location-0.05-alpha-fosscuda-2020b.eb index 9a0eeba1628..1556b0f9dad 100644 --- a/easybuild/easyconfigs/c/cell2location/cell2location-0.05-alpha-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/c/cell2location/cell2location-0.05-alpha-fosscuda-2020b.eb @@ -45,12 +45,6 @@ preinstallopts = "sed -i 's/theano/Theano-PyMC/g' setup.py && " use_pip = True -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} - exts_list = [ ('opt-einsum', '3.3.0', { 'source_tmpl': 'opt_einsum-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..b1788fb34f9 --- /dev/null +++ b/easybuild/easyconfigs/c/chopper/chopper-0.9.0-GCCcore-12.3.0.eb @@ -0,0 +1,315 @@ +easyblock = 'Cargo' + +name = 'chopper' +version = '0.9.0' + +homepage = 'https://github.com/wdecoster/chopper' +description = """Rust implementation of NanoFilt+NanoLyse, both +originally written in Python. This tool, intended for long read +sequencing such as PacBio or ONT, filters and trims a fastq file. +Filtering is done on average read quality and minimal or maximal read +length, and applying a headcrop (start of read) and tailcrop (end of +read) while printing the reads passing the filter.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'wdecoster' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'chopper-0.9.0_fix_incorrect_version.patch', +] +checksums = [ + {'v0.9.0.tar.gz': 'ae5b6f8f5ffde45582998b63cb45b4221b25ee37a9fde7a256e653c7f3f12075'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anstream-0.6.13.tar.gz': 'd96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'anyhow-1.0.82.tar.gz': 'f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.2.0.tar.gz': 'f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80'}, + {'bio-1.6.0.tar.gz': '7a72cb93babf08c85b375c2938ac678cc637936b3ebb72266d433cec2577f6c2'}, + {'bio-types-1.0.1.tar.gz': '9d45749b87f21808051025e9bf714d14ff4627f9d8ca967eade6946ea769aa4a'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'buffer-redux-1.0.1.tar.gz': '4c9f8ddd22e0a12391d1e7ada69ec3b0da1914f1cec39c5cf977143c5b2854f5'}, + {'bv-0.11.1.tar.gz': '8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'bytemuck-1.15.0.tar.gz': '5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15'}, + {'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.94.tar.gz': '17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-4.5.4.tar.gz': '90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0'}, + {'clap_builder-4.5.2.tar.gz': 'ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4'}, + {'clap_derive-4.5.4.tar.gz': '528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64'}, + {'clap_lex-0.7.0.tar.gz': '98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce'}, + {'cmake-0.1.50.tar.gz': 'a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'crc32fast-1.4.0.tar.gz': 'b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'editdistancek-1.0.2.tar.gz': '3e02df23d5b1c6f9e69fa603b890378123b93073df998a21e6e33b9db0a32613'}, + {'either-1.11.0.tar.gz': 'a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2'}, + {'enum-map-2.7.3.tar.gz': '6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9'}, + {'enum-map-derive-0.17.0.tar.gz': 'f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'feature-probe-0.1.1.tar.gz': '835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'flate2-1.0.28.tar.gz': '46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e'}, + {'fxhash-0.2.1.tar.gz': 'c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c'}, + {'getrandom-0.2.14.tar.gz': '94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c'}, + {'hashbrown-0.14.3.tar.gz': '290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexmap-2.2.6.tar.gz': '168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-num-0.1.3.tar.gz': 'a872a22f9e6f7521ca557660adb96dd830e54f0f490fa115bb55dd69d38b27e7'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libz-ng-sys-1.1.15.tar.gz': 'c6409efc61b12687963e602df8ecf70e8ddacf95bc6576bcf16e3ac6328083c5'}, + {'libz-sys-1.1.16.tar.gz': '5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.7.2.tar.gz': '6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d'}, + {'minimap2-0.1.17+minimap2.2.27.tar.gz': 'd920763956405bd0cbeead7e4415097d5780f8a8ce4e1dde0415d15736597dfd'}, + {'minimap2-sys-0.1.18+minimap2.2.27.tar.gz': '185d3f931e11c1df371455a01e93a0037041d011705b5ff1d283d619b234c47c'}, + {'miniz_oxide-0.7.2.tar.gz': '9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7'}, + {'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'}, + {'needletail-0.5.1.tar.gz': 'db05a5ab397f64070d8c998fa0fbb84e484b81f95752af317dac183a82d9295d'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'ordered-float-3.9.2.tar.gz': 'f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'petgraph-0.6.4.tar.gz': 'e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'proc-macro2-1.0.81.tar.gz': '3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba'}, + {'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_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'}, + {'regex-1.10.4.tar.gz': 'c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c'}, + {'regex-automata-0.4.6.tar.gz': '86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea'}, + {'regex-syntax-0.8.3.tar.gz': 'adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustversion-1.0.15.tar.gz': '80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'safe_arch-0.7.1.tar.gz': 'f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.198.tar.gz': '9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc'}, + {'serde_derive-1.0.198.tar.gz': 'e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9'}, + {'simba-0.6.0.tar.gz': 'f0b7840f121a46d63066ee7a99fc81dcabbc6105e437cae43528cea199b5a05f'}, + {'simdutf8-0.1.4.tar.gz': 'f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a'}, + {'statrs-0.16.0.tar.gz': '2d08e5e1748192713cc281da8b16924fb46be7b0c2431854eadc785823e5696e'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum-0.25.0.tar.gz': '290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.60.tar.gz': '909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3'}, + {'thiserror-1.0.58.tar.gz': '03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297'}, + {'thiserror-impl-1.0.58.tar.gz': 'c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7'}, + {'triple_accel-0.4.0.tar.gz': '22048bc95dfb2ffd05b1ff9a756290a009224b60b2f0e7525faeee7603851e63'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'vec_map-0.8.2.tar.gz': 'f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wide-0.7.16.tar.gz': '81a1851a719f11d1d2fea40e15c72f6c00de8c142d7ac47c1441cc7e4d0d5bc6'}, + {'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-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.52.5.tar.gz': '6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb'}, + {'windows_aarch64_gnullvm-0.52.5.tar.gz': '7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263'}, + {'windows_aarch64_msvc-0.52.5.tar.gz': '9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6'}, + {'windows_i686_gnu-0.52.5.tar.gz': '88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670'}, + {'windows_i686_gnullvm-0.52.5.tar.gz': '87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9'}, + {'windows_i686_msvc-0.52.5.tar.gz': 'db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf'}, + {'windows_x86_64_gnu-0.52.5.tar.gz': '4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9'}, + {'windows_x86_64_gnullvm-0.52.5.tar.gz': '852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596'}, + {'windows_x86_64_msvc-0.52.5.tar.gz': 'bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, + {'chopper-0.9.0_fix_incorrect_version.patch': 'b3f3dfa620fbda6d00a73eafc8508a73ac4d96f6edfb0e804b3ff0bc149e37cd'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), + ('Rust', '1.75.0'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), +] + +crates = [ + ('adler', '1.0.2'), + ('aho-corasick', '1.1.3'), + ('anstream', '0.6.13'), + ('anstyle', '1.0.6'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('anyhow', '1.0.82'), + ('approx', '0.5.1'), + ('atty', '0.2.14'), + ('autocfg', '1.2.0'), + ('bio', '1.6.0'), + ('bio-types', '1.0.1'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('buffer-redux', '1.0.1'), + ('bv', '0.11.1'), + ('bytecount', '0.6.8'), + ('bytemuck', '1.15.0'), + ('byteorder', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.94'), + ('cfg-if', '1.0.0'), + ('clap', '4.5.4'), + ('clap_builder', '4.5.2'), + ('clap_derive', '4.5.4'), + ('clap_lex', '0.7.0'), + ('cmake', '0.1.50'), + ('colorchoice', '1.0.0'), + ('crc32fast', '1.4.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('editdistancek', '1.0.2'), + ('either', '1.11.0'), + ('enum-map', '2.7.3'), + ('enum-map-derive', '0.17.0'), + ('equivalent', '1.0.1'), + ('feature-probe', '0.1.1'), + ('fixedbitset', '0.4.2'), + ('flate2', '1.0.28'), + ('fxhash', '0.2.1'), + ('getrandom', '0.2.14'), + ('hashbrown', '0.14.3'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('indexmap', '2.2.6'), + ('itertools', '0.11.0'), + ('itertools-num', '0.1.3'), + ('itoa', '1.0.11'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.153'), + ('libm', '0.2.8'), + ('libz-ng-sys', '1.1.15'), + ('libz-sys', '1.1.16'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.7.2'), + ('minimap2', '0.1.17+minimap2.2.27'), + ('minimap2-sys', '0.1.18+minimap2.2.27'), + ('miniz_oxide', '0.7.2'), + ('multimap', '0.9.1'), + ('nalgebra', '0.29.0'), + ('nalgebra-macros', '0.1.0'), + ('ndarray', '0.15.6'), + ('needletail', '0.5.1'), + ('newtype_derive', '0.1.6'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.18'), + ('ordered-float', '3.9.2'), + ('paste', '1.0.14'), + ('petgraph', '0.6.4'), + ('pkg-config', '0.3.30'), + ('ppv-lite86', '0.2.17'), + ('proc-macro2', '1.0.81'), + ('quote', '1.0.36'), + ('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'), + ('regex', '1.10.4'), + ('regex-automata', '0.4.6'), + ('regex-syntax', '0.8.3'), + ('rustc_version', '0.1.7'), + ('rustversion', '1.0.15'), + ('ryu', '1.0.17'), + ('safe_arch', '0.7.1'), + ('semver', '0.1.20'), + ('serde', '1.0.198'), + ('serde_derive', '1.0.198'), + ('simba', '0.6.0'), + ('simdutf8', '0.1.4'), + ('statrs', '0.16.0'), + ('strsim', '0.11.1'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.3'), + ('syn', '1.0.109'), + ('syn', '2.0.60'), + ('thiserror', '1.0.58'), + ('thiserror-impl', '1.0.58'), + ('triple_accel', '0.4.0'), + ('typenum', '1.17.0'), + ('unicode-ident', '1.0.12'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('vec_map', '0.8.2'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wide', '0.7.16'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.52.5'), + ('windows_aarch64_gnullvm', '0.52.5'), + ('windows_aarch64_msvc', '0.52.5'), + ('windows_i686_gnu', '0.52.5'), + ('windows_i686_gnullvm', '0.52.5'), + ('windows_i686_msvc', '0.52.5'), + ('windows_x86_64_gnu', '0.52.5'), + ('windows_x86_64_gnullvm', '0.52.5'), + ('windows_x86_64_msvc', '0.52.5'), + ('xz2', '0.1.7'), +] +sanity_check_paths = { + 'files': ['bin/chopper'], + 'dirs': [], +} + +sanity_check_commands = [ + 'chopper --help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch b/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch new file mode 100644 index 00000000000..57c15b94db4 --- /dev/null +++ b/easybuild/easyconfigs/c/chopper/chopper-0.9.0_fix_incorrect_version.patch @@ -0,0 +1,28 @@ +Fix incorrect version number in the 0.9.0 tar file. + +Åke Sandgren, 2024-09-16 +diff --git a/Cargo.lock b/Cargo.lock +index 3e8f1fe..53fa5da 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -236,7 +236,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + + [[package]] + name = "chopper" +-version = "0.8.0" ++version = "0.9.0" + dependencies = [ + "approx", + "atty", +diff --git a/Cargo.toml b/Cargo.toml +index f268dce..7f7277a 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -1,6 +1,6 @@ + [package] + name = "chopper" +-version = "0.8.0" ++version = "0.9.0" + authors = ["wdecoster "] + edition = "2021" + 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..76a00927a51 --- /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..81e043144e9 --- /dev/null +++ b/easybuild/easyconfigs/c/cmcrameri/cmcrameri-1.9-gfbf-2023a.eb @@ -0,0 +1,27 @@ +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'), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'checksums': ['56faf9b7f53eb03fed450137bec7dc25c1854929d7b841b9c75616fc2c357640'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/code-cli/code-cli-1.93.1-x64.eb b/easybuild/easyconfigs/c/code-cli/code-cli-1.93.1-x64.eb new file mode 100644 index 00000000000..48e53c03e62 --- /dev/null +++ b/easybuild/easyconfigs/c/code-cli/code-cli-1.93.1-x64.eb @@ -0,0 +1,35 @@ +easyblock = 'Tarball' + +name = 'code-cli' +version = '1.93.1' +versionsuffix = '-x64' + +homepage = 'https://code.visualstudio.com/' +description = ''' + Visual Studio Code is a lightweight but powerful source code editor + which runs on your desktop and is available for Windows, macOS and + Linux. It comes with built-in support for JavaScript, TypeScript and + Node.js and has a rich ecosystem of extensions for other languages + and runtimes (such as C++, C#, Java, Python, PHP, Go, .NET). Begin + your journey with VS Code with these introductory videos. +''' + +toolchain = {'name': 'system', 'version': 'system'} + +source_urls = ['https://update.code.visualstudio.com/%(version)s/cli-alpine-x64/stable#'] +sources = [{ + 'download_filename': 'vscode_cli_alpine_x64_cli.tar.gz', + 'filename': 'vscode-%(version)s%(versionsuffix)s.tar.gz', +}] +checksums = ['1fd27b23ca8c6f4b55922de3181b312a094d8aa18ad6e0a716b7b94224064288'] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['code'], + 'dirs': [] +} + +sanity_check_commands = ["code --help"] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/c/code-server/code-server-4.93.1.eb b/easybuild/easyconfigs/c/code-server/code-server-4.93.1.eb new file mode 100644 index 00000000000..3217ab284bf --- /dev/null +++ b/easybuild/easyconfigs/c/code-server/code-server-4.93.1.eb @@ -0,0 +1,20 @@ +name = 'code-server' +version = '4.93.1' + +homepage = 'https://github.com/coder/code-server' +description = """Run VS Code on any machine anywhere and access it in the browser.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/coder/code-server/releases/download/v%(version)s/'] +sources = ['code-server-%(version)s-linux-%(mapped_arch)s.tar.gz'] +checksums = [ + { + 'code-server-%(version)s-linux-amd64.tar.gz': + '8c001f865cf082e914375e8f28e9e15b25faa1f3de455ddc30158d54fc2326d3', + 'code-server-%(version)s-linux-arm64.tar.gz': + '1e29278529d0d8376d1344ed816b37f4e88a5ba16ce74cb1173fe437c8519852', + } +] + +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..f092666e99d --- /dev/null +++ b/easybuild/easyconfigs/c/cooler/cooler-0.10.2-foss-2023b.eb @@ -0,0 +1,46 @@ +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'), +] + +use_pip = True + +exts_list = [ + ('asciitree', '0.3.3', { + 'checksums': ['4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e'], + }), + ('toolz', '1.0.0', { + 'checksums': ['2c86e3d9a04798ac556793bced838816296a2f085017664e4995cb40a1047a02'], + }), + ('cytoolz', '1.0.0', { + 'checksums': ['eb453b30182152f9917a5189b7d99046b6ce90cdf8aeb0feff4b2683e600defd'], + }), + (name, version, { + 'checksums': ['3780a2e69b2ec89882dfc2775de5d9b54ccb79569dc5f042b4851599388112dc'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/coxeter/coxeter-20180226-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/coxeter/coxeter-20180226-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..247bb5ac24d --- /dev/null +++ b/easybuild/easyconfigs/c/coxeter/coxeter-20180226-GCCcore-13.2.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'coxeter' +version = '20180226' +local_commit = '7b5a1f0' + +homepage = 'https://github.com/tscrim/coxeter' +description = """A library for the study of combinatorial aspects of Coxeter group theory""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/tscrim/coxeter/archive/%s/' % local_commit] +sources = [SOURCE_TAR_GZ] +patches = [ + 'coxeter-20180226_makefile.patch', + ('coxeter-20180226_sage_interface.patch', 0), +] +checksums = [ + {'coxeter-20180226.tar.gz': '5e0668c40b29c03c438a6ebc0f49f13aaf155b4bcbff56303a753390e6fce3aa'}, + {'coxeter-20180226_makefile.patch': '229ed201e41bae0ae7b22aa21d5007127aeb52fd158543dd5fff2e89797e211f'}, + {'coxeter-20180226_sage_interface.patch': '18ba75e51a944ffccb7fa440b823f68a0aad9066e8edcdd2b52bac6b43404bd3'}, +] + +builddependencies = [('binutils', '2.40')] + +skipsteps = ['configure'] + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS"' +preinstallopts = 'mkdir -p "%(installdir)s/bin" "%(installdir)s/lib" && ' +installopts = 'SAGE_LOCAL="%(installdir)s"' + +sanity_check_paths = { + 'files': [ + 'bin/%(name)s', + 'lib/lib%%(name)s3.%s' % SHLIB_EXT, + ], + 'dirs': [ + 'include/%(name)s', + 'share/%(name)s', + ] +} + +sanity_check_commands = ['echo "qq" | coxeter'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/coxeter/coxeter-20180226_makefile.patch b/easybuild/easyconfigs/c/coxeter/coxeter-20180226_makefile.patch new file mode 100644 index 00000000000..d00d6860689 --- /dev/null +++ b/easybuild/easyconfigs/c/coxeter/coxeter-20180226_makefile.patch @@ -0,0 +1,101 @@ +Allows installation of files needed for Sagemath +Source: https://gitlab.archlinux.org/archlinux/packaging/packages/coxeter/-/blob/main/coxeter-makefile.patch +diff -u makefile.orig makefile +--- makefile.orig 2018-02-26 13:57:36.000000000 +0100 ++++ makefile 2024-08-16 14:15:51.889503570 +0200 +@@ -12,6 +12,7 @@ + gflags = -c $(includedirs) -g + + cflags = $(gflags) # the default setting ++cflags = -c $(includedirs) $(CPPFLAGS) $(CXXFLAGS) -fPIC + + ifdef optimize + NDEBUG = true +@@ -22,18 +23,74 @@ + cflags = $(pflags) + endif + +-cc = g++ ++EXENAME = coxeter ++LIBNAME = coxeter3 ++ifeq ($(UNAME),Darwin) ++ EXEEXT = ++ LIBPREFIX = lib ++ LIBEXT = .dylib ++ LIBDIR = lib ++ LINKFLAGS = -dynamiclib -Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,3.0,-current_version,3.0,-install_name,$(SAGE_LOCAL)/lib/$(LIBPREFIX)$(LIBNAME)$(LIBEXT) ++ LINKLIBS = ++else ++ifeq ($(UNAME),CYGWIN) ++ EXEEXT = .exe ++ LIBPREFIX = cyg ++ LIBEXT = .dll ++ LIBDIR = bin ++ IMPLIB = lib$(LIBNAME).dll.a ++ LINKFLAGS = -shared -Wl,--out-implib=$(IMPLIB) -Wl,--export-all-symbols ++ LINKLIBS = -lc ++else ++ EXEEXT = ++ LIBPREFIX = lib ++ LIBEXT = .so ++ LIBDIR = lib ++ LINKFLAGS = $(LDFLAGS) -shared -Wl,-soname,libcoxeter3.so ++ LINKLIBS = -lc ++endif ++endif ++LIBRARY = $(LIBPREFIX)$(LIBNAME)$(LIBEXT) + +-all: coxeter #clean ++all: coxeter executable + + coxeter: $(objects) +- $(cc) -o coxeter $(objects) ++ $(CXX) $(LINKFLAGS) -o $(LIBRARY) $(objects) $(LINKLIBS) ++ ++executable: $(objects) ++ $(CXX) $(LDFLAGS) -o $(EXENAME)$(EXEEXT) $(objects) ++ ++DATADIR="$$SAGE_LOCAL/share/coxeter/" ++INCLUDEDIR="$$SAGE_LOCAL/include/coxeter/" ++LIBRARYDIR="$$SAGE_LOCAL/$(LIBDIR)" ++ ++install: coxeter executable ++ cp $(EXENAME)$(EXEEXT) "$$SAGE_LOCAL/bin/" ++ cp $(LIBRARY) $(LIBRARYDIR) ++ if [ $(UNAME) = "CYGWIN" ]; then \ ++ cp $(IMPLIB) "$$SAGE_LOCAL/lib/"; \ ++ fi ++ ++ mkdir -p $(DATADIR) ++ cp -r coxeter_matrices headers messages $(DATADIR) ++ mkdir -p $(INCLUDEDIR) ++ cp -r *.h *.hpp $(INCLUDEDIR) ++ ++check: coxeter executable ++ $(EXENAME)$(EXEEXT) < test.input > test.output ++ ++ if ! diff test.output.expected test.output > /dev/null; then \ ++ echo >&2 "Error testing coxeter on test.input:"; \ ++ diff test.output.expected test.output; \ ++ exit 1; \ ++ fi ++ rm -f test.output + + clean: + rm -f $(objects) + + %.o:%.cpp +- $(cc) $(cflags) $*.cpp ++ $(CXX) $(cflags) $*.cpp + + # dependencies --- these were generated automatically by make depend on my + # system; they are explicitly copied for portability. Only local dependencies +@@ -43,7 +100,7 @@ + # contents of tmp in lieu of the dependencies listed here. + + %.d:%.cpp +- @$(cc) -MM $*.cpp ++ @$(CXX) -MM $*.cpp + depend: $(dependencies) + + affine.o: affine.cpp affine.h globals.h coxgroup.h coxtypes.h io.h list.h \ diff --git a/easybuild/easyconfigs/c/coxeter/coxeter-20180226_sage_interface.patch b/easybuild/easyconfigs/c/coxeter/coxeter-20180226_sage_interface.patch new file mode 100644 index 00000000000..2b4cd427ca9 --- /dev/null +++ b/easybuild/easyconfigs/c/coxeter/coxeter-20180226_sage_interface.patch @@ -0,0 +1,89 @@ +Adds sage interface. See https://github.com/tscrim/coxeter/pull/14 +Source: https://gitlab.archlinux.org/archlinux/packaging/packages/coxeter/-/blob/git.20180226-4/coxeter-sage.patch +diff -u /dev/null sage.h +--- /dev/null 2024-08-27 08:29:37.672016778 +0200 ++++ sage.h 2024-08-27 12:17:23.716096310 +0200 +@@ -0,0 +1,23 @@ ++/* ++ Coxeter version 3.0 Copyright (C) 2009 Mike Hansen ++ See file main.cpp for full copyright notice ++*/ ++ ++#ifndef SAGE_H /* guard against multiple inclusions */ ++#define SAGE_H ++ ++#include "globals.h" ++#include "coxgroup.h" ++#include "coxtypes.h" ++#include "schubert.h" ++#include "list.h" ++ ++namespace sage { ++ using namespace coxeter; ++ using namespace coxtypes; ++ using namespace list; ++ ++ void interval(List& result, CoxGroup& W, const CoxWord& g, const CoxWord& h); ++} ++ ++#endif +diff -u /dev/null sage.cpp +--- /dev/null 2024-08-27 08:29:37.672016778 +0200 ++++ sage.cpp 2024-08-27 12:17:23.716096310 +0200 +@@ -0,0 +1,56 @@ ++/* ++ Coxeter version 3.0 Copyright (C) 2009 Mike Hansen ++ See file main.cpp for full copyright notice ++*/ ++ ++#include "sage.h" ++ ++namespace sage { ++ ++ void interval(List& list, CoxGroup& W, const CoxWord& g, const CoxWord& h) ++ ++ /* ++ Returns a list of the elements in the Bruhat interval between g and h. ++ Note that this assumes that g and h are in order. ++ */ ++ { ++ if (not W.inOrder(g,h)) { ++ return; ++ } ++ ++ W.extendContext(h); ++ ++ CoxNbr x = W.contextNumber(g); ++ CoxNbr y = W.contextNumber(h); ++ ++ BitMap b(W.contextSize()); ++ W.extractClosure(b,y); ++ ++ BitMap::ReverseIterator b_rend = b.rend(); ++ List res(0); ++ ++ for (BitMap::ReverseIterator i = b.rbegin(); i != b_rend; ++i) ++ if (not W.inOrder(x,*i)) { ++ BitMap bi(W.contextSize()); ++ W.extractClosure(bi,*i); ++ CoxNbr z = *i; // andnot will invalidate iterator ++ b.andnot(bi); ++ b.setBit(z); // otherwise the decrement will not be correct ++ } else ++ res.append(*i); ++ ++ schubert::NFCompare nfc(W.schubert(),W.ordering()); ++ Permutation a(res.size()); ++ sortI(res,nfc,a); ++ ++ list.setSize(0); ++ for (size_t j = 0; j < res.size(); ++j) { ++ CoxWord w(0); ++ W.schubert().append(w, res[a[j]]); ++ list.append(w); ++ } ++ ++ return; ++ } ++ ++} diff --git a/easybuild/easyconfigs/c/cp2k-input-tools/cp2k-input-tools-0.9.1-foss-2023a.eb b/easybuild/easyconfigs/c/cp2k-input-tools/cp2k-input-tools-0.9.1-foss-2023a.eb new file mode 100644 index 00000000000..6e8baed0be5 --- /dev/null +++ b/easybuild/easyconfigs/c/cp2k-input-tools/cp2k-input-tools-0.9.1-foss-2023a.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'cp2k-input-tools' +version = '0.9.1' + +homepage = 'https://github.com/cp2k/cp2k-input-tools' +description = "Fully validating pure-python CP2K input file parsers including preprocessing capabilities" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('Pint', '0.23'), + ('pydantic', '2.5.3'), +] + +use_pip = True + +exts_list = [ + ('transitions', '0.9.2', { + 'checksums': ['2f8490dbdbd419366cef1516032ab06d07ccb5839ef54905e842a472692d4204'], + }), + (name, version, { + 'sources': ['cp2k_input_tools-%(version)s.tar.gz'], + 'checksums': ['bf7d229bbcfa41b1caaa32e7eb3c1c689d56bd1cbd4de674bd2fde8de4efb27c'], + }), +] + +sanity_check_paths = { + 'files': ['bin/fromcp2k'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "fromcp2k --help", +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb index bcd242d9d23..89c6bc40e3d 100644 --- a/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb @@ -21,7 +21,7 @@ dependencies = [ exts_list = [ ('cppyy-cling', '6.30.0', { 'modulename': False, - 'preinstallopts': "export STDCXX=14 && ", + 'preinstallopts': 'MAKE_NPROCS=%(parallel)s', 'checksums': ['5d9e0551a4cb618eb3392001b3dc2c6294f02257f02fcd4d868999ba04f92af1'], }), ('cppyy-backend', '1.15.2', { diff --git a/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb b/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb new file mode 100644 index 00000000000..49c61ff64fb --- /dev/null +++ b/easybuild/easyconfigs/c/cramino/cramino-0.14.5-GCC-12.3.0.eb @@ -0,0 +1,351 @@ +easyblock = 'Cargo' + +name = 'cramino' +version = '0.14.5' + +homepage = 'https://github.com/wdecoster/cramino' +description = """A tool for quick quality assessment of cram and bam files, intended for long read sequencing.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wdecoster/cramino/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.14.5.tar.gz': 'd3b31ab76808ca76171e2539cfe30e66fe24cbd4af4ff9a941c282a0bc438032'}, + {'ahash-0.8.9.tar.gz': 'd713b3834d76b85304d4d525563c1276e2e30dc97cc67bfb4585a4a29fc2c89f'}, + {'aho-corasick-1.1.2.tar.gz': 'b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0'}, + {'android-tzdata-0.1.1.tar.gz': 'e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0'}, + {'android_system_properties-0.1.5.tar.gz': '819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311'}, + {'anstream-0.6.12.tar.gz': '96b09b5178381e0874812a9b157f7fe84982617e48f71f4e3235482775e5b540'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'arrow-50.0.0.tar.gz': 'aa285343fba4d829d49985bdc541e3789cf6000ed0e84be7c039438df4a4e78c'}, + {'arrow-arith-50.0.0.tar.gz': '753abd0a5290c1bcade7c6623a556f7d1659c5f4148b140b5b63ce7bd1a45705'}, + {'arrow-array-50.0.0.tar.gz': 'd390feeb7f21b78ec997a4081a025baef1e2e0d6069e181939b61864c9779609'}, + {'arrow-buffer-50.0.0.tar.gz': '69615b061701bcdffbc62756bc7e85c827d5290b472b580c972ebbbf690f5aa4'}, + {'arrow-cast-50.0.0.tar.gz': 'e448e5dd2f4113bf5b74a1f26531708f5edcacc77335b7066f9398f4bcf4cdef'}, + {'arrow-csv-50.0.0.tar.gz': '46af72211f0712612f5b18325530b9ad1bfbdc87290d5fbfd32a7da128983781'}, + {'arrow-data-50.0.0.tar.gz': '67d644b91a162f3ad3135ce1184d0a31c28b816a581e08f29e8e9277a574c64e'}, + {'arrow-ipc-50.0.0.tar.gz': '03dea5e79b48de6c2e04f03f62b0afea7105be7b77d134f6c5414868feefb80d'}, + {'arrow-json-50.0.0.tar.gz': '8950719280397a47d37ac01492e3506a8a724b3fb81001900b866637a829ee0f'}, + {'arrow-ord-50.0.0.tar.gz': '1ed9630979034077982d8e74a942b7ac228f33dd93a93b615b4d02ad60c260be'}, + {'arrow-row-50.0.0.tar.gz': '007035e17ae09c4e8993e4cb8b5b96edf0afb927cd38e2dff27189b274d83dcf'}, + {'arrow-schema-50.0.0.tar.gz': '0ff3e9c01f7cd169379d269f926892d0e622a704960350d09d331be3ec9e0029'}, + {'arrow-select-50.0.0.tar.gz': '1ce20973c1912de6514348e064829e50947e35977bb9d7fb637dc99ea9ffd78c'}, + {'arrow-string-50.0.0.tar.gz': '00f3b37f2aeece31a2636d1b037dabb69ef590e03bdc7eb68519b51ec86932a7'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'base64-0.21.7.tar.gz': '9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567'}, + {'bio-types-1.0.1.tar.gz': '9d45749b87f21808051025e9bf714d14ff4627f9d8ca967eade6946ea769aa4a'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bumpalo-3.15.1.tar.gz': 'c764d619ca78fccbf3069b37bd7af92577f044bb15236036662d79b6559f25b7'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.5.0.tar.gz': 'a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.86.tar.gz': '7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'chrono-0.4.34.tar.gz': '5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b'}, + {'clap-4.5.1.tar.gz': 'c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da'}, + {'clap_builder-4.5.1.tar.gz': '9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb'}, + {'clap_derive-4.5.0.tar.gz': '307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47'}, + {'clap_lex-0.7.0.tar.gz': '98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce'}, + {'cmake-0.1.50.tar.gz': 'a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'const-random-0.1.17.tar.gz': '5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a'}, + {'const-random-macro-0.1.16.tar.gz': 'f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e'}, + {'core-foundation-sys-0.8.6.tar.gz': '06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'csv-1.3.0.tar.gz': 'ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe'}, + {'csv-core-0.1.11.tar.gz': '5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70'}, + {'ctor-0.2.6.tar.gz': '30d2b3721e861707777e3195b0158f950ae6dc4a27e4d02ff9f67e3eb3de199e'}, + {'curl-sys-0.4.72+curl-8.6.0.tar.gz': '29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'either-1.10.0.tar.gz': '11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a'}, + {'env_filter-0.1.0.tar.gz': 'a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea'}, + {'env_logger-0.11.2.tar.gz': '6c012a26a7f605efc424dd53697843a72be7dc86ad2d01f7814337794a12231d'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'flatbuffers-23.5.26.tar.gz': '4dac53e22462d78c16d64a1cd22371b54cc3fe94aa15e7886a2fa6e5d1ab8640'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'getrandom-0.2.12.tar.gz': '190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'half-2.3.1.tar.gz': 'bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872'}, + {'hashbrown-0.14.3.tar.gz': '290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hts-sys-2.1.1.tar.gz': 'deebfb779c734d542e7f14c298597914b9b5425e4089aef482eacb5cab941915'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.60.tar.gz': 'e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141'}, + {'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.2.3.tar.gz': '233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.10.tar.gz': 'b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c'}, + {'js-sys-0.3.68.tar.gz': '406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lexical-core-0.8.5.tar.gz': '2cde5de06e8d4c2faabc400238f9ae1c74d5412d03a7bd067645ccbc47070e46'}, + {'lexical-parse-float-0.8.5.tar.gz': '683b3a5ebd0130b8fb52ba0bdc718cc56815b6a097e28ae5a6997d0ad17dc05f'}, + {'lexical-parse-integer-0.8.6.tar.gz': '6d0994485ed0c312f6d965766754ea177d07f9c00c9b82a5ee62ed5b47945ee9'}, + {'lexical-util-0.8.5.tar.gz': '5255b9ff16ff898710eb9eb63cb39248ea8a5bb036bea8085b1a767ff6c4e3fc'}, + {'lexical-write-float-0.8.5.tar.gz': 'accabaa1c4581f05a3923d1b4cfd124c329352288b7b9da09e766b0668116862'}, + {'lexical-write-integer-0.8.5.tar.gz': 'e1b6f3d1f4422866b68192d62f77bc5c700bee84f3069f2469d7bc8c77852446'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'libz-sys-1.1.15.tar.gz': '037731f5d3aaa87a5675e895b63ddff1a87624bc29f77004ea829809654e48f6'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'log-0.4.20.tar.gz': 'b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'memchr-2.7.1.tar.gz': '523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-0.4.1.tar.gz': 'b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af'}, + {'num-bigint-0.4.4.tar.gz': '608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-iter-0.1.44.tar.gz': 'd869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'openssl-src-300.2.3+3.2.1.tar.gz': '5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843'}, + {'openssl-sys-0.9.100.tar.gz': 'ae94056a791d0e1217d18b6cbdccb02c61e3054fc69893607f4067e3bb0b1fd1'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'proc-macro2-1.0.78.tar.gz': 'e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.35.tar.gz': '291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef'}, + {'rayon-1.8.1.tar.gz': 'fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'regex-1.10.3.tar.gz': 'b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15'}, + {'regex-automata-0.4.5.tar.gz': '5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd'}, + {'regex-syntax-0.8.2.tar.gz': 'c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f'}, + {'rust-htslib-0.46.0.tar.gz': 'aec6f9ca4601beb4ae75ff8c99144dd15de5a873f6adf058da299962c760968e'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustc_version-0.4.0.tar.gz': 'bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366'}, + {'rustversion-1.0.14.tar.gz': '7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'semver-1.0.22.tar.gz': '92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca'}, + {'serde-1.0.197.tar.gz': '3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2'}, + {'serde_derive-1.0.197.tar.gz': '7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b'}, + {'serde_json-1.0.114.tar.gz': 'c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0'}, + {'static_assertions-1.1.0.tar.gz': 'a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f'}, + {'strsim-0.11.0.tar.gz': '5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01'}, + {'strum_macros-0.25.3.tar.gz': '23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.50.tar.gz': '74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb'}, + {'thiserror-1.0.57.tar.gz': '1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b'}, + {'thiserror-impl-1.0.57.tar.gz': 'a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81'}, + {'tiny-keccak-2.0.2.tar.gz': '2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'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'}, + {'unzip-n-0.1.2.tar.gz': 'c2e7e85a0596447f0f2ac090e16bc4c516c6fe91771fb0c0ccf7fa3dae896b9c'}, + {'url-2.5.0.tar.gz': '31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.91.tar.gz': 'c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f'}, + {'wasm-bindgen-backend-0.2.91.tar.gz': 'c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b'}, + {'wasm-bindgen-macro-0.2.91.tar.gz': 'b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed'}, + {'wasm-bindgen-macro-support-0.2.91.tar.gz': '642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66'}, + {'wasm-bindgen-shared-0.2.91.tar.gz': '4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838'}, + {'windows-core-0.52.0.tar.gz': '33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.52.0.tar.gz': '8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd'}, + {'windows_aarch64_gnullvm-0.52.0.tar.gz': 'cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea'}, + {'windows_aarch64_msvc-0.52.0.tar.gz': 'bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef'}, + {'windows_i686_gnu-0.52.0.tar.gz': 'a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313'}, + {'windows_i686_msvc-0.52.0.tar.gz': 'ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a'}, + {'windows_x86_64_gnu-0.52.0.tar.gz': '3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd'}, + {'windows_x86_64_gnullvm-0.52.0.tar.gz': '1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e'}, + {'windows_x86_64_msvc-0.52.0.tar.gz': 'dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04'}, + {'zerocopy-0.7.32.tar.gz': '74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be'}, + {'zerocopy-derive-0.7.32.tar.gz': '9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6'}, +] + +crates = [ + ('ahash', '0.8.9'), + ('aho-corasick', '1.1.2'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('anstream', '0.6.12'), + ('anstyle', '1.0.6'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('arrow', '50.0.0'), + ('arrow-arith', '50.0.0'), + ('arrow-array', '50.0.0'), + ('arrow-buffer', '50.0.0'), + ('arrow-cast', '50.0.0'), + ('arrow-csv', '50.0.0'), + ('arrow-data', '50.0.0'), + ('arrow-ipc', '50.0.0'), + ('arrow-json', '50.0.0'), + ('arrow-ord', '50.0.0'), + ('arrow-row', '50.0.0'), + ('arrow-schema', '50.0.0'), + ('arrow-select', '50.0.0'), + ('arrow-string', '50.0.0'), + ('autocfg', '1.1.0'), + ('base64', '0.21.7'), + ('bio-types', '1.0.1'), + ('bitflags', '1.3.2'), + ('bumpalo', '3.15.1'), + ('byteorder', '1.5.0'), + ('bytes', '1.5.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.86'), + ('cfg-if', '1.0.0'), + ('chrono', '0.4.34'), + ('clap', '4.5.1'), + ('clap_builder', '4.5.1'), + ('clap_derive', '4.5.0'), + ('clap_lex', '0.7.0'), + ('cmake', '0.1.50'), + ('colorchoice', '1.0.0'), + ('const-random', '0.1.17'), + ('const-random-macro', '0.1.16'), + ('core-foundation-sys', '0.8.6'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('crunchy', '0.2.2'), + ('csv', '1.3.0'), + ('csv-core', '0.1.11'), + ('ctor', '0.2.6'), + ('curl-sys', '0.4.72+curl-8.6.0'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('either', '1.10.0'), + ('env_filter', '0.1.0'), + ('env_logger', '0.11.2'), + ('equivalent', '1.0.1'), + ('flatbuffers', '23.5.26'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('getrandom', '0.2.12'), + ('glob', '0.3.1'), + ('half', '2.3.1'), + ('hashbrown', '0.14.3'), + ('heck', '0.4.1'), + ('hts-sys', '2.1.1'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.60'), + ('iana-time-zone-haiku', '0.1.2'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '2.2.3'), + ('itertools', '0.12.1'), + ('itoa', '1.0.10'), + ('js-sys', '0.3.68'), + ('lazy_static', '1.4.0'), + ('lexical-core', '0.8.5'), + ('lexical-parse-float', '0.8.5'), + ('lexical-parse-integer', '0.8.6'), + ('lexical-util', '0.8.5'), + ('lexical-write-float', '0.8.5'), + ('lexical-write-integer', '0.8.5'), + ('libc', '0.2.153'), + ('libm', '0.2.8'), + ('libz-sys', '1.1.15'), + ('linear-map', '1.2.0'), + ('log', '0.4.20'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.1'), + ('newtype_derive', '0.1.6'), + ('num', '0.4.1'), + ('num-bigint', '0.4.4'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-iter', '0.1.44'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.18'), + ('once_cell', '1.19.0'), + ('openssl-src', '300.2.3+3.2.1'), + ('openssl-sys', '0.9.100'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('proc-macro2', '1.0.78'), + ('quick-error', '1.2.3'), + ('quote', '1.0.35'), + ('rayon', '1.8.1'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.3'), + ('regex-automata', '0.4.5'), + ('regex-syntax', '0.8.2'), + ('rust-htslib', '0.46.0'), + ('rustc_version', '0.1.7'), + ('rustc_version', '0.4.0'), + ('rustversion', '1.0.14'), + ('ryu', '1.0.17'), + ('semver', '0.1.20'), + ('semver', '1.0.22'), + ('serde', '1.0.197'), + ('serde_derive', '1.0.197'), + ('serde_json', '1.0.114'), + ('static_assertions', '1.1.0'), + ('strsim', '0.11.0'), + ('strum_macros', '0.25.3'), + ('syn', '1.0.109'), + ('syn', '2.0.50'), + ('thiserror', '1.0.57'), + ('thiserror-impl', '1.0.57'), + ('tiny-keccak', '2.0.2'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unzip-n', '0.1.2'), + ('url', '2.5.0'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.91'), + ('wasm-bindgen-backend', '0.2.91'), + ('wasm-bindgen-macro', '0.2.91'), + ('wasm-bindgen-macro-support', '0.2.91'), + ('wasm-bindgen-shared', '0.2.91'), + ('windows-core', '0.52.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.52.0'), + ('windows_aarch64_gnullvm', '0.52.0'), + ('windows_aarch64_msvc', '0.52.0'), + ('windows_i686_gnu', '0.52.0'), + ('windows_i686_msvc', '0.52.0'), + ('windows_x86_64_gnu', '0.52.0'), + ('windows_x86_64_gnullvm', '0.52.0'), + ('windows_x86_64_msvc', '0.52.0'), + ('zerocopy', '0.7.32'), + ('zerocopy-derive', '0.7.32'), +] + +builddependencies = [ + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('OpenSSL', '1.1', '', SYSTEM), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s --help"] + +moduleclass = 'bio' 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/cuQuantum/cuQuantum-24.08.0.5-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/cuQuantum/cuQuantum-24.08.0.5-CUDA-12.1.1.eb new file mode 100644 index 00000000000..f2437f12613 --- /dev/null +++ b/easybuild/easyconfigs/c/cuQuantum/cuQuantum-24.08.0.5-CUDA-12.1.1.eb @@ -0,0 +1,27 @@ +easyblock = 'Tarball' + +name = 'cuQuantum' +local_shortver = '24.08.0' +version = local_shortver + '.5' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/cuquantum-sdk' +description = """NVIDIA cuQuantum is an SDK of libraries and tools for quantum computing workflows.""" + +toolchain = SYSTEM + +source_urls = ['https://developer.download.nvidia.com/compute/cuquantum/redist/cuquantum/linux-x86_64/'] +sources = ['cuquantum-linux-x86_64-%(version)s_cuda%(cudamajver)s-archive.tar.xz'] +checksums = ['485968734706eeffcd3adc3b2d2086e59be7ff3ddd907e96f1eb97335beb344a'] + +local_cudamajver = '12' +dependencies = [('CUDA', local_cudamajver + '.1.1')] + +sanity_check_paths = { + 'files': ['include/custatevec.h', 'include/cutensornet/types.h', + 'lib/libcutensornet.%s' % SHLIB_EXT, + 'lib/libcutensornet_static.a'], + 'dirs': ['distributed_interfaces'], +} + +moduleclass = 'lib' 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/c/cutadapt/cutadapt-4.9-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/cutadapt/cutadapt-4.9-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..1f54c552c2e --- /dev/null +++ b/easybuild/easyconfigs/c/cutadapt/cutadapt-4.9-GCCcore-12.3.0.eb @@ -0,0 +1,60 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics (SIB) +# Biozentrum - University of Basel +# Modified by: Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Modified by: Albert Bogdanowicz +# Institute of Biochemistry and Biophysics PAS +# Modified by: Jasper Grimm +# University of York + +easyblock = 'PythonBundle' + +name = 'cutadapt' +version = '4.9' + +homepage = 'https://opensource.scilifelab.se/projects/cutadapt/' +description = """Cutadapt finds and removes adapter sequences, primers, poly-A tails and + other types of unwanted sequence from your high-throughput sequencing reads.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('Cython', '3.0.8'), # required for dnaio +] + +dependencies = [ + ('pigz', '2.8'), + ('Python', '3.11.3'), + ('python-isal', '1.1.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + # note: newer xopen versions require newer python-isal + ('xopen', '1.7.0', { + 'checksums': ['901f9c8298e95ed74767a4bd76d9f4cf71d8de27b8cf296ac3e7bc1c11520d9f'], + }), + ('dnaio', '1.2.1', { + 'checksums': ['4786dc63614b9f3011463d9ea9d981723dd38d1091a415a557f71d8c74400f38'], + }), + (name, version, { + 'checksums': ['da3b45775b07334d2e2580a7b154d19ea7e872f0da813bb1ac2a4da712bfc223'], + }), +] + +sanity_check_paths = { + 'files': ['bin/cutadapt'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "cutadapt --help", + "cutadapt --version", +] + +moduleclass = 'bio' 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/DBus/DBus-1.15.8-GCCcore-13.3.0.eb b/easybuild/easyconfigs/d/DBus/DBus-1.15.8-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ca182becfcd --- /dev/null +++ b/easybuild/easyconfigs/d/DBus/DBus-1.15.8-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'DBus' +version = '1.15.8' + +homepage = 'https://dbus.freedesktop.org/' + +description = """ + D-Bus is a message bus system, a simple way for applications to talk + to one another. In addition to interprocess communication, D-Bus helps + coordinate process lifecycle; it makes it simple and reliable to code + a "single instance" application or daemon, and to launch applications + and daemons on demand when their services are needed. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://dbus.freedesktop.org/releases/dbus'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['84fc597e6ec82f05dc18a7d12c17046f95bad7be99fc03c15bc254c4701ed204'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('expat', '2.6.2'), +] + +configopts = '-DENABLE_SYSTEMD=OFF ' +# disable documentation +configopts += '-DDBUS_ENABLE_XML_DOCS=OFF -DDBUS_ENABLE_QTHELP_DOCS=OFF -DDBUS_ENABLE_DOXYGEN_DOCS=OFF ' + +sanity_check_paths = { + 'files': ['bin/dbus-%s' % x for x in + ['cleanup-sockets', 'daemon', 'launch', 'monitor', + 'run-session', 'send', 'uuidgen']] + + ['lib/libdbus-1.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/DETONATE/DETONATE-1.11-GCC-12.3.0.eb b/easybuild/easyconfigs/d/DETONATE/DETONATE-1.11-GCC-12.3.0.eb index c1457cc041c..24a8b13835c 100644 --- a/easybuild/easyconfigs/d/DETONATE/DETONATE-1.11-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/d/DETONATE/DETONATE-1.11-GCC-12.3.0.eb @@ -33,6 +33,7 @@ builddependencies = [ ] dependencies = [ + ('Perl', '5.36.1'), ('Boost', '1.82.0'), ('sparsehash', '2.0.4'), ('BamTools', '2.5.2'), @@ -45,16 +46,20 @@ buildopts = 'CXX="$CXX" CXXFLAGS="$CXXFLAGS -fopenmp" && cd ../rsem-eval && make runtest = 'test' -files_to_copy = [(['ref-eval', 'ref-eval-estimate-true-assembly', '../rsem-eval/rsem-*'], 'bin')] +files_to_copy = [ + (['ref-eval', 'ref-eval-estimate-true-assembly', '../rsem-eval/rsem-*', '../rsem-eval/*.pm'], 'bin'), +] sanity_check_paths = { 'files': ['bin/%s' % x for x in ['ref-eval', 'ref-eval-estimate-true-assembly', 'rsem-build-read-index', 'rsem-eval-calculate-score', 'rsem-eval-estimate-transcript-length-distribution', 'rsem-eval-run-em', 'rsem-extract-reference-transcripts', - 'rsem-parse-alignments', 'rsem-plot-model', 'rsem-preref', 'rsem-sam-validator', - 'rsem-scan-for-paired-end-reads', 'rsem-simulate-reads', + 'rsem-parse-alignments', 'rsem_perl_utils.pm', 'rsem-plot-model', 'rsem-preref', + 'rsem-sam-validator', 'rsem-scan-for-paired-end-reads', 'rsem-simulate-reads', 'rsem-synthesis-reference-transcripts']], 'dirs': [], } +sanity_check_commands = [r"rsem-eval-calculate-score --help 2>&1 | grep 'rsem-eval-calculate-score \[options\]'"] + moduleclass = 'bio' 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+-24.1-foss-2023a.eb b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb new file mode 100644 index 00000000000..c862fcea552 --- /dev/null +++ b/easybuild/easyconfigs/d/DFTB+/DFTB+-24.1-foss-2023a.eb @@ -0,0 +1,93 @@ +easyblock = 'CMakeMake' + +name = 'DFTB+' +version = '24.1' + +homepage = 'https://www.dftb-plus.info' +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 +framework so far. Using DFTB+ you can carry out quantum mechanical simulations +like with ab-initio density functional theory based packages, but in an +approximate way gaining typically around two order of magnitude in speed.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'openmp': True, 'pic': True} + +_external_dir = '%%(builddir)s/dftbplus-%%(version)s/external/%s/origin/' +_external_extract = 'mkdir -p %s && tar -C %s' % (_external_dir, _external_dir) +_external_extract += ' --strip-components=1 -xzf %%s' + +source_urls = ['https://github.com/dftbplus/dftbplus/releases/download/%(version)s'] +sources = [ + 'dftbplus-%(version)s.tar.xz', + { + # Slater-Koster (slakos) data for testing + 'source_urls': ['https://github.com/dftbplus/testparams/archive'], + 'download_filename': 'fbe3d62127d86bd8e49ad25a1e5793e6a095e8e7.tar.gz', + 'filename': 'slakos-data-%(version)s.tar.gz', + 'extract_cmd': _external_extract % ('slakos', 'slakos'), + }, + { + # GBSA (gbsa) data for testing + 'source_urls': ['https://github.com/grimme-lab/gbsa-parameters/archive'], + 'download_filename': '6836c4d997e4135e418cfbe273c96b1a3adb13e2.tar.gz', + 'filename': 'gbsa-data-%(version)s.tar.gz', + 'extract_cmd': _external_extract % ('gbsa', 'gbsa'), + }, +] +checksums = [ + {'dftbplus-24.1.tar.xz': '3bc405d1ab834b6b145ca671fb44565ec50a6f576e9e18e7a1ae2c613a311321'}, + {'slakos-data-24.1.tar.gz': '78a0494c2ff9216d6a9199ba07d632b18b809e0198f43905c044b5748bde488d'}, + {'gbsa-data-24.1.tar.gz': 'd464f9f7b1883d1353b433d0c7eae2f5606af092d9b51d38e9ed15e072610a79'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), + ('git', '2.41.0', '-nodocs'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('dftd4', '3.7.0'), + ('ELSI', '2.11.0', '-PEXSI'), + ('libmbd', '0.12.6'), +] + +# 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 += '-DBUILD_SHARED_LIBS=1 -DWITH_API=1 -DWITH_PYTHON=0 ' # Python bindings installed as extension +configopts += '-DSCALAPACK_LIBRARY="$LIBSCALAPACK" ' + +runtest = 'test' + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, + 'runtest': False, +} +exts_list = [ + ('dptools', version, { + 'source_tmpl': 'dftbplus-%(version)s.tar.xz', + 'source_urls': ['https://github.com/dftbplus/dftbplus/releases/download/%(version)s'], + 'start_dir': 'tools/dptools', + 'checksums': ['3bc405d1ab834b6b145ca671fb44565ec50a6f576e9e18e7a1ae2c613a311321'], + }), +] + +sanity_check_paths = { + 'files': ['bin/' + x for x in ['dftb+', 'dp_bands', 'dp_dos', 'gen2cif', 'gen2xyz', 'makecube', + 'modes', 'repeatgen', 'straingen', 'waveplot', 'xyz2gen']] + + ['lib/libdftbplus.%s' % SHLIB_EXT, 'lib/libmpifx.%s' % SHLIB_EXT], + 'dirs': ['include/dftbplus', 'lib/cmake', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = ["python -c 'import dptools'"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'phys' 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..12884bd5e3a --- /dev/null +++ b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2022.5.27-foss-2022a.eb @@ -0,0 +1,51 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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..f4bdf4425ae --- /dev/null +++ b/easybuild/easyconfigs/d/Dask-ML/Dask-ML-2024.4.4-foss-2023a.eb @@ -0,0 +1,50 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/DeepDRR/DeepDRR-1.1.3-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/d/DeepDRR/DeepDRR-1.1.3-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..9191c43123a --- /dev/null +++ b/easybuild/easyconfigs/d/DeepDRR/DeepDRR-1.1.3-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'DeepDRR' +version = '1.1.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://deepdrr.readthedocs.io/' +description = """ +DeepDRR provides state-of-the-art tools to generate realistic radiographs and +fluoroscopy from 3D CTs on a training set scale.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('scikit-image', '0.19.3'), + ('PyTorch', '1.12.1', versionsuffix), + ('PyTorch-bundle', '1.12.1', versionsuffix), + ('NiBabel', '4.0.2'), + ('pydicom', '2.3.0'), + ('PyVista', '0.43.8'), + ('PyCUDA', '2024.1', versionsuffix), + ('OpenCV', '4.6.0', versionsuffix + '-contrib'), + ('Seaborn', '0.12.1'), +] + +use_pip = True + +exts_list = [ + ('colorlog', '6.8.2', { + 'checksums': ['3e3e079a41feb5a1b64f978b5ea4f46040a94f11f0e8bbb8261e3dbbeca64d44'], + }), + ('nptyping', '2.5.0', { + 'checksums': ['e3d35b53af967e6fb407c3016ff9abae954d3a0568f7cc13a461084224e8e20a'], + }), + ('pynrrd', '1.0.0', { + 'modulename': 'nrrd', + 'checksums': ['4eb4caba03fbca1b832114515e748336cb67bce70c7f3ae36bfa2e135fc990d2'], + }), + ('deepdrr', version, { + 'preinstallopts': "sed -i 's/opencv-python/opencv-contrib-python/g' setup.py && ", + 'checksums': ['aa75571e2382b408051fb95b302a63f584781a35441b9969c293e54e5f69b484'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..379eb0439bb --- /dev/null +++ b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'DeepLoc' +version = '2.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://services.healthtech.dtu.dk/services/DeepLoc-2.0' +description = "DeepLoc 2.0 predicts the subcellular localization(s) of eukaryotic proteins" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Biopython', '1.83'), + ('ONNX-Runtime', '1.19.2', versionsuffix), + ('ESM-2', '2.0.0', versionsuffix), # for fair-esm + ('PyTorch', '2.1.2', versionsuffix), + ('PyTorch-Lightning', '2.2.1', versionsuffix), + ('Transformers', '4.39.3'), + ('SentencePiece', '0.2.0'), + ('mygene', '3.2.2'), # required by bio +] + +use_pip = True + +local_deeploc_download_url = 'https://services.healthtech.dtu.dk/cgi-bin/sw_request?' +local_deeploc_download_url += 'software=deeploc&version=2.0&packageversion=2.0&platform=All' + +exts_list = [ + ('gprofiler-official', '1.0.0', { + 'checksums': ['5015b47f10fbdcb59c57e342e815c9c07afbe57cd3984154f75b845ddef2445d'], + 'modulename': 'gprofiler', + }), + ('bio', '1.7.1', { + 'sources': ['bio-%(version)s-py%(pymajver)s-none-any.whl'], + 'checksums': ['851545804b08413a3f27fd5131edefc30acfdee513919eebabb29678d8632218'], + 'modulename': 'biorun', + }), + (name, version, { + 'download_instructions': "Download via %s" % local_deeploc_download_url, + 'sources': ['deeploc-%(version)s.All.tar.gz'], + 'checksums': ['1741cf61cc38bba6307f1838c08ff9dd01386da09b8939610d15c27f98173651'], + 'modulename': 'DeepLoc2', + }), +] + +sanity_check_paths = { + 'files': ['bin/deeploc2'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "deeploc2 --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb new file mode 100644 index 00000000000..558d3f61871 --- /dev/null +++ b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'PythonBundle' + +name = 'DeepLoc' +version = '2.0' + +homepage = 'https://services.healthtech.dtu.dk/services/DeepLoc-2.0' +description = "DeepLoc 2.0 predicts the subcellular localization(s) of eukaryotic proteins" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Biopython', '1.83'), + ('ONNX-Runtime', '1.19.2'), + ('ESM-2', '2.0.0'), # for fair-esm + ('PyTorch', '2.1.2'), + ('PyTorch-Lightning', '2.2.1'), + ('Transformers', '4.39.3'), + ('SentencePiece', '0.2.0'), + ('mygene', '3.2.2'), # required by bio +] + +use_pip = True + +local_deeploc_download_url = 'https://services.healthtech.dtu.dk/cgi-bin/sw_request?' +local_deeploc_download_url += 'software=deeploc&version=2.0&packageversion=2.0&platform=All' + +exts_list = [ + ('gprofiler-official', '1.0.0', { + 'checksums': ['5015b47f10fbdcb59c57e342e815c9c07afbe57cd3984154f75b845ddef2445d'], + 'modulename': 'gprofiler', + }), + ('bio', '1.7.1', { + 'sources': ['bio-%(version)s-py%(pymajver)s-none-any.whl'], + 'checksums': ['851545804b08413a3f27fd5131edefc30acfdee513919eebabb29678d8632218'], + 'modulename': 'biorun', + }), + (name, version, { + 'download_instructions': "Download via %s" % local_deeploc_download_url, + 'sources': ['deeploc-%(version)s.All.tar.gz'], + 'checksums': ['1741cf61cc38bba6307f1838c08ff9dd01386da09b8939610d15c27f98173651'], + 'modulename': 'DeepLoc2', + }), +] + +sanity_check_paths = { + 'files': ['bin/deeploc2'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "deeploc2 --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/Dice/Dice-20240702-foss-2023a.eb b/easybuild/easyconfigs/d/Dice/Dice-20240702-foss-2023a.eb new file mode 100644 index 00000000000..56756b3f99f --- /dev/null +++ b/easybuild/easyconfigs/d/Dice/Dice-20240702-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'MakeCp' + +name = 'Dice' +version = '20240702' +_commit = '0f52b62' + +homepage = 'https://github.com/sanshar/Dice' +description = """Dice contains code for performing SHCI, VMC, GFMC, DMC, FCIQMC, stochastic MRCI +and SC-NEVPT2, and AFQMC calculations with a focus on ab initio systems.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'cstd': 'c++14', 'pic': True} + +github_account = 'sanshar' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': SOURCE_TAR_GZ}] +patches = ['Dice-20240101_deprecated-global-placeholders.patch'] +checksums = [ + {'Dice-20240702.tar.gz': '3fe36938642ebf7886231290655c1a2d1fdd256e2bc7e9375669c574c406fc23'}, + {'Dice-20240101_deprecated-global-placeholders.patch': + 'fbf4037e928a57e737faed95dc7d6e1e5cdb8cee8db48503268d250a34c12ccc'}, +] + +builddependencies = [ + ('Eigen', '3.4.0'), + ('git', '2.41.0', '-nodocs'), +] + +dependencies = [ + ('Boost.MPI', '1.82.0'), + ('HDF5', '1.14.0'), +] + +# Use build environment defined by EB +prebuildopts = "sed -i 's/^FLAGS_BASE =.*/FLAGS_BASE=$(CXXFLAGS) -g -w -I. $(CPPFLAGS)/' Makefile && " +buildopts = 'CXX="$MPICXX" USE_INTEL="no" HAS_AVX2="no" ' # avoid changes to -march +buildopts += 'INCLUDE_MKL="-I${EBROOTFLEXIBLAS}/include" LIB_MKL="${LIBBLAS}" ' # use FlexiBLAS +buildopts += 'GIT_BRANCH="master" GIT_HASH="%s"' % _commit +buildopts += 'BOOST="${EBROOTBOOSTMPI}" ' +buildopts += 'EIGEN="${EBROOTEIGEN}/include" ' +buildopts += 'HDF5="${EBROOTHDF5}" ' + +files_to_copy = ['bin'] + +_binaries = ['Dice', 'DQMC', 'GFMC', 'ICPT', 'VMC', 'ZDice2', 'ZSHCI'] +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries], + 'dirs': [], +} + +moduleclass = 'chem' 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..93df8dc002f --- /dev/null +++ b/easybuild/easyconfigs/d/dask/dask-2024.9.1-gfbf-2024a.eb @@ -0,0 +1,64 @@ +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'), +] + +use_pip = True + +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"] + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/datalad/datalad-1.1.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/d/datalad/datalad-1.1.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..66b0e738846 --- /dev/null +++ b/easybuild/easyconfigs/d/datalad/datalad-1.1.3-GCCcore-13.3.0.eb @@ -0,0 +1,84 @@ +easyblock = 'PythonBundle' + +name = 'datalad' +version = "1.1.3" + +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.3.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), + ('poetry', '1.8.3') +] + +dependencies = [ + ('git-annex', '10.20240731'), + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('tqdm', '4.66.5'), + ('PLY', '3.11'), + ('scikit-build', '0.17.6'), +] + +use_pip = True + +exts_list = [ + ('humanize', '4.10.0', { + 'checksums': ['06b6eb0293e4b85e8d385397c5868926820db32b9b654b932f57fa41c23c9978'], + }), + ('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.35.0', { + 'checksums': ['6ab2f5a5cbdaa639599e3478c65462c6d6a10173dc8b941bfc69b0c9eb548f45'], + }), + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('s3transfer', '0.10.2', { + 'checksums': ['0711534e9356d3cc692fdde846b4a1e4b0cb6519971860796e6bc4c7aea00ef6'], + }), + ('boto3', '1.35.0', { + 'checksums': ['bdc242e3ea81decc6ea551b04b2c122f088c29269d8e093b55862946aa0fcfc6'], + }), + ('python_gitlab', '4.8.0', { + 'modulename': 'gitlab', + 'checksums': ['c2c4d7b1cd503d905afe5dfc0f3f6619934361f76ae855c6cec9a666864d37cf'], + }), + ('iso8601', '2.1.0', { + 'checksums': ['6b1d3829ee8921c4301998c909f7829fa9ed3cbdac0d3b16af2d743aed1ba8df'], + }), + (name, version, { + 'checksums': ['7b3a39419ac457df94552214ca64092297d544e15576c0be57f5d7ee35fba7ab'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/datalad'], + 'dirs': [], +} + +sanity_check_commands = [ + "datalad --help", + "datalad --version", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/d/dblatex/dblatex-0.3.12-foss-2023a.eb b/easybuild/easyconfigs/d/dblatex/dblatex-0.3.12-foss-2023a.eb new file mode 100644 index 00000000000..db41d0c240f --- /dev/null +++ b/easybuild/easyconfigs/d/dblatex/dblatex-0.3.12-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'dblatex' +version = '0.3.12' + +homepage = 'https://dblatex.sourceforge.net/' +description = """dblatex is a program that transforms your SGML/XML DocBook documents to DVI, + PostScript or PDF by translating them into pure LaTeX as a first process. + MathML 2.0 markups are supported, too. It started as a clone of DB2LaTeX.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://master.dl.sourceforge.net/project/dblatex/dblatex/dblatex-%(version)s/'] +sources = ['%(name)s3-%(version)s.tar.bz2'] +checksums = ['16e82786272ed1806a079d37914d7ba7a594db792dc4cc34c1c3737dbd4da079'] + +dependencies = [ + ('Python', '3.11.3'), + ('libxslt', '1.1.38'), + ('texlive', '20230313'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +options = {'modulename': 'dbtexmf.dblatex'} + +postinstallcmds = ["cp -r %(builddir)s/%(name)s3-%(version)s/scripts %(installdir)s/bin"] + +sanity_check_commands = ['dblatex --help'] + +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 new file mode 100644 index 00000000000..9fb32627c23 --- /dev/null +++ b/easybuild/easyconfigs/d/decona/decona-1.4-20240731-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'Tarball' + +name = 'decona' +version = '1.4-20240731' +local_commit = 'f7488ad' + +homepage = 'https://github.com/Saskia-Oosterbroek/decona' +description = "fastq to polished sequenses: pipeline suitable for mixed samples and long (Nanopore) reads" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/Saskia-Oosterbroek/decona/archive'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['7504160481ccdd3410fc79348c01a9a3bf0795ad73679cc305e1dcdf3e395962'] + +dependencies = [ + ('Python', '3.11.3'), + ('NanoFilt', '2.8.0'), + ('qcat', '1.1.0'), + ('CD-HIT', '4.8.1'), + ('minimap2', '2.26'), + ('Racon', '1.5.0'), + ('medaka', '1.11.3'), + ('BLAST+', '2.14.1'), + ('cutadapt', '4.9'), +] + +fix_python_shebang_for = ['decona'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['decona'], + 'dirs': [], +} + +sanity_check_commands = ["decona -v | grep 'This is Decona %s'" % version.split('-')[0]] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/deepTools/deepTools-3.5.5-gfbf-2023a.eb b/easybuild/easyconfigs/d/deepTools/deepTools-3.5.5-gfbf-2023a.eb new file mode 100644 index 00000000000..88204ce2678 --- /dev/null +++ b/easybuild/easyconfigs/d/deepTools/deepTools-3.5.5-gfbf-2023a.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'deepTools' +version = '3.5.5' + +homepage = 'https://deeptools.readthedocs.io/' +description = """deepTools is a suite of python tools particularly developed for the efficient analysis of + high-throughput sequencing data, such as ChIP-seq, RNA-seq or MNase-seq.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('plotly.py', '5.16.0'), + ('Pysam', '0.22.0'), + ('pyBigWig', '0.3.22'), +] + +use_pip = True + +exts_list = [ + ('py2bit', '0.3.0', { + 'checksums': ['450555c40cba66957ac8c9a4b6afb625fb34c4bb41638de78c87661ff8b682ef'], + }), + ('deeptoolsintervals', '0.1.9', { + 'checksums': ['7d94c36fd2b6f10d8b99e536d2672e8228971f1fc810497d33527bba2c40d4f6'], + }), + ('numpydoc', '1.5.0', { + 'checksums': ['b0db7b75a32367a0e25c23b397842c65e344a1206524d16c8069f0a1c91b5f4c'], + }), + (name, version, { + 'checksums': ['1c04870187117fa42eb11de95e7ff136f1445965b49ad5dae46099c3ed273f7b'], + }), +] + +sanity_check_paths = { + 'files': ['bin/bamCompare', 'bin/bamCoverage', 'bin/bamPEFragmentSize', 'bin/computeGCBias', 'bin/computeMatrix', + 'bin/correctGCBias', 'bin/multiBamSummary', 'bin/plotCorrelation', 'bin/plotCoverage', + 'bin/plotHeatmap', 'bin/plotProfile'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "bamCompare --help", + "multiBamSummary --help", + "plotHeatmap --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/dftd3-lib/dftd3-lib-0.10-GCC-11.3.0.eb b/easybuild/easyconfigs/d/dftd3-lib/dftd3-lib-0.10-GCC-11.3.0.eb new file mode 100644 index 00000000000..d788355e010 --- /dev/null +++ b/easybuild/easyconfigs/d/dftd3-lib/dftd3-lib-0.10-GCC-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'dftd3-lib' +version = '0.10' + +homepage = 'https://github.com/dftbplus/dftd3-lib' +description = """This is a repackaged version of the DFTD3 program by S. Grimme and his coworkers. +The original program (V3.1 Rev 1) was downloaded at 2016-04-03. It has been +converted to free format and encapsulated into modules.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +github_account = 'dftbplus' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +patches = ['dftd3-lib-0.9_fix-extras-syntax.patch'] +checksums = [ + {'0.10.tar.gz': 'db61bc6c7c699628e8c5bf2018ea38de03a53eac38014e06845829d765caf6bb'}, + {'dftd3-lib-0.9_fix-extras-syntax.patch': '717e719170258544555bfc33390a70c2573d971c6548d8f2c951a5606ec77f74'}, +] + +builddependencies = [ + ('CMake', '3.23.1'), +] + +configopts = '-DCMAKE_INSTALL_INCLUDEDIR="%(installdir)s/include" ' + +sanity_check_paths = { + 'files': ['bin/dftd3', 'lib/libdftd3.a'], + 'dirs': ['include/dftd3/modfiles'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb new file mode 100644 index 00000000000..912ed2baf4a --- /dev/null +++ b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-foss-2023a.eb @@ -0,0 +1,50 @@ +# A. Domingo (Vrije Universiteit Brussel) +# J. Sassmannshausen (Imperial College London/UK) +# C. Willemyns (Vrije Universiteit Brussel) + +easyblock = 'CMakeNinja' + +name = 'dftd4' +version = '3.7.0' + +homepage = 'https://dftd4.readthedocs.io' +description = """ +The dftd4 project provides an implementation of the generally applicable, charge dependent +London-dispersion correction, termed DFT-D4. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': False, 'openmp': True, 'pic': True} + +github_account = 'dftd4' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f00b244759eff2c4f54b80a40673440ce951b6ddfa5eee1f46124297e056f69c'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), +] + +build_shared_libs = True + +configopts = '-DWITH_BLAS=1 -DWITH_OpenMP=1' + +# run suite of tests with ctest +test_cmd = 'ctest' +runtest = '' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.%s' % SHLIB_EXT, 'include/dftd4.h'], + 'dirs': ['include/dftd4', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["dftd4 --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-gfbf-2023b.eb b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-gfbf-2023b.eb new file mode 100644 index 00000000000..2f5ef00ad89 --- /dev/null +++ b/easybuild/easyconfigs/d/dftd4/dftd4-3.7.0-gfbf-2023b.eb @@ -0,0 +1,50 @@ +# A. Domingo (Vrije Universiteit Brussel) +# J. Sassmannshausen (Imperial College London/UK) +# C. Willemyns (Vrije Universiteit Brussel) + +easyblock = 'CMakeNinja' + +name = 'dftd4' +version = '3.7.0' + +homepage = 'https://dftd4.readthedocs.io' +description = """ +The dftd4 project provides an implementation of the generally applicable, charge dependent +London-dispersion correction, termed DFT-D4. +""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} +toolchainopts = {'openmp': True} + +github_account = 'dftd4' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f00b244759eff2c4f54b80a40673440ce951b6ddfa5eee1f46124297e056f69c'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.0'), + ('multicharge', '0.3.0'), +] + +build_shared_libs = True + +configopts = '-DWITH_BLAS=1 -DWITH_OpenMP=1' + +# run suite of tests with ctest +test_cmd = 'ctest' +runtest = '' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.%s' % SHLIB_EXT, 'include/dftd4.h'], + 'dirs': ['include/dftd4', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["dftd4 --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..f04774b1b55 --- /dev/null +++ b/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,83 @@ +easyblock = 'PythonBundle' + +name = 'dictys' +version = '1.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/pinellolab/dictys' +description = "Context specific and dynamic gene regulatory network reconstruction and analysis." + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('poetry', '1.5.1')] +dependencies = [ + ('Python', '3.11.3'), + ('CUDA', '12.1.1', '', SYSTEM), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('pybedtools', '0.9.1'), + ('SAMtools', '1.18'), + ('MACS2', '2.2.9.1'), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('h5py', '3.9.0'), + ('pyro-ppl', '1.9.0', versionsuffix), + ('adjustText', '0.7.3'), + ('Pysam', '0.22.0'), + ('paramiko', '3.2.0'), + ('Jupyter-bundle', '20230823'), + ('Qtconsole', '5.5.1'), + ('junos-eznc', '2.7.1'), +] + +# regenerate WellingtonC.c to works with python 3.11 + unpin matplotlib version +local_pyDNase_preinstallopts = ( + "cd pyDNase/footprinting && rm WellingtonC.c && cythonize -i WellingtonC.pyx && cd .. && cd .. && " + "sed -i 's/matplotlib < 2.0.0/matplotlib/' setup.py && " +) + +exts_list = [ + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + ('jupyter', '1.0.0', { + 'checksums': ['d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f'], + }), + ('args', '0.1.0', { + 'checksums': ['a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814'], + }), + ('clint', '0.5.1', { + 'checksums': ['05224c32b1075563d0b16d0015faaf9da43aa214e4a2140e51f08789e7a4c5aa'], + }), + ('pynetbox', '7.4.0', { + 'checksums': ['fd0b1f197b3880048408ff5ed84422dd599bcd9389e32cb06a09b9b0d55c1636'], + }), + ('absl-py', '1.4.0', { + 'modulename': 'absl', + 'checksums': ['d2c244d01048ba476e7c080bd2c6df5e141d211de80223460d5b3b8a2a58433d'], + }), + ('aerleon', '1.9.0', { + 'checksums': ['850cd621dda750263db313d4473302b48b82adaaa9220e6fd0677cb7900f95f6'], + }), + ('homer', '0.7.0', { + 'checksums': ['efaf9b3948f6aecdf88cc87c0296a18aed77c152489a7f85c571965fb16f9e57'], + }), + ('pyDNase', '0.3.0', { + 'preinstallopts': local_pyDNase_preinstallopts, + 'modulename': 'pyDNase', + 'checksums': ['dba03cadca37929a1cc41545e962136f29efc41f8e3c6de042c51c47ee04d558'], + }), + (name, version, { + 'checksums': ['59610a8c57e9fc525ec5d13b69efc8b513c78a85a595e0e2b0138da62a035978'], + }), +] + +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ["dictys --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a.eb b/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a.eb new file mode 100644 index 00000000000..0b97a82cfde --- /dev/null +++ b/easybuild/easyconfigs/d/dictys/dictys-1.1.0-foss-2023a.eb @@ -0,0 +1,81 @@ +easyblock = 'PythonBundle' + +name = 'dictys' +version = '1.1.0' + +homepage = 'https://github.com/pinellolab/dictys' +description = "Context specific and dynamic gene regulatory network reconstruction and analysis." + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('poetry', '1.5.1')] +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch-bundle', '2.1.2'), + ('pybedtools', '0.9.1'), + ('SAMtools', '1.18'), + ('MACS2', '2.2.9.1'), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('h5py', '3.9.0'), + ('pyro-ppl', '1.9.0'), + ('adjustText', '0.7.3'), + ('Pysam', '0.22.0'), + ('paramiko', '3.2.0'), + ('Jupyter-bundle', '20230823'), + ('Qtconsole', '5.5.1'), + ('junos-eznc', '2.7.1'), +] + +# regenerate WellingtonC.c to works with python 3.11 + unpin matplotlib version +local_pyDNase_preinstallopts = ( + "cd pyDNase/footprinting && rm WellingtonC.c && cythonize -i WellingtonC.pyx && cd .. && cd .. && " + "sed -i 's/matplotlib < 2.0.0/matplotlib/' setup.py && " +) + +exts_list = [ + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + ('jupyter', '1.0.0', { + 'checksums': ['d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f'], + }), + ('args', '0.1.0', { + 'checksums': ['a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814'], + }), + ('clint', '0.5.1', { + 'checksums': ['05224c32b1075563d0b16d0015faaf9da43aa214e4a2140e51f08789e7a4c5aa'], + }), + ('pynetbox', '7.4.0', { + 'checksums': ['fd0b1f197b3880048408ff5ed84422dd599bcd9389e32cb06a09b9b0d55c1636'], + }), + ('absl-py', '1.4.0', { + 'modulename': 'absl', + 'checksums': ['d2c244d01048ba476e7c080bd2c6df5e141d211de80223460d5b3b8a2a58433d'], + }), + ('aerleon', '1.9.0', { + 'checksums': ['850cd621dda750263db313d4473302b48b82adaaa9220e6fd0677cb7900f95f6'], + }), + ('homer', '0.7.0', { + 'checksums': ['efaf9b3948f6aecdf88cc87c0296a18aed77c152489a7f85c571965fb16f9e57'], + }), + ('pyDNase', '0.3.0', { + 'preinstallopts': local_pyDNase_preinstallopts, + 'modulename': 'pyDNase', + 'checksums': ['dba03cadca37929a1cc41545e962136f29efc41f8e3c6de042c51c47ee04d558'], + }), + (name, version, { + 'checksums': ['59610a8c57e9fc525ec5d13b69efc8b513c78a85a595e0e2b0138da62a035978'], + }), +] + +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ["dictys --help"] + +moduleclass = 'bio' 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..0cc0fb8820c --- /dev/null +++ b/easybuild/easyconfigs/d/dill/dill-0.3.8-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +# 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'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/dlib/dlib-19.24.6-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dlib/dlib-19.24.6-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..c3ffb7be647 --- /dev/null +++ b/easybuild/easyconfigs/d/dlib/dlib-19.24.6-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonPackage' + +name = 'dlib' +version = '19.24.6' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/davisking/dlib' +description = """Dlib is a modern C++ toolkit containing machine learning +algorithms and tools for creating complex software in C++ to solve real world +problems. It is used in both industry and academia in a wide range of domains +including robotics, embedded devices, mobile phones, and large high performance +computing environments.""" + +# dlib can use BLAS/LAPACK, so using full toolchain +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +sources = [SOURCE_TAR_GZ] +patches = ['dlib-19.24.6_FlexiBLAS.patch'] +checksums = [ + {'dlib-19.24.6.tar.gz': '77e3c28ac2c66141514b07cbb74b7c7f80381c019ce5fec99007980bc6490d7d'}, + {'dlib-19.24.6_FlexiBLAS.patch': '47fb348d5f1cd064a135d33cf49fdef56ade24a64218311743076cb6b313738b'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), + ('Python', '3.11.3'), + ('libjxl', '0.8.2'), + ('X11', '20230603'), +] + +download_dep_fail = True +use_pip = True + +preinstallopts = "export CMAKE_BUILD_PARALLEL_LEVEL=%(parallel)s && " +preinstallopts += "sed -i 's/BLAS_REFERENCE cblas/BLAS_REFERENCE flexiblas/g' dlib/cmake_utils/find_blas.cmake && " + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/dlib/dlib-19.24.6_FlexiBLAS.patch b/easybuild/easyconfigs/d/dlib/dlib-19.24.6_FlexiBLAS.patch new file mode 100644 index 00000000000..bb12f35adbc --- /dev/null +++ b/easybuild/easyconfigs/d/dlib/dlib-19.24.6_FlexiBLAS.patch @@ -0,0 +1,25 @@ +use FlexiBLAS as BLAS/LAPACK library +author: Kenneth Hoste (HPC-UGent) +diff -ru dlib-19.24.6.orig/dlib/cmake_utils/find_blas.cmake dlib-19.24.6/dlib/cmake_utils/find_blas.cmake +--- dlib-19.24.6.orig/dlib/cmake_utils/find_blas.cmake 2024-02-18 14:43:31.000000000 +0100 ++++ dlib-19.24.6/dlib/cmake_utils/find_blas.cmake 2024-09-20 20:35:35.927348475 +0200 +@@ -66,17 +66,15 @@ + + # First, search for libraries via pkg-config, which is the cleanest path + find_package(PkgConfig) +- pkg_check_modules(BLAS_REFERENCE cblas) +- pkg_check_modules(LAPACK_REFERENCE lapack) ++ pkg_check_modules(BLAS_REFERENCE flexiblas) + # Make sure the cblas found by pkgconfig actually has cblas symbols. + SET(CMAKE_REQUIRED_LIBRARIES "${BLAS_REFERENCE_LDFLAGS}") + CHECK_FUNCTION_EXISTS(cblas_ddot PKGCFG_HAVE_CBLAS) + if (BLAS_REFERENCE_FOUND AND LAPACK_REFERENCE_FOUND AND PKGCFG_HAVE_CBLAS) + set(blas_libraries "${BLAS_REFERENCE_LDFLAGS}") +- set(lapack_libraries "${LAPACK_REFERENCE_LDFLAGS}") + set(blas_found 1) + set(lapack_found 1) +- set(REQUIRES_LIBS "${REQUIRES_LIBS} cblas lapack") ++ set(REQUIRES_LIBS "${REQUIRES_LIBS} flexiblas") + message(STATUS "Found BLAS and LAPACK via pkg-config") + return() + endif() diff --git a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.12-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.12-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..f66f10ec557 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.12-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,50 @@ +# update 0.0.12: Thomas Hoffmann (EMBL) +easyblock = 'PythonBundle' + +name = 'dm-haiku' +version = '0.0.12' +versionsuffix = '-CUDA-%(cudaver)s' + +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', versionsuffix), # required by jmp, also provides absl-py + ('PyYAML', '6.0'), + ('CUDA', '12.1.1', '', SYSTEM), + ('tensorstore', '0.1.65'), + ('protobuf-python', '4.24.0'), + ('Optax', '0.2.2', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('jmp', '0.0.4', { + 'checksums': ['5dfeb0fd7c7a9f72a70fff0aab9d0cbfae32a809c02f4037ff3485ceb33e1730'], + }), + ('flax', '0.8.4', { + 'checksums': ['968683f850198e1aa5eb2d9d1e20bead880ef7423c14f042db9d60848cb1c90b'], + }), + ('nest_asyncio', '1.6.0', { + 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], + }), + ('orbax_checkpoint', '0.5.18', { + 'modulename': 'orbax.checkpoint', + 'preinstallopts': """sed -i 's/jax >= 0.4.25/&\\*/g' pyproject.toml &&""", + 'checksums': ['29f5d311b412760bd6a2fecab3bdbf75407bc00dc6d0457d19478258ecc8fa6d'], + }), + (name, version, { + 'modulename': 'haiku', + 'checksums': ['ba0b3acf71433156737fe342c486da11727e5e6c9e054245f4f9b8f0b53eb608'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb new file mode 100644 index 00000000000..532f9092e79 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'dm-haiku' +version = '0.0.13' + +homepage = 'https://github.com/deepmind/dm-haiku' +description = """Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet, a neural +network library for TensorFlow.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25'), # required by jmp, also provides absl-py +] + +use_pip = True + +exts_list = [ + ('jmp', '0.0.4', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['6aa7adbddf2bd574b28c7faf6e81a735eb11f53386447896909c6968dc36807d'], + }), + ('dm_haiku', version, { + 'modulename': 'haiku', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['ee9562c68a059f146ad07f555ca591cb8c11ef751afecc38353863562bd23f43'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/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 new file mode 100644 index 00000000000..378a9deec6b --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.6.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,97 @@ +easyblock = 'CMakeMake' + +name = 'dorado' +version = '0.6.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/dorado' +description = """Dorado is a high-performance, easy-to-use, open source basecaller for Oxford Nanopore reads.""" + +toolchain = {'name': 'foss', 'version': '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 = ['dorado-0.6.1_include-fstream.patch'] +checksums = [ + None, + 'a7692a2d67422d808b3b81f3a297b7b89299ab0091e5d01f0b8a9aee9b942377', +] + +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 && " +preconfigopts += "export OPENSSL_ROOT_DIR=$EBROOTOPENSSL && " +# link in the ssl and crypto libs, to fix: +# undefined reference to symbol 'SSL_get_peer_certificate@@OPENSSL_1_1_0' +preconfigopts += "sed -i 's/OpenSSL::SSL/ssl\\n crypto/g' ../dorado/dorado/utils/CMakeLists.txt && " + +# don't use vendored HTSlib, use provided HTSlib dependency +preconfigopts += "rm -r ../dorado/dorado/3rdparty/htslib/ && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/dorado/utils/CMakeLists.txt && " +preconfigopts += "sed -i '/Htslib.cmake/d' ../dorado/CMakeLists.txt && " +# link with -lhts, not -lhtslib +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/dorado/utils/CMakeLists.txt && " + +# 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 && " + +configopts = "-DDORADO_INSTALL_PATH=%(installdir)s " +configopts += "-DCUDA_TOOLKIT_ROOT_DIR=$EBROOTCUDA -DCMAKE_CUDA_COMPILER=$EBROOTCUDA/bin/nvcc " +configopts += "-DDORADO_LIBTORCH_DIR=$EBROOTPYTORCH/lib " +# add -pthread flag (in addition to -lpthread) to avoid linking error: +# in function `_GLOBAL__sub_I_mutex.cc': mutex.cc:(.text.startup+0x17): undefined reference to `pthread_atfork' +configopts += '-DCMAKE_C_FLAGS="$CFLAGS -pthread" ' + +# 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/dorado/dorado-0.6.1_include-fstream.patch b/easybuild/easyconfigs/d/dorado/dorado-0.6.1_include-fstream.patch new file mode 100644 index 00000000000..c1165f3fe5c --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.6.1_include-fstream.patch @@ -0,0 +1,27 @@ +add missing include to fix compiler errors like: + + error: variable std::ofstream summary_out has initializer but incomplete type + +see also https://github.com/nanoporetech/dorado/pull/780 + +author: Kenneth Hoste (HPC-UGent) +--- dorado/dorado/cli/duplex.cpp.orig 2024-04-30 17:59:15.483935823 +0200 ++++ dorado/dorado/cli/duplex.cpp 2024-04-30 17:59:34.658694274 +0200 +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include + #include + #include +--- dorado/dorado/cli/demux.cpp.orig 2024-04-30 18:13:40.327122548 +0200 ++++ dorado/dorado/cli/demux.cpp 2024-04-30 18:15:37.576760942 +0200 +@@ -17,6 +17,7 @@ + #include + + #include ++#include + #include + #include + #include 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 new file mode 100644 index 00000000000..9927f0492b4 --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.7.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,106 @@ +easyblock = 'CMakeMake' + +name = 'dorado' +version = '0.7.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-%(version)s_include-fstream.patch', + '%(name)s-%(version)s_dont_install_external_libraries.patch', +] + +checksums = [ + None, + 'a32cbd34185bcc5ae3d552a072e396825aa7184187cd11c70a4380618387a530', + '2a250d606c0ae17f47d99981309fa204a1394ddd81851a1d530dcd0aea2306ac', +] + +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 && " + +# 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/dorado/dorado-0.7.3_dont_install_external_libraries.patch b/easybuild/easyconfigs/d/dorado/dorado-0.7.3_dont_install_external_libraries.patch new file mode 100644 index 00000000000..67bd9efee78 --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.7.3_dont_install_external_libraries.patch @@ -0,0 +1,54 @@ +Don't install external libraries in Dorado's lib directory. + +Åke Sandgren, 2024-09-02 +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a84c7524..0791dda8 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -431,7 +431,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + else() + # bundle the libraries from the cuda toolkit + file(GLOB NATIVE_CUDA_LIBS "${CUDAToolkit_TARGET_DIR}/targets/${CMAKE_SYSTEM_PROCESSOR}-linux/lib/${LIB}") +- install(FILES ${NATIVE_CUDA_LIBS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${NATIVE_CUDA_LIBS} DESTINATION lib COMPONENT redist_libs) + endif() + endforeach() + +@@ -444,14 +444,14 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + RESOLVE_SYMLINKS("${DEBUG_LIBRARIES}" NEW_HDF_DEBUG_LIBRARIES) + foreach(HDF_LIB IN LISTS NEW_HDF_DEBUG_LIBRARIES) + if(${HDF_LIB} MATCHES "hdf5") +- install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Debug) ++ #install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Debug) + endif() + endforeach() + FILTER_LIST("${HDF5_C_LIBRARIES}" RELEASE_LIBRARIES optimized debug ${SHARED_LIB_EXT}) + RESOLVE_SYMLINKS("${RELEASE_LIBRARIES}" NEW_HDF_RELEASE_LIBRARIES) + foreach(HDF_LIB IN LISTS NEW_HDF_RELEASE_LIBRARIES) + if(${HDF_LIB} MATCHES "hdf5") +- install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Release ReleaseWithDebInfo) ++ #install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Release ReleaseWithDebInfo) + endif() + endforeach() + endif() +@@ -459,17 +459,17 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + find_library(SZ_DLL sz REQUIRED) + get_filename_component(SZ_DLL_PATH ${SZ_DLL} DIRECTORY) + file(GLOB SZ_DLLS "${SZ_DLL_PATH}/libsz.so*") +- install(FILES ${SZ_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${SZ_DLLS} DESTINATION lib COMPONENT redist_libs) + + find_library(AEC_DLL aec REQUIRED) + get_filename_component(AEC_DLL_PATH ${AEC_DLL} DIRECTORY) + file(GLOB AEC_DLLS "${AEC_DLL_PATH}/libaec.so*") +- install(FILES ${AEC_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${AEC_DLLS} DESTINATION lib COMPONENT redist_libs) + + # If zstd has been dynamically linked, add the .so to the package + get_filename_component(ZSTD_LIBRARY_PATH ${ZSTD_LIBRARY_RELEASE} DIRECTORY) + file(GLOB ZSTD_DLLS "${ZSTD_LIBRARY_PATH}/*zstd.so*") +- install(FILES ${ZSTD_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${ZSTD_DLLS} DESTINATION lib COMPONENT redist_libs) + + elseif(WIN32) + file(GLOB TORCH_DLLS "${TORCH_LIB}/lib/*.dll") diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.7.3_include-fstream.patch b/easybuild/easyconfigs/d/dorado/dorado-0.7.3_include-fstream.patch new file mode 100644 index 00000000000..bf8d2346e5d --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.7.3_include-fstream.patch @@ -0,0 +1,27 @@ +add missing include to fix compiler errors like: + + error: variable std::ofstream summary_out has initializer but incomplete type + +see also https://github.com/nanoporetech/dorado/pull/780 + +author: Kenneth Hoste (HPC-UGent) +--- dorado/dorado/cli/duplex.cpp.orig 2024-04-30 17:59:15.483935823 +0200 ++++ dorado/dorado/cli/duplex.cpp 2024-04-30 17:59:34.658694274 +0200 +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include + #include + #include +--- dorado/dorado/cli/demux.cpp.orig 2024-04-30 18:13:40.327122548 +0200 ++++ dorado/dorado/cli/demux.cpp 2024-04-30 18:15:37.576760942 +0200 +@@ -17,6 +17,7 @@ + #include + + #include ++#include + #include + #include + #include \ No newline at end of file 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 new file mode 100644 index 00000000000..778c00e0d6e --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.8.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,105 @@ +easyblock = 'CMakeMake' + +name = 'dorado' +version = '0.8.0' +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-%(version)s_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/dorado/dorado-0.8.0_dont_install_external_libraries.patch b/easybuild/easyconfigs/d/dorado/dorado-0.8.0_dont_install_external_libraries.patch new file mode 100644 index 00000000000..cd205c1cbb7 --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.8.0_dont_install_external_libraries.patch @@ -0,0 +1,51 @@ +Don't install external libraries in Dorado's lib directory. +Simon Branford (University of Birmingham) +--- cmake/InstallRedistLibs.cmake.orig 2024-09-27 13:43:56.612497000 +0100 ++++ cmake/InstallRedistLibs.cmake 2024-09-27 13:44:31.683753000 +0100 +@@ -46,7 +46,7 @@ + else() + # bundle the libraries from the cuda toolkit + file(GLOB NATIVE_CUDA_LIBS "${CUDAToolkit_TARGET_DIR}/targets/${CMAKE_SYSTEM_PROCESSOR}-linux/lib/${LIB}") +- install(FILES ${NATIVE_CUDA_LIBS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${NATIVE_CUDA_LIBS} DESTINATION lib COMPONENT redist_libs) + endif() + endforeach() + +@@ -59,14 +59,14 @@ + RESOLVE_SYMLINKS("${DEBUG_LIBRARIES}" NEW_HDF_DEBUG_LIBRARIES) + foreach(HDF_LIB IN LISTS NEW_HDF_DEBUG_LIBRARIES) + if(${HDF_LIB} MATCHES "hdf5") +- install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Debug) ++ #install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Debug) + endif() + endforeach() + FILTER_LIST("${HDF5_C_LIBRARIES}" RELEASE_LIBRARIES optimized debug ${SHARED_LIB_EXT}) + RESOLVE_SYMLINKS("${RELEASE_LIBRARIES}" NEW_HDF_RELEASE_LIBRARIES) + foreach(HDF_LIB IN LISTS NEW_HDF_RELEASE_LIBRARIES) + if(${HDF_LIB} MATCHES "hdf5") +- install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Release ReleaseWithDebInfo) ++ #install(FILES ${HDF_LIB} DESTINATION lib COMPONENT redist_libs CONFIGURATIONS Release ReleaseWithDebInfo) + endif() + endforeach() + endif() +@@ -74,17 +74,17 @@ + find_library(SZ_DLL sz REQUIRED) + get_filename_component(SZ_DLL_PATH ${SZ_DLL} DIRECTORY) + file(GLOB SZ_DLLS "${SZ_DLL_PATH}/libsz.so*") +- install(FILES ${SZ_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${SZ_DLLS} DESTINATION lib COMPONENT redist_libs) + + find_library(AEC_DLL aec REQUIRED) + get_filename_component(AEC_DLL_PATH ${AEC_DLL} DIRECTORY) + file(GLOB AEC_DLLS "${AEC_DLL_PATH}/libaec.so*") +- install(FILES ${AEC_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${AEC_DLLS} DESTINATION lib COMPONENT redist_libs) + + # If zstd has been dynamically linked, add the .so to the package + get_filename_component(ZSTD_LIBRARY_PATH ${ZSTD_LIBRARY_RELEASE} DIRECTORY) + file(GLOB ZSTD_DLLS "${ZSTD_LIBRARY_PATH}/*zstd.so*") +- install(FILES ${ZSTD_DLLS} DESTINATION lib COMPONENT redist_libs) ++ #install(FILES ${ZSTD_DLLS} DESTINATION lib COMPONENT redist_libs) + + elseif(WIN32) + file(GLOB TORCH_DLLS "${TORCH_LIB}/lib/*.dll") 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/d/dtcmp/dtcmp-1.1.5-gompi-2024a.eb b/easybuild/easyconfigs/d/dtcmp/dtcmp-1.1.5-gompi-2024a.eb new file mode 100644 index 00000000000..5143b629849 --- /dev/null +++ b/easybuild/easyconfigs/d/dtcmp/dtcmp-1.1.5-gompi-2024a.eb @@ -0,0 +1,39 @@ +# +# Author: Robert Mijakovic +# +easyblock = 'ConfigureMake' + +name = 'dtcmp' +version = '1.1.5' + +homepage = 'https://github.com/LLNL/dtcmp' +description = """The Datatype Comparison (DTCMP) Library provides pre-defined and user-defined +comparison operations to compare the values of two items which can be arbitrary MPI datatypes. +Using these comparison operations, the library provides various routines for manipulating data, +which may be distributed over the processes of an MPI communicator.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +github_account = 'LLNL' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['5c3d672fcf1be81e9afb65ef3f860a7dfe0f1bd79360ac63848acfe4d44439c9'] + +builddependencies = [ + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('lwgrp', '1.0.6'), +] + +preconfigopts = './autogen.sh && ' +configopts = '--with-lwgrp=$EBROOTLWGRP' + +sanity_check_paths = { + 'files': ['include/%(name)s.h', 'lib/lib%%(name)s.%s' % SHLIB_EXT, 'share/%(name)s/README.md'], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..cfd077260fb --- /dev/null +++ b/easybuild/easyconfigs/d/dub/dub-1.38.1-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CmdCp' + +name = 'dub' +version = '1.38.1' + +homepage = 'https://github.com/dlang/dub' +description = "Package and build manager for D applications and libraries" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/dlang/dub/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['a7c9a2f819fdea7359f298cba76e81a24ca1536d756c3b4b98c2480463c37907'] + +builddependencies = [ + ('binutils', '2.40'), + ('LDC', '1.39.0'), +] + +cmds_map = [('.*', "ldmd2 -v -run build.d")] + +files_to_copy = [(['bin/dub'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/dub'], + 'dirs': [], +} + +sanity_check_commands = ["dub --help"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/d/duplex-tools/duplex-tools-0.3.3-foss-2023a.eb b/easybuild/easyconfigs/d/duplex-tools/duplex-tools-0.3.3-foss-2023a.eb new file mode 100644 index 00000000000..fb67d050e02 --- /dev/null +++ b/easybuild/easyconfigs/d/duplex-tools/duplex-tools-0.3.3-foss-2023a.eb @@ -0,0 +1,68 @@ +# Author: Jasper Grimm (UoY) +# Updated: Petr Král, Pavel Tománek (INUITS) +easyblock = 'PythonBundle' + +name = 'duplex-tools' +version = '0.3.3' + +homepage = 'https://github.com/nanoporetech/duplex-tools' +description = """ +Duplex Tools contains a set of utilities for dealing with Duplex sequencing data. Tools are provided + to identify and prepare duplex pairs for basecalling by Dorado (recommended) and Guppy, and for + recovering simplex basecalls from incorrectly concatenated pairs. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +_minimap2_ver = '2.26' +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('edlib', '1.3.9'), + ('minimap2', _minimap2_ver), + ('python-parasail', '1.3.4'), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.1'), + ('Arrow', '14.0.1'), + ('h5py', '3.9.0'), + ('pod5-file-format', '0.3.10'), + ('parasail', '2.6.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('mappy', _minimap2_ver, { + 'checksums': ['e53fbe9a3ea8762a64b8103f4f779c9fb16d418eaa0a731f45cebc83867a9b71'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + ('pyfastx', '2.0.1', { + # PYPI source tarball is incomplete, causes ImportErrors + # see https://github.com/lmdu/pyfastx/issues/60 + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'source_urls': ['https://github.com/lmdu/%(name)s/archive'], + 'checksums': ['93aff63ce88bc5cfe7152d8dcb3f2164356bcd8f95a68fb20af107e59a7f9b55'], + }), + (name, version, { + 'sources': [{'download_filename': 'duplex_tools-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['883e0a6610d14328a640b6a31eaef90592d2967cda68db0547a4d99924281300'], + }), +] + +_bins = ['dorado_stereo.sh', 'duplex_tools', 'minimap2.py', 'natsort', 'pyfastx'] +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'dorado_stereo.sh -h', + 'duplex_tools --help', + 'pyfastx --help', +] + +moduleclass = 'bio' 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/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb new file mode 100644 index 00000000000..a1be84f6de9 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0-foss-2023a-PEXSI.eb @@ -0,0 +1,47 @@ +name = 'ELSI' +version = '2.11.0' +versionsuffix = '-PEXSI' + +homepage = 'https://wordpress.elsi-interchange.org/' +description = """ELSI provides and enhances scalable, open-source software library solutions for + electronic structure calculations in materials science, condensed matter physics, chemistry, and many other fields. + ELSI focuses on methods that solve or circumvent eigenvalue problems in electronic structure theory. + The ELSI infrastructure should also be useful for other challenging eigenvalue problems. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True, 'cstd': 'c++11', 'extra_fflags': '-fallow-argument-mismatch'} + +source_urls = ['https://gitlab.com/elsi_project/elsi_interface/-/archive/v2.11.0/'] +sources = ['elsi_interface-v%(version)s.tar.gz'] +patches = [ + 'ELSI-2.11.0_bison_3.8_compat.patch', +] +checksums = [ + {'elsi_interface-v2.11.0.tar.gz': '2e6929827ed9c99a32381ed9da40482e862c28608d59d4f27db7dcbcaed1520d'}, + {'ELSI-2.11.0_bison_3.8_compat.patch': 'a1284f5c0f442129610aa0fb463cc2b54450e3511a2fd6c871fadc21a16e9504'}, +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('ELPA', '2023.05.001'), + ('NTPoly', '3.1.0'), +] + +abs_path_compilers = True +build_internal_pexsi = True + +configopts = '-DENABLE_BSEPACK=ON ' + +# Tests use 4 MPI ranks, they require a minimum of 4 cores +# Map each MPI process to a single CPU core to avoid tests fails +pretestopts = "export OMPI_MCA_rmaps_base_mapping_policy=slot:PE=1 && " + +runtest = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch new file mode 100644 index 00000000000..255ed4a5575 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.11.0_bison_3.8_compat.patch @@ -0,0 +1,14 @@ +Make it compatible with Bison 3.7 +Author: Åke Sandgren, 20211020 +Update: Cintia Willemyns (Vrije Universiteit Brussel) +--- elsi_interface-v2.11.0.orig/external/SCOTCH/CMakeLists.txt 2024-09-10 19:01:11.447551000 +0200 ++++ elsi_interface-v2.11.0/external/SCOTCH/CMakeLists.txt 2024-09-10 19:08:44.913993743 +0200 +@@ -56,7 +56,7 @@ + COMMAND mv ${PROJECT_BINARY_DIR}/generated/tmp2.c ${PROJECT_BINARY_DIR}/generated/parser_yy.c + # Versions of bison > 2.X insert a '#include tmp2.h' in tmp2.c. A simple 'mv' will not work. + # The file needs to remain in the directory with the old name. Hence the 'cp' +- COMMAND cp ${PROJECT_BINARY_DIR}/generated/tmp2.h ${PROJECT_BINARY_DIR}/generated/parser_ly.h ++ COMMAND ln -s ${PROJECT_BINARY_DIR}/generated/tmp2.h ${PROJECT_BINARY_DIR}/generated/parser_ly.h + COMMAND flex -Pscotchyy -o${PROJECT_BINARY_DIR}/generated/tmp1.c ${SCOTCH_DIR}/parser_ll.l + COMMAND mv ${PROJECT_BINARY_DIR}/generated/tmp1.c ${PROJECT_BINARY_DIR}/generated/parser_ll.c + DEPENDS ${SCOTCH_DIR}/parser_yy.y ${SCOTCH_DIR}/parser_ll.l ${SCOTCH_DIR}/parser_yy.h ${SCOTCH_DIR}/parser_ll.h diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb new file mode 100644 index 00000000000..d5ef7e3da14 --- /dev/null +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.9.1-foss-2022a-PEXSI.eb @@ -0,0 +1,45 @@ +name = 'ELSI' +version = '2.9.1' +versionsuffix = '-PEXSI' + +homepage = 'https://wordpress.elsi-interchange.org/' +description = """ELSI provides and enhances scalable, open-source software library solutions for + electronic structure calculations in materials science, condensed matter physics, chemistry, and many other fields. + ELSI focuses on methods that solve or circumvent eigenvalue problems in electronic structure theory. + The ELSI infrastructure should also be useful for other challenging eigenvalue problems. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True, 'cstd': 'c++11', 'extra_fflags': '-fallow-argument-mismatch'} + +source_urls = ['https://wordpress.elsi-interchange.org/wp-content/uploads/2022/05'] +sources = ['elsi_interface-v%(version)s.tar.gz'] +patches = [ + 'pexsi-1.2.0-mpi30.patch', + 'ELSI-2.7.1_bison_3.7_compat.patch', +] +checksums = [ + {'elsi_interface-v2.9.1.tar.gz': 'ad3dc163159a79f7a83f360265f2446920c151ecce9c294136e630fe424f1d29'}, + {'pexsi-1.2.0-mpi30.patch': 'd5580de710cee652c27622f167a10933f792546481d9c08d62f452885cb63abb'}, + {'ELSI-2.7.1_bison_3.7_compat.patch': '986f95c2eb22c8a8bef13357a10242dcf0a0fac562c88bdc9bdf46cc6e7a1edb'}, +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('NTPoly', '2.7.1'), +] + +abs_path_compilers = True +build_internal_pexsi = True + +configopts = '-DENABLE_BSEPACK=ON ' + +runtest = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ESIpy/ESIpy-20240709-foss-2022a.eb b/easybuild/easyconfigs/e/ESIpy/ESIpy-20240731-foss-2022a.eb similarity index 85% rename from easybuild/easyconfigs/e/ESIpy/ESIpy-20240709-foss-2022a.eb rename to easybuild/easyconfigs/e/ESIpy/ESIpy-20240731-foss-2022a.eb index 8b8af45bccf..290a85e008e 100644 --- a/easybuild/easyconfigs/e/ESIpy/ESIpy-20240709-foss-2022a.eb +++ b/easybuild/easyconfigs/e/ESIpy/ESIpy-20240731-foss-2022a.eb @@ -1,8 +1,8 @@ easyblock = 'Tarball' name = 'ESIpy' -version = '20240709' -_commit = '206f863' +version = '20240731' +_commit = '25ff61c' homepage = 'https://github.com/jgrebol/ESIpy' description = """Program aimed at the calculation of population analysis and aromaticity @@ -17,7 +17,7 @@ sources = [ 'filename': SOURCE_TAR_GZ, }, ] -checksums = ['7f963f47558b26f545c8963b2191a78b5b2522347d78ee96f0462dccaa0b4f86'] +checksums = ['d8b7bf723ea37426ba6a3d4ddc07c2e969c75afd1ff4843c7d21b2faa1f035b0'] dependencies = [ ('Python', '3.10.4'), diff --git a/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb b/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb new file mode 100644 index 00000000000..8b461b544cc --- /dev/null +++ b/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'ESM-2' +version = '2.0.0' + +homepage = 'https://github.com/facebookresearch/esm' +description = """ESM-2 outperforms all tested single-sequence protein language models + across a range of structure prediction tasks. ESMFold harnesses the ESM-2 language model to generate + accurate structure predictions end to end directly from the sequence of a protein.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('Java', '11', '', SYSTEM), # needed by ANTLR4 runtime +] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), +] + +use_pip = True +sanity_pip_check = True + +# omegaconf is required for esmfold (in addition to OpenFold-1.0.1) +exts_list = [ + ('antlr4-python3-runtime', '4.9.3', { + 'modulename': 'antlr4', + 'checksums': ['f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b'], + }), + ('omegaconf', '2.3.0', { + 'checksums': ['d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7'], + }), + ('fair-esm', version, { + 'modulename': "esm, esm.pretrained", + 'checksums': ['4ed34d4598ec75ed6550a4e581d023bf8d4a8375317ecba6269bb68135f80c85'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..1382c12efc6 --- /dev/null +++ b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'ESM3' +version = '3.0.0.post2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.evolutionaryscale.ai/' +description = """ESM3 is a frontier generative model for biology, able to jointly reason across +three fundamental biological properties of proteins: sequence, structure, and +function. These three data modalities are represented as tracks of discrete +tokens at the input and output of ESM3. You can present the model with a +combination of partial inputs across the tracks, and ESM3 will provide output +predictions for all the tracks. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('Transformers', '4.39.3'), + ('Biopython', '1.83'), + ('Biotite', '0.41.0'), + ('Brotli-python', '1.0.9'), + ('einops', '0.7.0'), + ('IPython', '8.14.0'), + ('scikit-learn', '1.3.1'), +] + +use_pip = True + +exts_list = [ + ('msgpack-numpy', '0.4.8', { + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + }), + ('cloudpathlib', '0.16.0', { + 'checksums': ['cdfcd35d46d529587d744154a0bdf962aca953b725c8784cd2ec478354ea63a3'], + }), + ('esm', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['5544b6974945d791205226408100429c2ea6e49b30265aea1d359caabe20bb14'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'import esm'", + "python -c 'from esm.models.esm3 import ESM3'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb new file mode 100644 index 00000000000..60125c1af46 --- /dev/null +++ b/easybuild/easyconfigs/e/ESM3/ESM3-3.0.0.post2-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'ESM3' +version = '3.0.0.post2' + +homepage = 'https://www.evolutionaryscale.ai/' +description = """ESM3 is a frontier generative model for biology, able to jointly reason across +three fundamental biological properties of proteins: sequence, structure, and +function. These three data modalities are represented as tracks of discrete +tokens at the input and output of ESM3. You can present the model with a +combination of partial inputs across the tracks, and ESM3 will provide output +predictions for all the tracks. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch-bundle', '2.1.2'), + ('Transformers', '4.39.3'), + ('Biopython', '1.83'), + ('Biotite', '0.41.0'), + ('Brotli-python', '1.0.9'), + ('einops', '0.7.0'), + ('IPython', '8.14.0'), + ('scikit-learn', '1.3.1'), +] + +use_pip = True + +exts_list = [ + ('msgpack-numpy', '0.4.8', { + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + }), + ('cloudpathlib', '0.16.0', { + 'checksums': ['cdfcd35d46d529587d744154a0bdf962aca953b725c8784cd2ec478354ea63a3'], + }), + ('esm', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['5544b6974945d791205226408100429c2ea6e49b30265aea1d359caabe20bb14'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'import esm'", + "python -c 'from esm.models.esm3 import ESM3'", +] + +moduleclass = 'bio' 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/ESMPy/ESMPy-8.6.0-foss-2023a.eb b/easybuild/easyconfigs/e/ESMPy/ESMPy-8.6.0-foss-2023a.eb new file mode 100644 index 00000000000..8510ec6f7c2 --- /dev/null +++ b/easybuild/easyconfigs/e/ESMPy/ESMPy-8.6.0-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'PythonBundle' + +name = 'ESMPy' +version = '8.6.0' + +homepage = 'https://earthsystemmodeling.org/esmpy' +description = "Earth System Modeling Framework (ESMF) Python Interface" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('pytest', '7.4.2'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ESMF', version), +] + +use_pip = True + +# downloads of data files from data.earthsystemmodeling.org are failing at the +# time of writting, switch to github.com: +_switch_data_url_regex = r"s/^\(DATA_URL.*earthsystemmodeling.org\)/# \1/;s/# \(DATA_URL.*github.com\)/\1/" + +_pre_test_cmds = [ + "sed -i '%s' src/esmpy/util/cache_data.py" % _switch_data_url_regex, + "unset ESMPY_DATA_DIR", + "export ESMPY_DATA_NEW_DIR=/tmp", + "", +] + +exts_list = [ + ('esmpy', version, { + 'patches': ['ESMPy-%(version)s_use-static-version.patch'], + 'source_urls': ['https://github.com/esmf-org/esmf/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': [ + {'v8.6.0.tar.gz': + 'ed057eaddb158a3cce2afc0712b49353b7038b45b29aee86180f381457c0ebe7'}, + {'ESMPy-8.6.0_use-static-version.patch': + '4878e0066593c993e7fc16638ab8e671693c402263b13d1c903b5c5b717f6468'}, + ], + 'start_dir': 'src/addon/%(name)s', + 'preinstallopts': "sed -i 's/EB_ESMPY_VERSION/%(version)s/' pyproject.toml && ", + 'pretestopts': " && ".join(_pre_test_cmds), + 'runtest': 'pytest', + 'testinstall': True, + }), +] + +sanity_pip_check = True + +# set data directory to a user-writable directory +# default: %(installdir)s/lib/python%(pyshortver)s/site-packages/esmpy/data +modextravars = {'ESMPY_DATA_DIR': '/tmp'} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/e/ESMPy/ESMPy-8.6.0_use-static-version.patch b/easybuild/easyconfigs/e/ESMPy/ESMPy-8.6.0_use-static-version.patch new file mode 100644 index 00000000000..1a81dbd6151 --- /dev/null +++ b/easybuild/easyconfigs/e/ESMPy/ESMPy-8.6.0_use-static-version.patch @@ -0,0 +1,49 @@ +Replace dynamic versioning with a plain static version string. Tarballs of +ESMPy downloaded from github lack git repository data required by +setuptools-git-versioning. +author: Alex Domingo (Vrije Universiteit Brussel) +diff --git a/pyproject.toml.orig b/pyproject.toml +index b3da4b6..e0e207d 100644 +--- a/src/addon/esmpy/pyproject.toml.orig ++++ b/src/addon/esmpy/pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = [ "setuptools>=41", "wheel", "setuptools-git-versioning" ] ++requires = [ "setuptools>=41", "wheel" ] + build-backend = "setuptools.build_meta" + + [project] +@@ -12,15 +12,8 @@ license = { text = "University of Illinois-NCSA" } + dependencies = [ + "numpy", + 'importlib-metadata; python_version < "3.8"', +- # setuptools-git-versioning shouldn't be needed here, but is +- # included as a workaround for problems with the build-time +- # installation of this package with python 3.10 (given by the +- # build-system section above). By including it here, we at least +- # ensure that this package will be available for a second or +- # subsequent pip install of esmpy. +- 'setuptools-git-versioning; python_version >= "3.10"', + ] +-dynamic = [ "version" ] ++version = "EB_ESMPY_VERSION" + + [project.optional-dependencies] + testing = [ +@@ -28,16 +21,6 @@ testing = [ + "pytest-json-report", + ] + +-[tool.setuptools-git-versioning] +-enabled = true +-template = "{tag}" +-dev_template = "{tag}" +-dirty_template = "{tag}" +-starting_version = "8.6.0" # this is a backup for pip <= 22.0 where git-versioning doesn't work +- +-[tool.dynamic] +-version = "placeholder" # this is a placeholder for the version pulled with git-versioning +- + [tool.setuptools.packages.find] + where = [ "src" ] + exclude = [ "doc*" ] diff --git a/easybuild/easyconfigs/e/ESPResSo/ESPResSo-4.2.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/e/ESPResSo/ESPResSo-4.2.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..eb37f56eb35 --- /dev/null +++ b/easybuild/easyconfigs/e/ESPResSo/ESPResSo-4.2.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,60 @@ +easyblock = 'CMakeMake' + +name = 'ESPResSo' +version = '4.2.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://espressomd.org/wordpress' +description = """A software package for performing and analyzing scientific Molecular Dynamics simulations.""" + +source_urls = ['https://github.com/espressomd/espresso/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2bc02f91632b0030f1203759768bd718bd8a0005f72696980b12331b4bfa0d76'] + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Boost.MPI', '1.82.0'), + ('HDF5', '1.14.0'), + ('Mesa', '23.1.4'), + ('GSL', '2.7'), + ('IPython', '8.14.0'), + ('Pint', '0.23'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +# 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'] + +configopts = ' -DCMAKE_SKIP_RPATH=OFF -DWITH_TESTS=ON -DWITH_CUDA=ON' +# make sure the right Python is used (note: -DPython3_EXECUTABLE or -DPython_EXECUTABLE does not work!) +configopts += ' -DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python ' + +runtest = 'check_unit_tests && make check_python' + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +_binaries = ['ipypresso', 'pypresso'] +_libs = [ + 'Espresso_config', 'Espresso_core', 'Espresso_script_interface', 'Espresso_shapes', + '_init', 'analyze', 'code_info', 'electrokinetics', 'galilei', + 'integrate', 'interactions', 'lb', 'particle_data', 'polymer', 'profiler', + 'script_interface', 'system', 'thermostat', 'utils', 'version', +] + +_lib_path = 'lib/python%(pyshortver)s/site-packages/espressomd' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries] + + [_lib_path + '/%s.' % x + SHLIB_EXT for x in _libs], + 'dirs': ['bin', 'lib'] +} + +sanity_check_commands = ['pypresso -h', 'ipypresso -h'] + +moduleclass = 'chem' 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..62454399723 --- /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/EasyBuild/EasyBuild-4.9.3.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.3.eb new file mode 100644 index 00000000000..4059b342213 --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.3.eb @@ -0,0 +1,56 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.9.3' + +homepage = 'https://easybuilders.github.io/easybuild' +description = """EasyBuild is a software build and installation framework + written in Python that allows you to install software in a structured, + repeatable and robust way.""" + +toolchain = SYSTEM + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/10/a0/e5484d4078f7450042cd7b7a1af24fd3f8d0cb4818f4578e4c322ba488d8/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/ee/40/4f6412917f83429f9389b977903c8905f216cb211c8bf3111f28c3017677/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/13/95/44d1e10ceaaf08219ef50d1d97d500ba3b6b34f2d76dd1ff64def71612dc/', +] +# note: subdirectory for each unpacked source tarball is renamed because custom easyblock in older EasyBuild version +# that is used for installing EasyBuild with EasyBuild expects subdirectories with '-' rather than '_'; +# see also https://github.com/easybuilders/easybuild-easyblocks/pull/3358 +sources = [ + { + 'filename': 'easybuild_framework-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_framework-%(version)s easybuild-framework-%(version)s", + }, + { + 'filename': 'easybuild_easyblocks-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyblocks-%(version)s easybuild-easyblocks-%(version)s", + }, + { + 'filename': 'easybuild_easyconfigs-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyconfigs-%(version)s easybuild-easyconfigs-%(version)s", + }, +] +checksums = [ + {'easybuild_framework-4.9.3.tar.gz': '43bbcaa0a7b075eb6483054428ef4b1279a9fc850301171688f86899eaebfff8'}, + {'easybuild_easyblocks-4.9.3.tar.gz': '4f036be918f88fe2dadba87f15d696e9b4d3f8f06986c675b9fafc77b591649d'}, + {'easybuild_easyconfigs-4.9.3.tar.gz': 'f7f501c87cb16a8eb393f5e98cb3cd5f8e84314901e81ff50f8140681b415676'}, +] + +# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?) +# EasyBuild is a (set of) Python packages, so it depends on Python +# usually, we want to use the system Python, so no actual Python dependency is listed +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2]) + +sanity_check_paths = { + 'files': ['bin/eb'], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4.eb new file mode 100644 index 00000000000..064536bb936 --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4.eb @@ -0,0 +1,59 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.9.4' + +homepage = 'https://easybuilders.github.io/easybuild' +description = """EasyBuild is a software build and installation framework + written in Python that allows you to install software in a structured, + repeatable and robust way.""" + +toolchain = SYSTEM + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/bd/25/512d9e895a86f4df198274e8a5f6868406d97cc75da9acc5797f78139b52/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/d7/b0/b9289c78fafc21c5c01b225aeee89c69914166742e5f80955d49ed8f9722/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/ed/2c/7b2b22235ffe9310a93cbfef06fb3723466aa8ccc4aca4888b59433e55a6/', +] +# note: subdirectory for each unpacked source tarball is renamed because custom easyblock in older EasyBuild version +# that is used for installing EasyBuild with EasyBuild expects subdirectories with '-' rather than '_'; +# see also https://github.com/easybuilders/easybuild-easyblocks/pull/3358 +sources = [ + { + 'filename': 'easybuild_framework-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_framework-%(version)s easybuild-framework-%(version)s", + }, + { + 'filename': 'easybuild_easyblocks-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyblocks-%(version)s easybuild-easyblocks-%(version)s", + }, + { + 'filename': 'easybuild_easyconfigs-%(version)s.tar.gz', + 'extract_cmd': "tar xfvz %s && mv easybuild_easyconfigs-%(version)s easybuild-easyconfigs-%(version)s", + }, +] +patches = ['EasyBuild-4.9.4_fix-riscv-toolchain-opts-typo.patch'] +checksums = [ + {'easybuild_framework-4.9.4.tar.gz': '5b380a2e3a359f64f06789c390200b922a840f6b10b441e5163696a34bd9bc27'}, + {'easybuild_easyblocks-4.9.4.tar.gz': '1272f1e294090caafde8cbda72ae344ef400fdd161163781f67b3cffe761dd62'}, + {'easybuild_easyconfigs-4.9.4.tar.gz': 'beee4e098f5fee18f2029d6a0b893549aba26e075b147cc0008cb16fd4c8d982'}, + {'EasyBuild-4.9.4_fix-riscv-toolchain-opts-typo.patch': + '602d9abfdd90f435bdc877b1d2710a17ae577c790914e7bf61428dc7073ad1b6'}, +] + +# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?) +# EasyBuild is a (set of) Python packages, so it depends on Python +# usually, we want to use the system Python, so no actual Python dependency is listed +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2]) + +sanity_check_paths = { + 'files': ['bin/eb'], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4_fix-riscv-toolchain-opts-typo.patch b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4_fix-riscv-toolchain-opts-typo.patch new file mode 100644 index 00000000000..f93ba6247c4 --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.4_fix-riscv-toolchain-opts-typo.patch @@ -0,0 +1,23 @@ +https://github.com/easybuilders/easybuild-framework/pull/4668 +From 688c6709504c4b54f881b9a674c3c5dfd6acd241 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= +Date: Fri, 4 Oct 2024 16:35:35 +0200 +Subject: [PATCH] fix typo in veryloose toolchain option + +--- + easybuild/toolchains/compiler/gcc.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/easybuild/toolchains/compiler/gcc.py b/easybuild/toolchains/compiler/gcc.py +index e9748f3bda..fd50ad2c03 100644 +--- a/easybuild/toolchains/compiler/gcc.py ++++ b/easybuild/toolchains/compiler/gcc.py +@@ -85,7 +85,7 @@ class Gcc(Compiler): + COMPILER_UNIQUE_OPTION_MAP['strict'] = [] + COMPILER_UNIQUE_OPTION_MAP['precise'] = [] + COMPILER_UNIQUE_OPTION_MAP['loose'] = ['fno-math-errno'] +- COMPILER_UNIQUE_OPTION_MAP['verloose'] = ['fno-math-errno'] ++ COMPILER_UNIQUE_OPTION_MAP['veryloose'] = ['fno-math-errno'] + + # used when 'optarch' toolchain option is enabled (and --optarch is not specified) + COMPILER_OPTIMAL_ARCHITECTURE_OPTION = { 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/EvidentialGene/EvidentialGene-2023.07.15-gompi-2023a.eb b/easybuild/easyconfigs/e/EvidentialGene/EvidentialGene-2023.07.15-gompi-2023a.eb new file mode 100644 index 00000000000..c4ae0c4e12d --- /dev/null +++ b/easybuild/easyconfigs/e/EvidentialGene/EvidentialGene-2023.07.15-gompi-2023a.eb @@ -0,0 +1,40 @@ +easyblock = "PackedBinary" + +name = "EvidentialGene" +version = '2023.07.15' +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 = ['8fe8e5c21ac3f8b7134d8e26593fe66647eb8b7ba2c1cd1c158fc811769b9539'] + +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/Exonerate/Exonerate-2.4.0-GCC-12.3.0.eb b/easybuild/easyconfigs/e/Exonerate/Exonerate-2.4.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..4e57e85a280 --- /dev/null +++ b/easybuild/easyconfigs/e/Exonerate/Exonerate-2.4.0-GCC-12.3.0.eb @@ -0,0 +1,47 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics +# Biozentrum - University of Basel +# foss-2016b modified by: +# Adam Huffman +# The Francis Crick Institute + +easyblock = 'ConfigureMake' + +name = 'Exonerate' +version = '2.4.0' + +homepage = 'https://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate' +# also https://github.com/nathanweeks/exonerate +description = """ Exonerate is a generic tool for pairwise sequence comparison. + It allows you to align sequences using a many alignment models, using either + exhaustive dynamic programming, or a variety of heuristics. """ + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://ftp.ebi.ac.uk/pub/software/vertebrategenomics/%(namelower)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['f849261dc7c97ef1f15f222e955b0d3daf994ec13c9db7766f1ac7e77baa4042'] + +builddependencies = [ + ('pkgconf', '1.9.5'), +] +dependencies = [ + ('GLib', '2.77.1'), +] + +# parallel build fails +parallel = 1 + +runtest = 'check' + +_bins = ['exonerate', 'fastaclip', 'fastacomposition', 'fastafetch', 'fastaoverlap', 'ipcress'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins], + 'dirs': ['share'], +} + +sanity_check_commands = ['%s -h | grep "from exonerate version %%(version)s"' % x for x in _bins] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ecBuild/ecBuild-3.8.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/e/ecBuild/ecBuild-3.8.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..97c3992ce77 --- /dev/null +++ b/easybuild/easyconfigs/e/ecBuild/ecBuild-3.8.5-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'Tarball' + +name = 'ecBuild' +version = '3.8.5' + +homepage = 'https://ecbuild.readthedocs.io/' + +description = """ +A CMake-based build system, consisting of a collection of CMake macros and +functions that ease the managing of software build systems """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'ecmwf' +sources = [ + { + 'source_urls': [GITHUB_SOURCE], + 'filename': '%(version)s.tar.gz', + 'extract_cmd': 'tar -xzf %s --strip-components=1', + }, +] +checksums = ['aa0c44cab0fffec4c0b3542e91ebcc736b3d41b68a068d30c023ec0df5f93425'] + +builddependencies = [('binutils', '2.42')] + +buildininstalldir = True + +skipsteps = ['install'] + +sanity_check_paths = { + 'files': ['bin/ecbuild', 'cmake/ecbuild-config.cmake'], + 'dirs': ['bin', 'lib', 'share', 'cmake'], +} + +sanity_check_commands = ['ecbuild --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb b/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb new file mode 100644 index 00000000000..2aa0915ea2e --- /dev/null +++ b/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'ecCodes' +version = '2.38.3' + +homepage = 'https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home' +description = """ecCodes is a package developed by ECMWF which provides an application programming interface and + a set of tools for decoding and encoding messages in the following formats: WMO FM-92 GRIB edition 1 and edition 2, + WMO FM-94 BUFR edition 3 and edition 4, WMO GTS abbreviated header (only decoding).""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'usempi': False} + +source_urls = ['https://github.com/ecmwf/eccodes/archive/refs/tags/'] +sources = [{'download_filename': '%(version)s.tar.gz', 'filename': '%(namelower)s-%(version)s.tar.gz'}] +checksums = ['2f13adc4fbdfa3ea11f75ce4ed8937bf40a8fcedd760a519b15e4e17dedc9424'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('ecBuild', '3.8.5'), +] +dependencies = [ + ('netCDF', '4.9.2'), + ('JasPer', '4.2.4'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('libaec', '1.1.3'), +] + +# Python bindings are provided by a separate package 'eccodes-python' +configopts = "-DENABLE_NETCDF=ON -DENABLE_PNG=ON -DENABLE_PYTHON=OFF -DENABLE_JPG=ON " +configopts += "-DENABLE_JPG_LIBJASPER=ON -DENABLE_ECCODES_THREADS=ON" + + +sanity_check_paths = { + 'files': ['bin/bufr_compare', 'bin/bufr_copy', 'bin/bufr_dump', 'bin/bufr_filter', 'bin/bufr_get', 'bin/bufr_ls', + 'bin/grib_compare', 'bin/grib_copy', 'bin/grib_dump', 'bin/grib_filter', 'bin/grib_get', 'bin/grib_ls', + 'bin/gts_compare', 'bin/gts_copy', 'bin/gts_dump', 'bin/gts_filter', 'bin/gts_get', 'bin/gts_ls', + 'bin/metar_compare', 'bin/metar_copy', 'bin/metar_dump', 'bin/metar_filter', 'bin/metar_get', + 'bin/metar_ls', 'bin/codes_count', 'bin/codes_info', 'bin/codes_split_file', + 'lib/libeccodes_f90.%s' % SHLIB_EXT, 'lib/libeccodes.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb b/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb new file mode 100644 index 00000000000..96672c2751b --- /dev/null +++ b/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'edlib' +version = '1.3.9.post1' + +homepage = 'https://martinsos.github.io/edlib' +description = "Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance." + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('cogapp', '3.4.1', { + 'checksums': ['a806d5db9e318a1a2d3fce988008179168e7db13e5e55b19b79763f9bb9d2982'], + }), + (name, version, { + 'checksums': ['b0fb6e85882cab02208ccd6daa46f80cb9ff1d05764e91bf22920a01d7a6fbfa'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/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..4937c8bba74 --- /dev/null +++ b/easybuild/easyconfigs/e/eggnog-mapper/eggnog-mapper-2.1.12-foss-2023a.eb @@ -0,0 +1,56 @@ +# 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 && " + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +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 552e826a3a2..45d4f74af79 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/expecttest/expecttest-0.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/e/expecttest/expecttest-0.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a70bf3973ca --- /dev/null +++ b/easybuild/easyconfigs/e/expecttest/expecttest-0.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'expecttest' +version = '0.2.1' + +homepage = 'https://github.com/ezyang/expecttest' +description = """This library implements expect tests (also known as "golden" tests). Expect tests are a method of + writing tests where instead of hard-coding the expected output of a test, you run the test to get the output, and + the test framework automatically populates the expected output. If the output of the test changes, you can rerun + the test with the environment variable EXPECTTEST_ACCEPT=1 to automatically update the expected output.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e52b1cf8a6f84506e6962a0bbdd248ea442124d826e849f263ec1c322ebb73f5'] + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] +dependencies = [ + ('Python', '3.12.3'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +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..58fd687455a --- /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/FFmpeg/FFmpeg-7.0.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-7.0.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..246a8306b76 --- /dev/null +++ b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-7.0.2-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'FFmpeg' +version = '7.0.2' + +homepage = 'https://www.ffmpeg.org/' +description = "A complete, cross-platform solution to record, convert and stream audio and video." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://%(namelower)s.org/releases/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['1ed250407ea8f955cca2f1139da3229fbc13032a0802e4b744be195865ff1541'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('ffnvcodec', '12.2.72.0', '', SYSTEM), # optional nvenc/dec support +] +dependencies = [ + ('NASM', '2.16.03'), + ('zlib', '1.3.1'), + ('bzip2', '1.0.8'), + ('x264', '20240513'), + ('LAME', '3.100'), + ('x265', '3.6'), + ('X11', '20240607'), + ('freetype', '2.13.2'), + ('fontconfig', '2.15.0'), + ('FriBidi', '1.0.15'), + ('SDL2', '2.30.6'), +] + +configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" ' +configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig ' +configopts += '--enable-libfribidi --enable-sdl2 --disable-htmlpages' + +sanity_check_paths = { + 'files': ['bin/ff%s' % x for x in ['mpeg', 'probe', 'play']] + + ['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc', + 'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']], + 'dirs': ['include'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/f/FLAC/FLAC-1.4.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/FLAC/FLAC-1.4.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f767483f7cd --- /dev/null +++ b/easybuild/easyconfigs/f/FLAC/FLAC-1.4.3-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'FLAC' +version = '1.4.3' + +homepage = 'https://xiph.org/flac/' +description = """FLAC stands for Free Lossless Audio Codec, an audio format similar to MP3, but lossless, meaning +that audio is compressed in FLAC without any loss in quality.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.osuosl.org/pub/xiph/releases/flac/'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['6c58e69cd22348f441b861092b825e591d0b822e106de6eb0ee4d05d27205b70'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('libogg', '1.3.5')] + +configopts = '--enable-static --enable-shared' + +sanity_check_paths = { + 'files': ['bin/flac', 'lib/libFLAC.a', 'lib/libFLAC++.a', + 'lib/libFLAC.%s' % SHLIB_EXT, 'lib/libFLAC++.%s' % SHLIB_EXT], + 'dirs': ['include/FLAC', 'include/FLAC++'], +} + +sanity_check_commands = ["flac --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2022b.eb b/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2022b.eb new file mode 100644 index 00000000000..ce4946fff26 --- /dev/null +++ b/easybuild/easyconfigs/f/FLANN/FLANN-1.9.2-foss-2022b.eb @@ -0,0 +1,42 @@ +# 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': '2022b'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/mariusmuja/flann/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['e26829bb0017f317d9cc45ab83ddcb8b16d75ada1ae07157006c1e7d601c8824'] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('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/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 a55db18bfc6..1a9b1727bba 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 @@ -60,6 +60,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/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b44229828a4 --- /dev/null +++ b/easybuild/easyconfigs/f/FastTree/FastTree-2.1.11-GCCcore-13.2.0.eb @@ -0,0 +1,42 @@ +# Updated from previous config +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'CmdCp' + +name = 'FastTree' +version = '2.1.11' + +homepage = 'http://www.microbesonline.org/fasttree/' +description = """FastTree infers approximately-maximum-likelihood phylogenetic trees from alignments of nucleotide + or protein sequences. FastTree can handle alignments with up to a million of sequences in a reasonable amount of + time and memory. """ + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'openmp': True} + +# HTTPS cert error: +# hostname 'www.microbesonline.org' doesn't match either of 'genomics.lbl.gov', 'mojave.qb3.berkeley.edu', ... +source_urls = ['http://www.microbesonline.org/fasttree/'] +sources = [{'filename': '%(name)s-%(version)s.c', 'extract_cmd': 'cp %s FastTree.c'}] +checksums = ['9026ae550307374be92913d3098f8d44187d30bea07902b9dcbfb123eaa2050f'] + +builddependencies = [('binutils', '2.40')] + +cmds_map = [('%(name)s-%(version)s.c', '$CC -DOPENMP $CFLAGS $LIBS %%(source)s -o %(name)s')] + +files_to_copy = [(['FastTree'], 'bin')] + +# as FastTree is built with OpenMP, the correct binary is FastTreeMP +# the FastTree binary should normally be built without OpenMP, but let’s keep it as is for backward compatibility +# see http://www.microbesonline.org/fasttree/#OpenMP +postinstallcmds = ['cd %(installdir)s/bin && ln -s FastTree FastTreeMP'] + +sanity_check_paths = { + 'files': ['bin/FastTree'], + 'dirs': [], +} + +sanity_check_commands = ['FastTree 2>&1 | grep "FastTree Version %(version)s"'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/Filtlong/Filtlong-0.2.1-GCC-12.3.0.eb b/easybuild/easyconfigs/f/Filtlong/Filtlong-0.2.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..25bf2c570f0 --- /dev/null +++ b/easybuild/easyconfigs/f/Filtlong/Filtlong-0.2.1-GCC-12.3.0.eb @@ -0,0 +1,39 @@ +# 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 = 'Filtlong' +version = '0.2.1' + +homepage = 'https://github.com/rrwick/Filtlong' +description = """Filtlong is a tool for filtering long reads by quality. It can take a set + of long reads and produce a smaller, better subset. It uses both read length (longer is better) + and read identity (higher is better) when choosing which reads pass the filter""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/rrwick/Filtlong/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e6f47675e87f98cf2481a60bef5cad38396f1e4db653a5c1673139f37770273a'] + +unpack_options = '--strip-components=1' + +parallel = 1 + +dependencies = [ + ('zlib', '1.2.13'), +] + +files_to_copy = ["*"] + +sanity_check_paths = { + 'files': ['bin/filtlong'], + 'dirs': [] +} + +sanity_check_commands = ["filtlong --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/Flask/Flask-3.0.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/Flask/Flask-3.0.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..46b9452f48b --- /dev/null +++ b/easybuild/easyconfigs/f/Flask/Flask-3.0.3-GCCcore-13.3.0.eb @@ -0,0 +1,65 @@ +easyblock = 'PythonBundle' + +name = 'Flask' +version = '3.0.3' + +homepage = 'https://flask.palletsprojects.com/' +description = """ +Flask is a lightweight WSGI web application framework. It is designed to make +getting started quick and easy, with the ability to scale up to complex +applications. +This module includes the Flask extensions: Flask-Cors""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('itsdangerous', '2.2.0', { + 'checksums': ['e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173'], + }), + ('werkzeug', '3.0.4', { + 'checksums': ['34f2371506b250df4d4f84bfe7b0921e4762525762bbd936614909fe25cd7306'], + }), + ('asgiref', '3.7.2', { + 'checksums': ['9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed'], + }), + ('blinker', '1.8.2', { + 'checksums': ['8f77b09d3bf7c795e969e9486f39c2c5e9c39d4ee07424be2bc594ece9642d83'], + }), + ('flask', version, { + 'checksums': ['ceb27b0af3823ea2737928a4d99d125a06175b8512c445cbd9a9ce200ef76842'], + }), + ('msgspec', '0.18.6', { + 'checksums': ['a59fc3b4fcdb972d09138cb516dbde600c99d07c38fd9372a6ef500d2d031b4e'], + }), + ('Flask-Cors', '5.0.0', { + 'sources': ['flask_cors-%(version)s.tar.gz'], + 'checksums': ['5aadb4b950c4e93745034594d9f3ea6591f734bb3662e16e255ffbf5e89c88ef'], + }), + ('cachelib', '0.13.0', { + 'checksums': ['209d8996e3c57595bee274ff97116d1d73c4980b2fd9a34c7846cd07fd2e1a48'], + }), + ('Flask-Session', '0.8.0', { + 'sources': ['flask_session-%(version)s.tar.gz'], + 'checksums': ['20e045eb01103694e70be4a49f3a80dbb1b57296a22dc6f44bbf3f83ef0742ff'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['%(namelower)s --version'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..4aeb0c7d815 --- /dev/null +++ b/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a-CUDA-12.1.1.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'Flax' +version = '0.8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://flax.readthedocs.io' +description = """Flax is a high-performance neural network library and ecosystem for JAX that is +designed for flexibility: Try new forms of training by forking an example and +by modifying the training loop, not by adding features to a framework.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25', versionsuffix), + ('Optax', '0.2.2', versionsuffix), + ('protobuf-python', '4.24.0'), + ('PyYAML', '6.0'), +] + +use_pip = True + +exts_list = [ + ('nest_asyncio', '1.6.0', { + 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], + }), + ('orbax_checkpoint', '0.5.15', { + 'modulename': 'orbax.checkpoint', + 'checksums': ['15195e8d1b381b56f23a62a25599a3644f5d08655fa64f60bb1b938b8ffe7ef3'], + }), + ('tensorstore', '0.1.60', { + 'checksums': ['88da8f1978982101b8dbb144fd29ee362e4e8c97fc595c4992d555f80ce62a79'], + }), + ('flax', '0.8.4', { + 'checksums': ['968683f850198e1aa5eb2d9d1e20bead880ef7423c14f042db9d60848cb1c90b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a.eb b/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a.eb new file mode 100644 index 00000000000..dedc08531c3 --- /dev/null +++ b/easybuild/easyconfigs/f/Flax/Flax-0.8.4-gfbf-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonBundle' + +name = 'Flax' +version = '0.8.4' + +homepage = 'https://flax.readthedocs.io' +description = """Flax is a high-performance neural network library and ecosystem for JAX that is +designed for flexibility: Try new forms of training by forking an example and +by modifying the training loop, not by adding features to a framework.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25'), + ('Optax', '0.2.2'), + ('protobuf-python', '4.24.0'), + ('PyYAML', '6.0'), +] + +use_pip = True + +exts_list = [ + ('nest_asyncio', '1.6.0', { + 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], + }), + ('orbax_checkpoint', '0.5.15', { + 'modulename': 'orbax.checkpoint', + 'checksums': ['15195e8d1b381b56f23a62a25599a3644f5d08655fa64f60bb1b938b8ffe7ef3'], + }), + ('tensorstore', '0.1.60', { + 'checksums': ['88da8f1978982101b8dbb144fd29ee362e4e8c97fc595c4992d555f80ce62a79'], + }), + ('flax', '0.8.4', { + 'checksums': ['968683f850198e1aa5eb2d9d1e20bead880ef7423c14f042db9d60848cb1c90b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' 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..50f72e07c0d --- /dev/null +++ b/easybuild/easyconfigs/f/FloPy/FloPy-3.8.2-gfbf-2023a.eb @@ -0,0 +1,26 @@ +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'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/f/FragGeneScan/FragGeneScan-1.31-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/FragGeneScan/FragGeneScan-1.31-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..8466e596a3d --- /dev/null +++ b/easybuild/easyconfigs/f/FragGeneScan/FragGeneScan-1.31-GCCcore-12.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'MakeCp' + +name = 'FragGeneScan' +version = '1.31' + +homepage = 'https://omics.informatics.indiana.edu/FragGeneScan/' +description = "FragGeneScan is an application for finding (fragmented) genes in short reads." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s%(version)s.tar.gz'] +checksums = ['cd3212d0f148218eb3b17d24fcd1fc897fb9fee9b2c902682edde29f895f426c'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('Perl', '5.36.1')] + +fix_perl_shebang_for = ['*.pl'] + +prebuildopts = "make clean && " +buildopts = 'CC="$CC" CFLAG="$CFLAGS" fgs && chmod -R go+rx *.pl train example' + +files_to_copy = ['FragGeneScan', 'run_FragGeneScan.pl', 'example', 'train'] + +modextrapaths = {'PATH': ['']} + +sanity_check_paths = { + 'files': ['FragGeneScan', 'run_FragGeneScan.pl'], + 'dirs': ['example', 'train'], +} + +sanity_check_commands = [ + "run_FragGeneScan.pl help", + "run_FragGeneScan.pl -genome=./example/NC_000913.fna -out=./example/NC_000913-fgs -complete=1 -train=complete", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.15-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.15-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a31f21a37dd --- /dev/null +++ b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.15-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'FriBidi' +version = '1.0.15' + +homepage = 'https://github.com/fribidi/fribidi' + +description = """ + The Free Implementation of the Unicode Bidirectional Algorithm. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/fribidi/fribidi/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['0bbc7ff633bfa208ae32d7e369cf5a7d20d5d2557a0b067c9aa98bcbf9967587'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('Autotools', '20231222'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h', + 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/f/face-recognition/face-recognition-1.3.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/f/face-recognition/face-recognition-1.3.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..d06d8172e1d --- /dev/null +++ b/easybuild/easyconfigs/f/face-recognition/face-recognition-1.3.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'face-recognition' +version = '1.3.0' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://github.com/ageitgey/face_recognition' +description = """Recognize and manipulate faces from Python or from the command line with + the world’s simplest face recognition library.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pillow', '10.0.0'), + ('dlib', '19.24.6', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('face-recognition-models', '0.3.0', { + 'sources': ['face_recognition_models-%(version)s.tar.gz'], + 'checksums': ['b79bd200a88c87c9a9d446c990ae71c5a626d1f3730174e6d570157ff1d896cf'], + }), + (name, version, { + 'sources': ['face_recognition-%(version)s.tar.gz'], + 'checksums': ['5e5efdd1686aa566af0d3cc1313b131e4b197657a8ffd03669e6d3fad92705ec'], + }), +] + +sanity_check_paths = { + 'files': ['bin/face_detection', 'bin/face_recognition'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "face_detection --help", + "face_recognition --help", +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/f/fastfilters/fastfilters-0.3-foss-2023a.eb b/easybuild/easyconfigs/f/fastfilters/fastfilters-0.3-foss-2023a.eb new file mode 100644 index 00000000000..a9d67a03798 --- /dev/null +++ b/easybuild/easyconfigs/f/fastfilters/fastfilters-0.3-foss-2023a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'fastfilters' +version = '0.3' + +homepage = 'https://github.com/ilastik/fastfilters/' +description = """Fast gaussian and derivative convolutional filters.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'optarch': False} + +sources = [{ + 'filename': 'v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/ilastik', + 'repo_name': 'fastfilters', + 'tag': 'v%(version)s', + 'recursive': True, + 'keep_git_dir': True, + } +}] +checksums = [None] + +builddependencies = [ + ('CMake', '3.26.3'), +] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('pybind11', '2.11.1'), +] + +configopts = '-DFF_INSTALL_DIR="%(installdir)s/lib/python%(pyshortver)s/site-packages/" ' +configopts += '-DPYTHON_EXECUTABLE="$EBROOTPYTHON/bin/python"' + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib', 'include'], +} + +sanity_check_commands = ["python -c 'import fastfilters'"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/fastp/fastp-0.23.4-GCC-13.2.0.eb b/easybuild/easyconfigs/f/fastp/fastp-0.23.4-GCC-13.2.0.eb new file mode 100644 index 00000000000..49b2a29c4f9 --- /dev/null +++ b/easybuild/easyconfigs/f/fastp/fastp-0.23.4-GCC-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'fastp' +version = '0.23.4' + +homepage = 'https://github.com/OpenGene/fastp' +description = """A tool designed to provide fast all-in-one preprocessing for FastQ files. + This tool is developed in C++ with multithreading supported to afford high performance.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +github_account = 'OpenGene' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['4fad6db156e769d46071add8a778a13a5cb5186bc1e1a5f9b1ffd499d84d72b5'] + +dependencies = [ + ('zlib', '1.2.13'), + ('libdeflate', '1.19'), + ('ISA-L', '2.31.0'), +] + +skipsteps = ['configure'] + +buildopts = ' CXX=${CXX}' + +preinstallopts = 'mkdir -p %(installdir)s/bin && ' + +installopts = 'PREFIX=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/fastp'], + 'dirs': [], +} + +sanity_check_commands = [('fastp', '--help')] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.2.72.0.eb b/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.2.72.0.eb new file mode 100644 index 00000000000..cc4461c3a8b --- /dev/null +++ b/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.2.72.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'ffnvcodec' +version = '12.2.72.0' + +homepage = 'https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git' + +description = """FFmpeg nvidia headers. Adds support for nvenc and nvdec. Requires Nvidia GPU and drivers to be present +(picked up dynamically).""" + +toolchain = SYSTEM + +sources = [{ + 'git_config': { + 'url': 'https://git.videolan.org/git/ffmpeg/', + 'repo_name': 'nv-codec-headers', + 'tag': 'n%(version)s', + }, + 'filename': SOURCE_TAR_GZ, +}] +checksums = [None] + +skipsteps = ['configure'] + +preinstallopts = 'sed -i "s|PREFIX =.*|PREFIX ?= %(installdir)s|" Makefile && ' + +sanity_check_paths = { + 'files': ['include/ffnvcodec/nvEncodeAPI.h', 'lib/pkgconfig/ffnvcodec.pc'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/fish/fish-3.7.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/fish/fish-3.7.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..0c7e084ac23 --- /dev/null +++ b/easybuild/easyconfigs/f/fish/fish-3.7.1-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'fish' + +version = '3.7.1' + +homepage = 'https://fishshell.com/' +description = """ +fish is a smart and user-friendly command line shell for Linux, macOS, and the rest of the family. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/fish-shell/fish-shell/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['614c9f5643cd0799df391395fa6bbc3649427bb839722ce3b114d3bbc1a3b250'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3') +] + +dependencies = [ + ('ncurses', '6.5'), +] + +configopts = '-DBUILD_DOCS=off ' + +sanity_check_paths = { + 'files': ['bin/fish'], + 'dirs': [], +} + +sanity_check_commands = ['fish --version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/flash-attention/flash-attention-2.6.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/f/flash-attention/flash-attention-2.6.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..754eef2c70e --- /dev/null +++ b/easybuild/easyconfigs/f/flash-attention/flash-attention-2.6.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'flash-attention' +version = '2.6.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/Dao-AILab/flash-attention' +description = """Fast and memory-efficient exact attention.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('Ninja', '1.11.1')] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('CUDA', '12.1.1', '', SYSTEM), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('einops', '0.7.0'), + ('CUTLASS', '3.4.0', versionsuffix), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + (name, version, { + 'modulename': 'flash_attn', + # solves Invalid cross-device link error + # https://github.com/Dao-AILab/flash-attention/issues/875 + 'preinstallopts': "sed -i 's/os.rename/shutil.move/' setup.py && ", + 'source_urls': ['https://github.com/Dao-AILab/flash-attention/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['136e149165d4c8c67273d16daa957b5cd5e6fc629061ffd39fa5a25224454d6c'], + }), +] + +sanity_check_commands = [ + "python -c 'from flash_attn import flash_attn_qkvpacked_func, flash_attn_func'", +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/flatbuffers-python/flatbuffers-python-24.3.25-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/flatbuffers-python/flatbuffers-python-24.3.25-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..6e3bd315965 --- /dev/null +++ b/easybuild/easyconfigs/f/flatbuffers-python/flatbuffers-python-24.3.25-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'flatbuffers-python' +version = '24.3.25' + +homepage = 'https://github.com/google/flatbuffers/' +description = """Python Flatbuffers runtime library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/f/flatbuffers'] +sources = [{'download_filename': 'flatbuffers-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['de2ec5b203f21441716617f38443e0a8ebf3d25bf0d9c0bb0ce68fa00ad546a4'] + +dependencies = [ + ('binutils', '2.42'), + ('Python', '3.12.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +preinstallopts = 'VERSION=%(version)s ' +options = {'modulename': 'flatbuffers'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/flatbuffers/flatbuffers-24.3.25-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/flatbuffers/flatbuffers-24.3.25-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..42c0b9a28f1 --- /dev/null +++ b/easybuild/easyconfigs/f/flatbuffers/flatbuffers-24.3.25-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'CMakeNinja' + +name = 'flatbuffers' +version = '24.3.25' + +homepage = 'https://github.com/google/flatbuffers/' +description = """FlatBuffers: Memory Efficient Serialization Library""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/google/flatbuffers/archive/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['4157c5cacdb59737c5d627e47ac26b140e9ee28b1102f812b36068aab728c1ed'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('Python', '3.12.3'), +] + +configopts = '-DFLATBUFFERS_ENABLE_PCH=ON ' + +sanity_check_paths = { + 'files': ['include/flatbuffers/flatbuffers.h', 'bin/flatc', 'lib/libflatbuffers.a'], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-12.3.0.eb index 15b9ad83d78..a19ba324250 100644 --- a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-12.3.0.eb @@ -17,11 +17,8 @@ dependencies = [ ('Python', '3.11.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('idna', '3.4', { diff --git a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb index 79b1a625e7e..9ef1de6c8b7 100644 --- a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.11.5'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('idna', '3.4', { diff --git a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.3.0.eb index ddc99b99a37..650b15edaa5 100644 --- a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.3.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.12.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('idna', '3.7', { 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/fonttools/fonttools-4.53.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..8453a35a695 --- /dev/null +++ b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'fonttools' +version = '4.53.1' + +homepage = 'https://python-markdown.github.io/' +description = """ +fontTools is a library for manipulating fonts, written in Python. +The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, +which is also called TTX. +It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'] + +builddependencies = [('binutils', '2.38')] +dependencies = [('Python', '3.10.4')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'fontTools'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..cfaada6dee8 --- /dev/null +++ b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'fonttools' +version = '4.53.1' + +homepage = 'https://python-markdown.github.io/' +description = """ +fontTools is a library for manipulating fonts, written in Python. +The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, +which is also called TTX. +It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'] + +builddependencies = [('binutils', '2.39')] +dependencies = [('Python', '3.10.8')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'fontTools'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..bf71a8f341f --- /dev/null +++ b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-12.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'fonttools' +version = '4.53.1' + +homepage = 'https://python-markdown.github.io/' +description = """ +fontTools is a library for manipulating fonts, written in Python. +The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, +which is also called TTX. +It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'] + +builddependencies = [('binutils', '2.40')] +dependencies = [('Python', '3.11.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'fontTools'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..0e8a62e088b --- /dev/null +++ b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'fonttools' +version = '4.53.1' + +homepage = 'https://python-markdown.github.io/' +description = """ +fontTools is a library for manipulating fonts, written in Python. +The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, +which is also called TTX. +It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'] + +builddependencies = [('binutils', '2.40')] +dependencies = [('Python', '3.11.5')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'fontTools'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ed395cfd0ee --- /dev/null +++ b/easybuild/easyconfigs/f/fonttools/fonttools-4.53.1-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'fonttools' +version = '4.53.1' + +homepage = 'https://python-markdown.github.io/' +description = """ +fontTools is a library for manipulating fonts, written in Python. +The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, +which is also called TTX. +It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'fontTools'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5184f1f3c1e --- /dev/null +++ b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'fplll' +version = '5.4.5' + +homepage = 'https://github.com/fplll/fplll' +description = """fplll contains implementations of several lattice algorithms. + The implementation relies on floating-point orthogonalization, and the 1982 paper from +Lenstra, Lenstra Jr. and Lovasz (LLL) is central to the code, hence the name.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/fplll/fplll/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['76d3778f0326597ed7505bab19493a9bf6b73a5c5ca614e8fb82f42105c57d00'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('MPFR', '4.2.1'), +] + +sanity_check_paths = { + 'files': ['bin/fplll', 'lib/libfplll.%s' % SHLIB_EXT, 'include/fplll.h'], + 'dirs': ['share'] +} + +sanity_check_commands = ["fplll --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/f/fpylll/fpylll-0.6.1-foss-2023b.eb b/easybuild/easyconfigs/f/fpylll/fpylll-0.6.1-foss-2023b.eb new file mode 100644 index 00000000000..5361252deb7 --- /dev/null +++ b/easybuild/easyconfigs/f/fpylll/fpylll-0.6.1-foss-2023b.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'fpylll' +version = '0.6.1' + +homepage = 'https://pypi.org/project/fpylll' +description = "A Python wrapper for fplll." + +# can be moved down to gfbf in more recent toolchain versions +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['dfd9529a26c50993a2a716177debd7994312219070574cad31b35b4f0c040a19'] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('cysignals', '1.11.4'), + ('fplll', '5.4.5'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/f/freud-analysis/freud-analysis-2.6.2-foss-2021a.eb b/easybuild/easyconfigs/f/freud-analysis/freud-analysis-2.6.2-foss-2021a.eb new file mode 100644 index 00000000000..8274a709f9f --- /dev/null +++ b/easybuild/easyconfigs/f/freud-analysis/freud-analysis-2.6.2-foss-2021a.eb @@ -0,0 +1,46 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'PythonBundle' + +name = 'freud-analysis' +version = '2.6.2' + +homepage = 'https://github.com/glotzerlab/freud' +description = """The freud Python library provides a simple, flexible, powerful set of tools for analyzing trajectories +obtained from molecular dynamics or Monte Carlo simulations. High performance, parallelized C++ is used to compute +standard tools such as radial distribution functions, correlation functions, order parameters, and clusters, as well as +original analysis methods including potentials of mean force and torque (PMFTs) and local environment matching. The +freud library supports many input formats and outputs NumPy arrays, enabling integration with the scientific Python +ecosystem for many typical materials science workflows.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + ('pkg-config', '0.29.2'), + ('CMake', '3.20.1'), + ('scikit-build', '0.11.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('tbb', '2020.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('rowan', '1.3.0.post1', { + 'source_urls': ['https://pypi.python.org/packages/source/r/rowan'], + 'checksums': ['8f1d0e3279f80c6ae1ee68a90955301853b5586f64e42ba4c27d85504d525e4f'], + }), + (name, version, { + 'modulename': 'freud', + 'source_urls': ['https://pypi.python.org/packages/source/f/freud-analysis'], + 'checksums': ['1cc1b95a8a386e0ac7162246b42be800cfdaf335684a614aae02841aa4df6614'], + }), +] + +moduleclass = 'vis' 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..ed9d5580415 --- /dev/null +++ b/easybuild/easyconfigs/f/funannotate/funannotate-1.8.17-foss-2023a.eb @@ -0,0 +1,94 @@ +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'), +] + +use_pip = True + +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", +] + + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb b/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb new file mode 100644 index 00000000000..6fd245d2079 --- /dev/null +++ b/easybuild/easyconfigs/g/GATE/GATE-9.4-foss-2023a.eb @@ -0,0 +1,29 @@ +name = 'GATE' +version = '9.4' + +homepage = 'http://www.opengatecollaboration.org/' +description = """GATE is an advanced opensource software developed by the international OpenGATE collaboration and + dedicated to the numerical simulations in medical imaging. It currently supports simulations of Emission Tomography + (Positron Emission Tomography - PET and Single Photon Emission Computed Tomography - SPECT), and Computed Tomography""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/OpenGATE/Gate/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['96c53f6ab1b25c0e540d8f9564bce0049371b378de80a7118a0ff8834c6c117c'] + +builddependencies = [ + ('CMake', '3.26.3'), +] +dependencies = [ + ('Geant4', '11.2.2'), + ('CLHEP', '2.4.7.1'), + ('ROOT', '6.30.06'), +] + +preinstallopts = "sed -i 's|/usr/local/bin|%(installdir)s/bin|g' Makefile &&" + +# enable extra capabilities (Davis requires Geant4 10.04 or newer) +configopts = "-DGATE_USE_OPTICAL=1 -DGATE_USE_DAVIS=1" + +moduleclass = 'cae' 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/GATK/GATK-4.6.0.0-GCCcore-13.2.0-Java-17.eb b/easybuild/easyconfigs/g/GATK/GATK-4.6.0.0-GCCcore-13.2.0-Java-17.eb new file mode 100644 index 00000000000..1c700e8eab0 --- /dev/null +++ b/easybuild/easyconfigs/g/GATK/GATK-4.6.0.0-GCCcore-13.2.0-Java-17.eb @@ -0,0 +1,55 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 Cyprus Institute / CaSToRC, University of Luxembourg / LCSB +# Authors:: George Tsouloupas , Fotis Georgatos , +# Kenneth Hoste (UGent) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# Modified by: Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Modified for version 4.0.5.1 by: Ruben van Dijk, University of Groningen +# Modified for version 4.2.3.0 by: J. Sassmannshausen / GSTT +# Modified for version 4.4.0.0 by: Thomas Eylenbosch / Gluo NV +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.6.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': '13.2.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['a5d31e34630f355e5a119894f2587fec47049fedff04300f6633c31ef14c3a66'] + +dependencies = [ + ('Java', '17', '', SYSTEM), + ('Python', '3.11.5'), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} + +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +moduleclass = 'bio' 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/GHC/GHC-9.10.1-x86_64.eb b/easybuild/easyconfigs/g/GHC/GHC-9.10.1-x86_64.eb new file mode 100644 index 00000000000..2074b920ebd --- /dev/null +++ b/easybuild/easyconfigs/g/GHC/GHC-9.10.1-x86_64.eb @@ -0,0 +1,82 @@ +# This is a binary install that requires a './configure' and 'make install' steps for GHC. +# We pull the centos7 binary tarball as is the one built against oldest system libs, +# making it upwards compatible with newer distros. +# +# To get a functional 'ghc' binary on the SYSTEM toolchain we need +# gmp headers and ncurses libtinfo.so.5, to avoid requiring extra OS deps for them +# we include them in this bundle. +# Binaries obtained with ghc do not require them, so it should be possible to use this bundle +# just as builddep among different toolchains. +# +# For details, see the PR discussion: +# https://github.com/easybuilders/easybuild-easyconfigs/pull/11310 + +easyblock = 'Bundle' + +name = 'GHC' +version = '9.10.1' +versionsuffix = '-x86_64' + +homepage = 'https://haskell.org/ghc/' +description = """The Glorious/Glasgow Haskell Compiler""" + +toolchain = SYSTEM + +builddependencies = [ + ('binutils', '2.42'), + ('M4', '1.4.19'), +] + +default_easyblock = 'ConfigureMake' + +local_distro_tarball = 'centos7' + +components = [ + ('GMP', '6.3.0', { + 'source_urls': [GNU_SOURCE], + 'sources': [SOURCELOWER_TAR_BZ2], + 'checksums': ['ac28211a7cfb609bae2e2c8d6058d66c8fe96434f740cf6fe2e47b000d1c20cb'], + 'configopts': ' --enable-cxx', + 'start_dir': '%(namelower)s-%(version)s', + }), + ('ncurses', '5.9', { + 'source_urls': [GNU_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'patches': [ + 'ncurses-%(version)s_configure_darwin.patch', + 'ncurses-%(version)s_fix-missing-const.patch', + ], + 'checksums': [ + '9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b', + '8c471fc2b1961a6e6e5981b7f7b3512e7fe58fcb04461aa4520157d4c1159998', + '027f7bd5876b761b48db624ddbdd106fa1c535dfb2752ef5a0eddeb2a8896cfd', + ], + 'preconfigopts': "export CPPFLAGS='-P -std=c++14' && ", + 'configopts': ' --with-shared --enable-overwrite --with-termlib=tinfo', + 'start_dir': '%(namelower)s-%(version)s', + }), + (name, version, { + 'source_urls': ['https://downloads.haskell.org/~ghc/%(version)s/'], + 'sources': ['%%(namelower)s-%%(version)s-x86_64-%s-linux.tar.xz' % local_distro_tarball], + 'checksums': ['fab143f10f845629cb1b373309b5680667cbaab298cf49827e383ee8a9ddf683'], + # ghc-8.6.5-x86_64-centos7-linux.tar.xz + 'skipsteps': ['build'], + 'preinstallopts': 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ', + 'start_dir': '%(namelower)s-%(version)s-x86_64-unknown-linux', + }), +] + +local_ncurses_libs = ["form", "menu", "ncurses", "panel", "tinfo"] + +sanity_check_paths = { + 'files': ['lib/lib%s.%s' % (x, y) for x in ['gmp', 'gmpxx'] for y in [SHLIB_EXT, 'a']] + + ['include/gmp.h', 'include/gmpxx.h'] + + ['lib/lib%s%s.a' % (x, y) for x in local_ncurses_libs for y in ['', '_g']] + + ['lib/lib%s.%s' % (x, y) for x in local_ncurses_libs for y in [SHLIB_EXT]] + + ['bin/ghc', 'bin/ghci', 'bin/ghc-pkg', 'bin/runghc', 'bin/runhaskell'], + 'dirs': ['bin', 'lib', 'share', 'include'], +} + +sanity_check_commands = ['ghc --version'] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/g/GI-DocGen/GI-DocGen-2023.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/GI-DocGen/GI-DocGen-2023.3-GCCcore-12.3.0.eb index d098c3c3cbc..4fae7c08b54 100644 --- a/easybuild/easyconfigs/g/GI-DocGen/GI-DocGen-2023.3-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/GI-DocGen/GI-DocGen-2023.3-GCCcore-12.3.0.eb @@ -21,11 +21,8 @@ dependencies = [ ('Python-bundle-PyPI', '2023.06'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('Markdown', '3.5.2', { diff --git a/easybuild/easyconfigs/g/GLM/GLM-1.0.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GLM/GLM-1.0.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e57a89d030a --- /dev/null +++ b/easybuild/easyconfigs/g/GLM/GLM-1.0.1-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'GLM' +version = '1.0.1' + +homepage = 'https://github.com/g-truc/glm' +description = """ +OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics +software based on the OpenGL Shading Language (GLSL) specifications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/g-truc/glm/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['9f3174561fd26904b23f0db5e560971cbf9b3cbda0b280f04d5c379d03bf234c'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['include/glm/gtc', 'include/glm/gtx'], +} + +moduleclass = 'lib' 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-2023-04-20-GCC-12.3.0.eb b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2023-04-20-GCC-12.3.0.eb new file mode 100644 index 00000000000..bdd355aef6b --- /dev/null +++ b/easybuild/easyconfigs/g/GMAP-GSNAP/GMAP-GSNAP-2023-04-20-GCC-12.3.0.eb @@ -0,0 +1,55 @@ +# 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 = '2023-04-20' + +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': '12.3.0'} + +source_urls = ['http://research-pub.gene.com/gmap/src/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GMAP-GSNAP-2023-02-17_cleanup-headers.patch', + 'GMAP-GSNAP-2023-02-17_fix-typecast.patch', +] +checksums = [ + {'gmap-gsnap-2023-04-20.tar.gz': 'f858bc699cbcc9b3f06751ace55c86bfc21e4ca821a90b10681feac2172b725e'}, + {'GMAP-GSNAP-2023-02-17_cleanup-headers.patch': '7d17d4cbc717556e3a64475eb931b692e9d564b486acf6c9dbf4c2bf29853832'}, + {'GMAP-GSNAP-2023-02-17_fix-typecast.patch': 'eafe728cf00cf52320bbf4b710ef76b662df92533d22fa67dc273855c180296f'}, +] + +# 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.2.13'), +] + +# 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-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/GOATOOLS/GOATOOLS-1.4.5-foss-2022b.eb b/easybuild/easyconfigs/g/GOATOOLS/GOATOOLS-1.4.5-foss-2022b.eb new file mode 100644 index 00000000000..46728a39e63 --- /dev/null +++ b/easybuild/easyconfigs/g/GOATOOLS/GOATOOLS-1.4.5-foss-2022b.eb @@ -0,0 +1,73 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +# Update: Pavel Tománek (Inuits) +easyblock = 'PythonPackage' + +name = 'GOATOOLS' +version = '1.4.5' + +homepage = 'https://github.com/tanghaibao/goatools' +description = "A Python library for Gene Ontology analyses" + +toolchain = {'name': 'foss', 'version': '2022b'} + +# must download sources via git to preserve .git directory, +# since setuptools-scm is used to determine version +sources = [{ + 'git_config': { + 'url': 'https://github.com/tanghaibao', + 'repo_name': 'goatools', + 'tag': 'v%(version)s', + 'keep_git_dir': True, + }, + 'filename': SOURCE_TAR_GZ, +}] +checksums = [None] + +builddependencies = [('cURL', '7.86.0')] + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('XlsxWriter', '3.1.2'), + ('statsmodels', '0.14.0'), + ('pydot', '2.0.0'), + ('openpyxl', '3.1.2'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('ftpretty', '0.4.0', { + 'checksums': ['61233b9212f2cceec96ee2c972738fa31cae7248e92d0874c99c04ee739bb5a9'], + }), +] + +download_dep_fail = True +use_pip = True + +postinstallcmds = ["cp -a %(builddir)s/goatools/data/ %(installdir)s/"] + +sanity_check_paths = { + 'files': ['bin/find_enrichment.py'], + 'dirs': ['data', 'lib/python%(pyshortver)s/site-packages'], +} + +# example test run, see https://github.com/tanghaibao/goatools/blob/master/run.sh +sanity_check_commands = [ + "mkdir -p %(builddir)s", + "cd %(builddir)s && curl -OL http://geneontology.org/ontology/go-basic.obo", + "cd %(builddir)s && curl -OL http://www.geneontology.org/ontology/subsets/goslim_generic.obo", + "cd %(builddir)s && cp -a %(installdir)s/data .", + "cd %(builddir)s && find_enrichment.py --pval=0.05 --indent data/study data/population data/association", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb new file mode 100644 index 00000000000..fbe1458a01a --- /dev/null +++ b/easybuild/easyconfigs/g/GOMC/GOMC-2.76-20230613-GCC-11.3.0-CUDA-11.7.0.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'GOMC' +version = '2.76-20230613' +versionsuffix = '-CUDA-%(cudaver)s' +_commit = '9fc85fb' + +homepage = 'https://gomc-wsu.org/' +description = """GPU Optimized Monte Carlo (GOMC) is a parallel molecular +simulation code designed for high-performance simulation of large systems.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +sources = [ + { + 'source_urls': ['https://github.com/GOMC-WSU/GOMC/archive'], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }, +] +checksums = ['14725836707e4525cc7daea219a6eb47a8aeb675d01ef6d16ad60a9986dd3c1e'] + +builddependencies = [ + ('CMake', '3.23.1'), +] +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', versionsuffix), +] + +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['6.0', '7.0', '7.5', '8.0', '8.6'] +configopts = '-DCMAKE_CUDA_ARCHITECTURES="%(cuda_cc_cmake)s" ' + +preinstallopts = 'mkdir %(installdir)s/bin &&' +install_cmd = 'cp' +installopts = '%(builddir)s/easybuild_obj/%(name)s_{CPU,GPU}_* %(installdir)s/bin' + +_gomc_exe = ['GOMC_CPU_GCMC', 'GOMC_CPU_GEMC', 'GOMC_CPU_NPT', 'GOMC_CPU_NVT', 'GOMC_GPU_GCMC', + 'GOMC_GPU_GEMC', 'GOMC_GPU_NPT', 'GOMC_GPU_NVT'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _gomc_exe], + 'dirs': [], +} + +sanity_check_commands = ['%s | grep "Info: GOMC"' % x for x in _gomc_exe] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/g/GOTCHA/GOTCHA-1.0.7-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GOTCHA/GOTCHA-1.0.7-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4810ca2d6d3 --- /dev/null +++ b/easybuild/easyconfigs/g/GOTCHA/GOTCHA-1.0.7-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = "CMakeMake" + +name = "GOTCHA" +version = "1.0.7" + +homepage = "https://gotcha.readthedocs.io/en/latest/" +description = """Gotcha is a library that wraps functions. Tools can use gotcha to install hooks into other +libraries, for example putting a wrapper function around libc's malloc. It is similar to LD_PRELOAD, but +operates via a programmable API. This enables easy methods of accomplishing tasks like code instrumentation +or wholesale replacement of mechanisms in programs without disrupting their source code.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/LLNL/GOTCHA/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1ecc1917a46ba0a63b75f0668b280e447afcb7623ad171caa35c596355d986f7'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Check', '0.15.2') +] + +configopts = [ + "-DGOTCHA_ENABLE_TESTS=ON", + "-DDEPENDENCIES_PREINSTALLED=ON" +] + +sanity_check_paths = { + 'files': [('lib/libgotcha.%s' % SHLIB_EXT, 'lib64/libgotcha.%s' % SHLIB_EXT), + 'lib/cmake/gotcha/gotcha-config.cmake', + 'include/gotcha/gotcha.h'], + 'dirs': [] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..83ab6981ae3 --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'GObject-Introspection' +version = '1.80.1' + +homepage = 'https://gi.readthedocs.io/en/latest/' +description = """GObject introspection is a middleware layer between C libraries + (using GObject) and language bindings. The C library can be scanned at + compile time and generate a metadata file, in addition to the actual + native C library. Then at runtime, language bindings can read this + metadata and automatically provide bindings to call into the C library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +patches = ['GObject-Introspection-1.80.1_install-GLib-GIR-files.patch'] +checksums = [ + {'gobject-introspection-1.80.1.tar.xz': 'a1df7c424e15bda1ab639c00e9051b9adf5cea1a9e512f8a603b53cd199bc6d8'}, + {'GObject-Introspection-1.80.1_install-GLib-GIR-files.patch': + 'c1909f1b7fd30784ae789ac0b5e45e0ca3dd2456890b864efa86a2f8c2e563aa'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('Python', '3.12.3'), + ('Bison', '3.8.2'), + ('cairo', '1.18.0'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('libffi', '3.4.5'), + ('util-linux', '2.40'), +] + +preconfigopts = "env GI_SCANNER_DISABLE_CACHE=true " +configopts = "-Dcairo=enabled" + +sanity_check_paths = { + 'files': ['bin/g-ir-%s' % x for x in ['annotation-tool', 'compiler', 'generate', 'scanner']] + + ['lib/libgirepository-1.0.' + SHLIB_EXT], + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch new file mode 100644 index 00000000000..5c09ded1cb2 --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.80.1_install-GLib-GIR-files.patch @@ -0,0 +1,52 @@ +This reverts a commit from upstream +> build: Do not install generated GLib GIR files +> +> GLib 2.79 ships its own introspection data. + +However GObject-Introspection requires (optionally) Cairo, which requires GLib +which requires GLib-Introspection for generating the introspection data. + +So there is a cyclic dependency, see https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/517 + +Author: Alexander Grund (TU Dresden) + +diff --git a/gir/meson.build b/gir/meson.build +index 3a016831..312aa886 100644 +--- a/gir/meson.build ++++ b/gir/meson.build +@@ -241,6 +241,8 @@ glib_gir = custom_target('gir-glib', + output: 'GLib-2.0.gir', + depends: [gir_giscanner_pymod, glib_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: glib_command + [ + '--cflags-begin'] + glib_includes + extra_giscanner_cflags + [ +@@ -308,6 +310,8 @@ gobject_gir = custom_target('gir-gobject', + output: 'GObject-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gobject_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gobject_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -360,6 +364,8 @@ uninstalled_gir_files += custom_target('gir-gmodule', + output: 'GModule-2.0.gir', + depends: [glib_gir, gir_giscanner_pymod, gmodule_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gmodule_command + [ + '--include-uninstalled=' + glib_gir.full_path(), +@@ -455,6 +461,8 @@ gio_gir = custom_target('gir-gio', + output: 'Gio-2.0.gir', + depends: [gobject_gir, gir_giscanner_pymod, gio_gir_dep, gdump], + depend_files: gir_giscanner_built_files, ++ install: true, ++ install_dir: girdir, + env: g_ir_scanner_env, + command: gio_command + [ + '--include-uninstalled=' + gobject_gir.full_path(), 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..9b8721280c8 --- /dev/null +++ b/easybuild/easyconfigs/g/GPAW/GPAW-24.6.0-foss-2024a.eb @@ -0,0 +1,50 @@ +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 + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/gpaw%s' % x for x in ['', '-analyse-basis', '-basis', '-plot-parallel-timings', + '-runscript', '-setup', '-upfplot']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/g/GPyOpt/GPyOpt-1.2.6-foss-2023a.eb b/easybuild/easyconfigs/g/GPyOpt/GPyOpt-1.2.6-foss-2023a.eb new file mode 100644 index 00000000000..ca08a08a88c --- /dev/null +++ b/easybuild/easyconfigs/g/GPyOpt/GPyOpt-1.2.6-foss-2023a.eb @@ -0,0 +1,63 @@ +easyblock = 'PythonBundle' + +name = 'GPyOpt' +version = '1.2.6' + +homepage = 'https://sheffieldml.github.io/GPyOpt' +description = "GPyOpt is a Python open-source library for Bayesian Optimization" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +use_pip = True + +exts_list = [ + ('paramz', '0.9.6', { + 'sources': ['%(name)s-%(version)s-py3-none-any.whl'], + 'checksums': ['4916be6f77f457316bcac8460be9c226026aed81fe7be302b32c0ba74e2ac6dd'], + }), + ('GPy', '1.13.2', { + 'modulename': 'GPy', + 'checksums': ['a38256b4dda536a5b5e6134a3924b42d454e987ee801fb6fc8b55a922da27920'], + }), + ('python-dateutil', '2.9.0.post0', { + 'modulename': 'dateutil', + 'checksums': ['37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3'], + }), + ('pyDOE', '0.3.8', { + 'modulename': '%(name)s', + 'sources': ['%(name)s-%(version)s.zip'], + 'checksums': ['cbd6f14ae26d3c9f736013205f53ea1191add4567033c3ee77b7dd356566c4b6'], + }), + ('sobol-seq', '0.2.0', { + 'sources': ['sobol_seq-%(version)s.tar.gz'], + 'checksums': ['e16e701bd7b03ec6ce65b3a64c9205799f6a2d00c2054dd8c4ff4343f3981172'], + }), + ('emcee', '2.2.1', { + 'checksums': ['b83551e342b37311897906b3b8acf32979f4c5542e0a25786ada862d26241172'], + }), + (name, version, { + 'modulename': 'GPyOpt', + 'checksums': ['e714daa035bb529a6db23c53665a762a4ab3456b9329c19ad3b03983f94c9b2a'], + }), +] + +local_GPy_file = '%(installdir)s/lib/python%(pyshortver)s/site-packages/GPy/plotting/matplot_dep/plot_definitions.py' + +# Fix GPy with matplotlib>=3.4.0 +# see issue 953 and fix from https://github.com/SheffieldML/GPy/pull/960 +postinstallcmds = [ + 'sed -i ' + '''-e 's|ax._process_unit_info(xdata=X, ydata=y1)|ax._process_unit_info([("x", X), ("y", y1)], convert=False)|' ''' + '''-e 's|ax._process_unit_info(ydata=y2)|ax._process_unit_info([("y", y2)], convert=False)|' %s''' % local_GPy_file, +] + + +sanity_pip_check = True + +moduleclass = 'math' 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.3-foss-2023a-PLUMED-2.9.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2023a-PLUMED-2.9.0.eb new file mode 100644 index 00000000000..943aa4ac839 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2023a-PLUMED-2.9.0.eb @@ -0,0 +1,100 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2023.3' +_plumedver = '2.9.0' +versionsuffix = '-PLUMED-%s' % _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 +next to PLUMED.""" + +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', + '%(name)s-%(version)s_skip_test_for_plumed.patch', +] +checksums = [ + {'gromacs-2023.3.tar.gz': '4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, + {'GROMACS-2023.3_skip_test_for_plumed.patch': + '6c541ee74f71f6a63950134d9d0e3afb176a2e25e76e017b4d1986a59163c083'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('scikit-build', '0.17.6'), + ('Doxygen', '1.9.7'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('mpi4py', '3.1.4'), + ('PLUMED', _plumedver), +] + + +configopts = '-DCMAKE_CXX_FLAGS="$CXXFLAGS -fpermissive" ' + +# PLUMED 2.9.0 is compatible with GROMACS 2023; 2023.3 seems to work fine too +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb new file mode 100644 index 00000000000..e8c0d929bd9 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb @@ -0,0 +1,87 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2023.4' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.4.tar.gz': 'e5d6c4d9e7ccacfaccb0888619bd21b5ea8911f82b410e68d6db5d40f695f231'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('scikit-build', '0.17.6'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('mpi4py', '3.1.4'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.4.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['e5d6c4d9e7ccacfaccb0888619bd21b5ea8911f82b410e68d6db5d40f695f231'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b-PLUMED-2.9.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b-PLUMED-2.9.2.eb new file mode 100644 index 00000000000..9743e8a09a2 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b-PLUMED-2.9.2.eb @@ -0,0 +1,93 @@ +# 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.3' +_plumedver = '2.9.2' +versionsuffix = '-PLUMED-%s' % _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.3.tar.gz': 'bbda056ee59390be7d58d84c13a9ec0d4e3635617adf2eb747034922cba1f029'}, + {'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', _plumedver), +] + +# PLUMED 2.9.2 is compatible with GROMACS 2024.2; 2024.3 seems to work fine too +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b.eb new file mode 100644 index 00000000000..a5ece3769bb --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.3-foss-2023b.eb @@ -0,0 +1,85 @@ +# 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.3' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '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.3.tar.gz': 'bbda056ee59390be7d58d84c13a9ec0d4e3635617adf2eb747034922cba1f029'}, + {'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'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb new file mode 100644 index 00000000000..1fc7764f5a7 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb @@ -0,0 +1,98 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2024.4' +local_plumedver = '2.9.2' +versionsuffix = '-CUDA-%%(cudaver)s-PLUMED-%s' % local_plumedver + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI binaries. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', + 'GROMACS-2023.3_skip_test_for_plumed.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, + {'GROMACS-2023.3_skip_test_for_plumed.patch': '6c541ee74f71f6a63950134d9d0e3afb176a2e25e76e017b4d1986a59163c083'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', '-CUDA-%(cudaver)s'), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), + ('PLUMED', local_plumedver), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +# PLUMED 2.9.2 is compatible with GROMACS 2024.2; 2024.4 seems to work fine too +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb new file mode 100644 index 00000000000..d93065bbed6 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb @@ -0,0 +1,91 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2024.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI binaries. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', versionsuffix), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb new file mode 100644 index 00000000000..5920405282c --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb @@ -0,0 +1,97 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2024.4' +local_plumedver = '2.9.2' +versionsuffix = '-PLUMED-%s' % local_plumedver + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', + 'GROMACS-2023.3_skip_test_for_plumed.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, + {'GROMACS-2023.3_skip_test_for_plumed.patch': '6c541ee74f71f6a63950134d9d0e3afb176a2e25e76e017b4d1986a59163c083'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), + ('PLUMED', local_plumedver), +] + +# PLUMED 2.9.2 is compatible with GROMACS 2024.2; 2024.4 seems to work fine too +ignore_plumed_version_check = True + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb new file mode 100644 index 00000000000..778af16ba08 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb @@ -0,0 +1,89 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2024.4' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/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 271be65a5dd..a8f48c5966b 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/GTS/GTS-0.7.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..dd36868a20d --- /dev/null +++ b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'GTS' +version = '0.7.6' + +homepage = 'http://gts.sourceforge.net/' +description = """GTS stands for the GNU Triangulated Surface Library. +It is an Open Source Free Software Library intended to provide a set of useful +functions to deal with 3D surfaces meshed with interconnected triangles.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['059c3e13e3e3b796d775ec9f96abdce8f2b3b5144df8514eda0cc12e13e8b81e'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), +] +dependencies = [ + ('GLib', '2.80.4'), +] + +sanity_check_paths = { + 'files': ['lib/libgts.%s' % SHLIB_EXT, 'bin/gts2oogl', 'bin/gtscheck'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2ac4237f4c0 --- /dev/null +++ b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.11-GCCcore-13.3.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MesonNinja' + +name = 'Gdk-Pixbuf' +version = '2.42.11' + +homepage = 'https://docs.gtk.org/gdk-pixbuf/' +description = """ + The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation. + It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it + was distributed as part of GTK+ 2 but it was split off into a separate package + in preparation for the change to GTK+ 3. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['49dcb402388708647e8c321d56b6fb30f21e51e515d0c5a942268d23052a2f00'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('GObject-Introspection', '1.80.1'), +] + +dependencies = [ + ('GLib', '2.80.4'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), + ('X11', '20240607'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dgio_sniffing=false -Dintrospection=enabled -Dman=false" + +sanity_check_paths = { + 'files': ['lib/libgdk_pixbuf-%(version_major)s.0.a', 'lib/libgdk_pixbuf-%%(version_major)s.0.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include/gdk-pixbuf-%(version_major)s.0', 'lib/gdk-pixbuf-%(version_major)s.0', 'share'], +} + +sanity_check_commands = ["gdk-pixbuf-pixdata --help"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb b/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb new file mode 100644 index 00000000000..a085843d7d2 --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4-data/Geant4-data-11.2.eb @@ -0,0 +1,54 @@ +easyblock = 'Tarball' +name = 'Geant4-data' +version = '11.2' # version should somewhat match the Geant4 version it should be used in + +homepage = 'https://geant4.web.cern.ch/' +description = """Datasets for Geant4.""" + +toolchain = SYSTEM + +# Pick up the correct sets and versions from cmake/Modules/G4DatasetDefinitions.cmake +# in the Geant source, +# see also https://github.com/Geant4/geant4/blob/v11.2.2/cmake/Modules/G4DatasetDefinitions.cmake +local_datasets = [ + ('G4NDL', '4.7.1', 'G4NDL', 'G4NEUTRONHPDATA'), # NDL + ('G4EMLOW', '8.5', 'G4EMLOW', 'G4LEDATA'), # Low energy electromagnetics + ('PhotonEvaporation', '5.7', 'G4PhotonEvaporation', 'G4LEVELGAMMADATA'), # Photon evaporation + ('RadioactiveDecay', '5.6', 'G4RadioactiveDecay', 'G4RADIOACTIVEDATA'), # Radioisotopes + ('G4SAIDDATA', '2.0', 'G4SAIDDATA', 'G4SAIDXSDATA'), # SAID + ('G4PARTICLEXS', '4.0', 'G4PARTICLEXS', 'G4PARTICLEXSDATA'), # Particle XS - replaces Neutron XS + ('G4PII', '1.3', 'G4PII', 'G4PIIDATA'), # PII + ('RealSurface', '2.2', 'G4RealSurface', 'G4REALSURFACEDATA'), # Optical Surfaces + ('G4ABLA', '3.3', 'G4ABLA', 'G4ABLADATA'), # ABLA + ('G4INCL', '1.2', 'G4INCL', 'G4INCLDATA'), # INCL + ('G4ENSDFSTATE', '2.3', 'G4ENSDFSTATE', 'G4ENSDFSTATEDATA'), # ENSDFSTATE + ('G4TENDL', '1.4', 'G4TENDL', 'G4PARTICLEHPDATA'), # TENDL +] + +source_urls = ['https://cern.ch/geant4-data/datasets'] +sources = ['%s.%s.tar.gz' % (x[2], x[1]) for x in local_datasets] +checksums = [ + {'G4NDL.4.7.1.tar.gz': 'd3acae48622118d2579de24a54d533fb2416bf0da9dd288f1724df1485a46c7c'}, + {'G4EMLOW.8.5.tar.gz': '66baca49ac5d45e2ac10c125b4fb266225e511803e66981909ce9cd3e9bcef73'}, + {'G4PhotonEvaporation.5.7.tar.gz': '761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5'}, + {'G4RadioactiveDecay.5.6.tar.gz': '3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1'}, + {'G4SAIDDATA.2.0.tar.gz': '1d26a8e79baa71e44d5759b9f55a67e8b7ede31751316a9e9037d80090c72e91'}, + {'G4PARTICLEXS.4.0.tar.gz': '9381039703c3f2b0fd36ab4999362a2c8b4ff9080c322f90b4e319281133ca95'}, + {'G4PII.1.3.tar.gz': '6225ad902675f4381c98c6ba25fc5a06ce87549aa979634d3d03491d6616e926'}, + {'G4RealSurface.2.2.tar.gz': '9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820'}, + {'G4ABLA.3.3.tar.gz': '1e041b3252ee9cef886d624f753e693303aa32d7e5ef3bba87b34f36d92ea2b1'}, + {'G4INCL.1.2.tar.gz': 'f880b16073ee0a92d7494f3276a6d52d4de1d3677a0d4c7c58700396ed0e1a7e'}, + {'G4ENSDFSTATE.2.3.tar.gz': '9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203'}, + {'G4TENDL.1.4.tar.gz': '4b7274020cc8b4ed569b892ef18c2e088edcdb6b66f39d25585ccee25d9721e0'}, +] + +start_dir = '..' + +modextrapaths = {x[3]: x[0] + x[1] for x in local_datasets} + +sanity_check_paths = { + 'files': [], + 'dirs': [x[0] + x[1] for x in local_datasets], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb b/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb new file mode 100644 index 00000000000..d4cdf6c78cb --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4/Geant4-11.2.2-GCC-12.3.0.eb @@ -0,0 +1,48 @@ +name = 'Geant4' +version = '11.2.2' + +homepage = 'https://geant4.web.cern.ch/' +description = """Geant4 is a toolkit for the simulation of the passage of particles through matter. + Its areas of application include high energy, nuclear and accelerator physics, + as well as studies in medical and space science.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'Geant4' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = [ + 'Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch', +] +checksums = [ + {'geant4-11.2.2.tar.gz': '0b0cfce14e9143079c4440d27ee21f889c4c4172ac5ee7586746b940ffcf812a'}, + {'Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch': + '822265b7cbcaacdffd28b1094786a3c94122aff63338e514d5d3810cdf9218a6'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('expat', '2.5.0'), + # recommended CLHEP version, see https://geant4.web.cern.ch/download/release-notes/notes-v11.1.0.html + ('CLHEP', '2.4.7.1'), + ('Xerces-C++', '3.2.4'), + ('Qt5', '5.15.10'), + ('Geant4-data', '11.2', '', SYSTEM), +] + +_copts = [ + "-DGEANT4_INSTALL_DATA=OFF", + "-DGEANT4_USE_SYSTEM_ZLIB=ON", + "-DGEANT4_USE_SYSTEM_EXPAT=ON", + "-DGEANT4_USE_SYSTEM_CLHEP=ON", + "-DGEANT4_USE_QT=ON", + "-DGEANT4_USE_GDML=ON", + "-DGEANT4_USE_OPENGL_X11=ON", + "-DGEANT4_USE_RAYTRACER_X11=ON", +] +configopts = ' '.join(_copts) + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/GeneMark-ET/GeneMark-ET-4.72-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/GeneMark-ET/GeneMark-ET-4.72-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..75ffcc9f5f7 --- /dev/null +++ b/easybuild/easyconfigs/g/GeneMark-ET/GeneMark-ET-4.72-GCCcore-12.3.0.eb @@ -0,0 +1,43 @@ +# updated: Denis Kristak (INUITS) +# Update: Petr Král (INUITS) +easyblock = 'Tarball' + +name = 'GeneMark-ET' +version = '4.72' + +homepage = 'http://exon.gatech.edu/GeneMark' +description = "Eukaryotic gene prediction suite with automatic training" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = ['gmes_linux_64-%(version)s.tar.gz'] +checksums = ['629f430e7262bdb5df8f24413e65d26e35eb10ea34212145b692ee4689591e54'] + +download_instructions = """ +1. complete the license form: http://exon.gatech.edu/GeneMark/license_download.cgi +2. rename the tarball: `mv gmes_linux_64.tar.gz gmes_linux_64-%(version)s.tar.gz` +""" + +# To run this code, install the key: copy key "gm_key" into user's home directory as: +# gunzip gm_key.gz +# cp gm_key_64 ~/.gm_key + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +fix_perl_shebang_for = ['*.pl'] + +sanity_check_paths = { + 'files': ['gmes.cfg', 'gmes_petap.pl'], + 'dirs': ['lib'], +} + +sanity_check_commands = [ + "gmes_petap.pl | grep 'Usage:'", +] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..174aec3f515 --- /dev/null +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.03.1-GCCcore-13.3.0.eb @@ -0,0 +1,58 @@ +easyblock = 'ConfigureMake' + +name = 'Ghostscript' +version = '10.03.1' + +homepage = 'https://ghostscript.com' +description = """Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to + different targets. It used to be part of the cups printing stack, but is no longer used for that.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs%s/' % version.replace('.', ''), +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['31cd01682ad23a801cc3bbc222a55f07c4ea3e068bdfb447792d54db21a2e8ad'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('libpng', '1.6.43'), + ('freetype', '2.13.2'), + ('libjpeg-turbo', '3.0.1'), + ('expat', '2.6.2'), + ('GLib', '2.80.4'), + ('cairo', '1.18.0'), + ('LibTIFF', '4.6.0'), +] + +# Do not use local copies of zlib, jpeg, freetype, and png +preconfigopts = 'mv zlib zlib.no && mv jpeg jpeg.no && mv freetype freetype.no && ' +preconfigopts += 'mv libpng libpng.no && export LIBS="$LIBS -L$EBROOTZLIB/lib -lz" && ' +configopts = "--with-system-libtiff --enable-dynamic --disable-hidden-visibility" + +# also build and install shared libs +build_cmd_targets = ['', 'so'] +installopts = 'soinstall' + +postinstallcmds = [ + # install header files + "mkdir -p %(installdir)s/include/%(namelower)s", + "install -v -m644 base/*.h %(installdir)s/include/%(namelower)s", + "install -v -m644 psi/*.h %(installdir)s/include/%(namelower)s", +] + +sanity_check_paths = { + 'files': ['bin/gs', 'lib/libgs.%s' % SHLIB_EXT], + 'dirs': ['lib/%(namelower)s', 'include/%(namelower)s', 'share/man'], +} + +sanity_check_commands = ["gs --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e6ca0d7b0aa --- /dev/null +++ b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.43-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonBundle' + +name = 'GitPython' +version = '3.1.43' + +homepage = 'https://gitpython.readthedocs.org' +description = """ GitPython is a python library used to interact with Git repositories """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('git', '2.45.1'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('smmap', '5.0.1', {'checksums': ['dceeb6c0028fdb6734471eb07c0cd2aae706ccaecab45965ee83f11c8d3b1f62']}), + ('gitdb', '4.0.11', {'checksums': ['bf5421126136d6d0af55bc1e7c1af1c397a34f5b7bd79e776cd3e89785c2b04b']}), + (name, version, { + 'modulename': 'git', + 'checksums': ['35f314a9f878467f5453cc1fee295c3e18e52f1b99f10f6cf5b1682e968a9e7c'], + }), +] + +moduleclass = 'lib' 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/Gradio/Gradio-4.19.0-gfbf-2023a.eb b/easybuild/easyconfigs/g/Gradio/Gradio-4.19.0-gfbf-2023a.eb new file mode 100644 index 00000000000..3f949981b52 --- /dev/null +++ b/easybuild/easyconfigs/g/Gradio/Gradio-4.19.0-gfbf-2023a.eb @@ -0,0 +1,119 @@ +easyblock = 'PythonBundle' + +name = 'Gradio' +version = '4.19.0' + +homepage = "https://www.gradio.app" +description = """ +Gradio is an open-source Python package that allows you to quickly build a demo or web +application for your machine learning model, API, or any arbitrary Python function. +""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +builddependencies = [ + ('binutils', '2.40'), + ('Rust', '1.75.0'), + ('maturin', '1.4.0', '-Rust-1.75.0'), + ('hatchling', '1.18.0'), + ('poetry', '1.5.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('pydantic', '2.5.3'), + ('matplotlib', '3.7.2'), + ('Pillow', '10.0.0'), + ('tqdm', '4.66.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('aiofiles', '23.2.1', { + 'checksums': ['84ec2218d8419404abcb9f0c02df3f34c6e0a68ed41072acfb1cef5cbc29051a'], + }), + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('altair', '5.2.0', { + 'checksums': ['2ad7f0c8010ebbc46319cc30febfb8e59ccf84969a201541c207bc3a4fa6cf81'], + }), + ('starlette', '0.36.3', { + 'checksums': ['90a671733cfb35771d8cc605e0b679d23b992f8dcfad48cc60b38cb29aeb7080'], + }), + ('typing-extensions', '4.8.0', { + 'source_tmpl': 'typing_extensions-%(version)s.tar.gz', + 'checksums': ['df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef'], + }), + ('fastapi', '0.109.2', { + 'checksums': ['f3817eac96fe4f65a2ebb4baa000f394e55f5fccdaf7f75250804bc58f354f73'], + }), + ('ffmpy', '0.3.2', { + 'checksums': ['475ebfff1044661b8d969349dbcd2db9bf56d3ee78c0627e324769b49a27a78f'], + }), + ('websockets', '11.0.3', { + 'checksums': ['88fc51d9a26b10fc331be344f1781224a375b78488fc343620184e95a4b27016'], + }), + ('gradio-client', '0.10.0', { + 'source_tmpl': 'gradio_client-%(version)s.tar.gz', + 'checksums': ['feaee70f18363d76f81a7d25fc3456f40ed5f92417e642c8f1bf86dc65e3a981'], + }), + ('huggingface-hub', '0.20.3', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['94e7f8e074475fbc67d6a71957b678e1b4a74ff1b64a644fd6cbb83da962d05d'], + }), + ('orjson', '3.9.14', { + 'checksums': ['06fb40f8e49088ecaa02f1162581d39e2cf3fd9dbbfe411eb2284147c99bad79'], + }), + ('pydub', '0.25.1', { + 'checksums': ['980a33ce9949cab2a569606b65674d748ecbca4f0796887fd6f46173a7b0d30f'], + }), + ('python-multipart', '0.0.9', { + 'modulename': 'multipart', + 'source_tmpl': 'python_multipart-%(version)s.tar.gz', + 'checksums': ['03f54688c663f1b7977105f021043b0793151e4cb1c1a9d4a11fc13d622c4026'], + }), + ('ruff', '0.2.1', { + 'checksums': ['3b42b5d8677cd0c72b99fcaf068ffc62abb5a19e71b4a3b9cfa50658a0af02f1'], + }), + ('typer', '0.9.0', { + 'checksums': ['50922fd79aea2f4751a8e0408ff10d2662bd0c8bbfa84755a699f3bada2978b2'], + }), + ('h11', '0.14.0', { + 'checksums': ['8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d'], + }), + ('uvicorn', '0.27.1', { + 'checksums': ['3d9a267296243532db80c83a959a3400502165ade2c1338dea4e67915fd4745a'], + }), + ('anyio', '4.2.0', { + 'checksums': ['e1875bb4b4e2de1669f4bc7869b6d3f54231cdced71605e6e64c9be77e3be50f'], + }), + ('httpcore', '1.0.3', { + 'checksums': ['5c0f9546ad17dac4d0772b0808856eb616eb8b48ce94f49ed819fd6982a8a544'], + }), + ('sniffio', '1.3.0', { + 'checksums': ['e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101'], + }), + ('httpx', '0.26.0', { + 'checksums': ['451b55c30d5185ea6b23c2c793abf9bb237d2a7dfb901ced6ff69ad37ec1dfaf'], + }), + ('importlib-resources', '6.1.1', { + 'source_tmpl': 'importlib_resources-%(version)s.tar.gz', + 'checksums': ['3893a00122eafde6894c59914446a512f728a0c1a45f9bb9b63721b6bacf0b4a'], + }), + ('Jinja2', '3.1.3', { + 'checksums': ['ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90'], + }), + ('tomlkit', '0.12.0', { + 'checksums': ['01f0477981119c7d8ee0f67ebe0297a7c95b14cf9f4b102b45486deb77018716'], + }), + ('gradio', version, { + 'checksums': ['e77e3ce8a4113865abd1dcf92cc9426d9da4896e0a6fd2824a0c90ec751dd442'], + }), +] + +moduleclass = 'ai' 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/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b54b7ecfcc3 --- /dev/null +++ b/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'Greenlet' +version = '3.1.1' + +homepage = 'https://github.com/python-greenlet/greenlet' + +description = """The greenlet package is a spin-off of Stackless, a version of CPython that +supports micro-threads called "tasklets". Tasklets run pseudo-concurrently (typically in a single +or a few OS-level threads) and are synchronized with data exchanges on "channels". +A "greenlet", on the other hand, is a still more primitive notion of micro-thread with no implicit +scheduling; coroutines, in other words. This is useful when you want to control exactly when your code runs. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4ce3ac6cdb6adf7946475d7ef31777c26d94bccc377e070a7986bd2d5c515467'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb b/easybuild/easyconfigs/g/Gubbins/Gubbins-3.3.5-foss-2022b.eb index 57a08aeb182..99c52d785fd 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 @@ -58,8 +58,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/Guile/Guile-2.0.14-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Guile/Guile-2.0.14-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..06a1dc6a05a --- /dev/null +++ b/easybuild/easyconfigs/g/Guile/Guile-2.0.14-GCCcore-13.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'Guile' +version = '2.0.14' + +homepage = 'http://www.gnu.org/software/guile' +description = """Guile is the GNU Ubiquitous Intelligent Language for Extensions, the official extension language for +the GNU operating system. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8aeb2f353881282fe01694cce76bb72f7ffdd296a12c7a1a39255c27b0dfe5f1'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('gc', '8.2.6'), + ('GMP', '6.3.0'), + ('libffi', '3.4.5'), + ('libunistring', '1.2'), + ('libtool', '2.4.7'), + ('libreadline', '8.2'), + ('XZ', '5.4.5'), +] + +configopts = " --enable-error-on-warning=no" + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ["guile", 'guile-config', 'guile-snarf', 'guile-tools']] + + ["lib/libguile-%(version_major_minor)s.a", + "include/guile/%(version_major_minor)s/libguile.h"], + 'dirs': [] +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/g/Gymnasium/Gymnasium-0.29.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/g/Gymnasium/Gymnasium-0.29.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..b9248ab9aac --- /dev/null +++ b/easybuild/easyconfigs/g/Gymnasium/Gymnasium-0.29.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = 'Gymnasium' +version = '0.29.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://gymnasium.farama.org/' +description = """ +Gymnasium is an open source Python library for developing and comparing reinforcement learning +algorithms by providing a standard API to communicate between learning algorithms and +environments, as well as a standard set of environments compliant with that API. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('SWIG', '4.1.1'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('OpenCV', '4.8.1', versionsuffix + '-contrib'), + ('pygame', '2.5.2'), + ('MuJoCo', '3.1.4'), +] + +use_pip = True + +exts_list = [ + ('cloudpickle', '3.0.0', { + 'checksums': ['996d9a482c6fb4f33c1a35335cf8afd065d2a56e973270364840712d9131a882'], + }), + ('Farama-Notifications', '0.0.4', { + 'checksums': ['13fceff2d14314cf80703c8266462ebf3733c7d165336eee998fc58e545efd18'], + }), + ('box2d-py', '2.3.8', { + 'modulename': 'Box2D', + 'checksums': ['bdacfbbc56079bb317548efe49d3d5a86646885cc27f4a2ee97e4b2960921ab7'], + }), + ('gymnasium', version, { + 'use_pip_extras': 'all', + 'checksums': ['1a532752efcb7590478b1cc7aa04f608eb7a2fdad5570cd217b66b6a35274bb1'], + }), +] + +local_envs = ['box2d', 'classic_control', 'mujoco', 'toy_text'] +sanity_check_commands = ["python -c 'import gymnasium.envs.%s'" % e for e in local_envs] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gensim/gensim-4.3.2-foss-2023a.eb b/easybuild/easyconfigs/g/gensim/gensim-4.3.2-foss-2023a.eb new file mode 100644 index 00000000000..cb315af1a31 --- /dev/null +++ b/easybuild/easyconfigs/g/gensim/gensim-4.3.2-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonBundle' + +name = 'gensim' +version = '4.3.2' + +homepage = 'https://radimrehurek.com/gensim' +description = """Gensim is a Python library for topic modelling, document indexing and similarity retrieval with + large corpora.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('wrapt', '1.15.0'), +] + +use_pip = True + +exts_list = [ + ('smart_open', '7.0.4', { + 'checksums': ['62b65852bdd1d1d516839fcb1f6bc50cd0f16e05b4ec44b52f43d38bcb838524'], + }), + (name, version, { + 'checksums': ['99ac6af6ffd40682e70155ed9f92ecbf4384d59fb50af120d343ea5ee1b308ab'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..eba4233b57f --- /dev/null +++ b/easybuild/easyconfigs/g/gffread/gffread-0.12.7-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +easyblock = 'MakeCp' + +name = 'gffread' +version = '0.12.7' + +homepage = 'https://ccb.jhu.edu/software/stringtie/gff.shtml#gffread' +description = """GFF/GTF parsing utility providing format conversions, +region filtering, FASTA sequence extraction and more.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/gpertea/%(namelower)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['bfde1c857495e578f5b3af3c007a9aa40593e69450eafcc6a42c3e8ef08ed1f5'] + +builddependencies = [('binutils', '2.40')] + +buildopts = " release" + +files_to_copy = [ + (['%(name)s'], 'bin'), + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [] +} + +sanity_check_commands = ['%(name)s'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/gffutils/gffutils-0.13-foss-2023a.eb b/easybuild/easyconfigs/g/gffutils/gffutils-0.13-foss-2023a.eb new file mode 100644 index 00000000000..2b52f3965bc --- /dev/null +++ b/easybuild/easyconfigs/g/gffutils/gffutils-0.13-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'gffutils' +version = '0.13' + +homepage = 'https://github.com/daler/gffutils' +description = """Gffutils is a Python package for working with and manipulating + the GFF and GTF format files typically used for genomic annotations.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('pyfaidx', '0.8.1.1'), + ('Biopython', '1.83'), + ('pybedtools', '0.9.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('six', '1.16.0', { + 'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'], + }), + ('argh', '0.31.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['2edac856ff50126f6e47d884751328c9f466bacbbb6cbfdac322053d94705494'], + }), + ('argcomplete', '3.5.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d4bcf3ff544f51e16e54228a7ac7f486ed70ebf2ecfe49a63a91171c76bf029b'], + }), + ('simplejson', '3.19.3', { + 'checksums': ['8e086896c36210ab6050f2f9f095a5f1e03c83fa0e7f296d6cba425411364680'], + }), + (name, version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['58e7bb579796fff70e728380ef2d8ffd4a3bc895e53e6529855a0cf87ba6a77a'], + }), +] + +sanity_check_commands = [ + "python -c 'from gffutils import helpers'" +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..042dd4fdbf0 --- /dev/null +++ b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-12.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'gflags' +version = '2.2.2' + +homepage = 'https://github.com/gflags/gflags' +description = """ +The gflags package contains a C++ library that implements commandline flags +processing. It includes built-in support for standard types such as string +and the ability to define flags in the source file in which they are used. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/gflags/gflags/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf'] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/gflags_completions.sh'] + + ['lib/%s' % x for x in ['libgflags.%s' % SHLIB_EXT, 'libgflags_nothreads.%s' % SHLIB_EXT, + 'libgflags.a', 'libgflags_nothreads.a']] + + ['include/gflags/gflags_completions.h'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..de0ad50b22c --- /dev/null +++ b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'gflags' +version = '2.2.2' + +homepage = 'https://github.com/gflags/gflags' +description = """ +The gflags package contains a C++ library that implements commandline flags +processing. It includes built-in support for standard types such as string +and the ability to define flags in the source file in which they are used. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/gflags/gflags/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/gflags_completions.sh'] + + ['lib/%s' % x for x in ['libgflags.%s' % SHLIB_EXT, 'libgflags_nothreads.%s' % SHLIB_EXT, + 'libgflags.a', 'libgflags_nothreads.a']] + + ['include/gflags/gflags_completions.h'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/giflib/giflib-5.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/giflib/giflib-5.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..66ef70d59ce --- /dev/null +++ b/easybuild/easyconfigs/g/giflib/giflib-5.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'giflib' +version = '5.2.1' + +homepage = 'http://giflib.sourceforge.net/' +description = """giflib is a library for reading and writing gif images. +It is API and ABI compatible with libungif which was in wide use while +the LZW compression algorithm was patented.""" + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['31da5562f44c5f15d63340a09a4fd62b48c45620cd302f77a6d9acf0077879bd'] + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +skipsteps = ['configure'] + +installopts = 'PREFIX=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/giftool'], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d8db77830fe --- /dev/null +++ b/easybuild/easyconfigs/g/giflib/giflib-5.2.2-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'giflib' +version = '5.2.2' + +homepage = 'http://giflib.sourceforge.net/' +description = """giflib is a library for reading and writing gif images. +It is API and ABI compatible with libungif which was in wide use while +the LZW compression algorithm was patented.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['be7ffbd057cadebe2aa144542fd90c6838c6a083b5e8a9048b8ee3b66b29d5fb'] + +builddependencies = [ + ('binutils', '2.42'), + ('ImageMagick', '7.1.1-38'), +] + +skipsteps = ['configure'] + +installopts = 'PREFIX=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/giftool'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb index 2e2696826f6..0e64dba099a 100644 --- a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.2.0.eb @@ -16,6 +16,7 @@ dependencies = [ ('GHC', '9.2.2', '-x86_64', SYSTEM), ('Stack', '2.11.1', '-x86_64', SYSTEM), ('git', '2.38.1', '-nodocs'), + ('libnsl', '2.0.0'), ] sources = [{ @@ -29,7 +30,7 @@ sources = [{ checksums = [None] -prebuildopts = "stack setup && stack build && " +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" files_to_copy = [ diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb index 6b6af7f9eba..d21f13320b1 100644 --- a/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20230802-GCCcore-12.3.0.eb @@ -18,6 +18,7 @@ dependencies = [ ('GHC', '9.4.6', '-x86_64', SYSTEM), ('Stack', '2.13.1', '-x86_64', SYSTEM), ('git', '2.41.0', '-nodocs'), + ('libnsl', '2.0.1'), ] sources = [{ @@ -31,7 +32,7 @@ sources = [{ checksums = [None] -prebuildopts = "stack setup && stack build && " +prebuildopts = "export STACK_ROOT=$(mktemp -d) && stack setup && stack build && " buildopts = "install-bins BUILDER=stack PREFIX=%(builddir)s" files_to_copy = [ diff --git a/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9701f4ce94d --- /dev/null +++ b/easybuild/easyconfigs/g/git-annex/git-annex-10.20240731-GCCcore-13.3.0.eb @@ -0,0 +1,49 @@ +easyblock = 'MakeCp' + +name = 'git-annex' +version = '10.20240731' + +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.3.0'} + +builddependencies = [ + ('binutils', '2.42') +] + +dependencies = [ + ('GHC', '9.10.1', '-x86_64', SYSTEM), + ('Stack', '3.1.1', '-x86_64', SYSTEM), + ('git', '2.45.1'), + ('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/glew/glew-2.2.0-GCCcore-12.2.0-egl.eb b/easybuild/easyconfigs/g/glew/glew-2.2.0-GCCcore-12.2.0-egl.eb new file mode 100644 index 00000000000..7babe095c23 --- /dev/null +++ b/easybuild/easyconfigs/g/glew/glew-2.2.0-GCCcore-12.2.0-egl.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' +versionsuffix = '-egl' +# available: -glx, -osmesa, -egl +# GLEW does support GLX (onscreen or requiring VirtualGL), EGL (technically can do both onscreen and +# offscreen), and OSMESA (offscreen software only). + +name = 'glew' +version = '2.2.0' + +homepage = 'https://github.com/nigels-com/glew' +description = """The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source +C/C++ extension loading library. GLEW provides efficient run-time mechanisms +for determining which OpenGL extensions are supported on the target platform.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://github.com/nigels-com/glew/releases/download/%(name)s-%(version)s/'] +sources = ['%(name)s-%(version)s.tgz'] +checksums = ['d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1'] + +builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('Mesa', '22.2.4'), + ('X11', '20221110'), +] + +local_system = 'SYSTEM=linux`echo %(versionsuffix)s|sed -e "s/-glx//g"`' +buildopts = local_system + +skipsteps = ['configure'] + +preinstallopts = 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ' +install_cmd = 'make install.all ' + local_system + +sanity_check_paths = { + 'files': ['lib/libGLEW.a', 'lib/libGLEW.%s' % SHLIB_EXT] + + ['bin/glewinfo', 'bin/visualinfo'] + + ['include/GL/%s.h' % h for h in ['glew', 'glxew', 'wglew']], + 'dirs': [] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..e3742d09ea3 --- /dev/null +++ b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-12.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'glog' +version = '0.6.0' + +homepage = 'https://github.com/google/glog' +description = "A C++ implementation of the Google logging module." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/google/glog/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8a83bf982f37bb70825df71a9709fa90ea9f4447fb3c099e1d720a439d88bad6'] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('gflags', '2.2.2'), + ('libunwind', '1.6.2'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['include/glog/logging.h', 'include/glog/raw_logging.h', 'lib/libglog.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/gmpy2/gmpy2-2.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/gmpy2/gmpy2-2.2.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..45d90e26d6a --- /dev/null +++ b/easybuild/easyconfigs/g/gmpy2/gmpy2-2.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'gmpy2' +version = '2.2.0' + +homepage = 'https://github.com/aleaxit/gmpy' +description = "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e19e62dfeb1e4a57079f0bf51c51dec30633d9fe9e89cb9a083e05e4823afa70'] + +builddependencies = [ + ('binutils', '2.42') +] + +dependencies = [ + ('Python', '3.12.3'), + ('GMP', '6.3.0'), + ('MPFR', '4.2.1'), + ('MPC', '1.3.1'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'math' 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/graphite2/graphite2-1.3.14-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..7e199ecf26b --- /dev/null +++ b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'graphite2' +version = '1.3.14' + +homepage = 'https://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_home' +description = """Graphite is a "smart font" system developed specifically to + handle the complexities of lesser-known languages of the world.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/silnrsi/graphite/archive/'] +sources = ['%(version)s.zip'] +checksums = ['36e15981af3bf7a3ca3daf53295c8ffde04cf7d163e3474e4d0836e2728b4149'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['bin/gr2fonttest'] + + ['lib/lib%%(name)s.%s' % x for x in [SHLIB_EXT, 'la']], + 'dirs': ['include/%(name)s', 'share'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gtk-doc/gtk-doc-1.34.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/gtk-doc/gtk-doc-1.34.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..dd18263d557 --- /dev/null +++ b/easybuild/easyconfigs/g/gtk-doc/gtk-doc-1.34.0-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'gtk-doc' +version = '1.34.0' + +homepage = 'https://gitlab.gnome.org/GNOME/gtk-doc' +description = """Documentation tool for public library API""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://gitlab.gnome.org/GNOME/gtk-doc/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['e1d544fa70ae60014a241b674c9d989f4ad6a96554652ebf73bbe94b4da1aa35'] + +builddependencies = [ + ('binutils', '2.40'), + ('yelp-tools', '42.1'), + ('Ninja', '1.11.1'), + ('Meson', '1.1.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Pygments', '2.18.0'), + ('GLib', '2.77.1'), +] + +sanity_check_paths = { + 'files': [ + 'bin/gtkdoc-depscan', + 'bin/gtkdoc-fixxref', + 'bin/gtkdoc-check', + 'bin/gtkdocize', + 'bin/gtkdoc-mkdb', + 'bin/gtkdoc-mkhtml', + 'bin/gtkdoc-mkhtml2', + 'bin/gtkdoc-mkman', + 'bin/gtkdoc-mkpdf', + 'bin/gtkdoc-rebase', + 'bin/gtkdoc-scan', + 'bin/gtkdoc-scangobj', + ], + 'dirs': [ + 'lib/cmake/GtkDoc', + 'share/%(name)s', + ], +} + +sanity_check_commands = ['gtkdoc-depscan'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3f1a7405848 --- /dev/null +++ b/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'gym-pybullet-drones' +local_commit = '3d7b12edd4915a27e6cec9f2c0eb4b5479f7735e' +version = '2.0.0-%s' % local_commit[:7] +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://utiasdsl.github.io/gym-pybullet-drones/' +description = """PyBullet-based Gym for single and multi-agent +reinforcement learning with nano-quadcopters""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.7.1'), + ('pytest', '7.4.2'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Gymnasium', '0.29.1', versionsuffix), + ('PyBullet', '3.2.6'), + ('Stable-Baselines3', '2.3.2', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('transforms3d', '0.4.2', { + 'checksums': ['e8b5df30eaedbee556e81c6938e55aab5365894e47d0a17615d7db7fd2393680'], + }), + (name, version, { + 'preinstallopts': """sed -i -e 's/gymnasium.*/gymnasium="*"/' """ + """-e 's/transforms3d.*/transforms3d="*"/' pyproject.toml && """, + 'source_urls': ['https://github.com/utiasDSL/gym-pybullet-drones/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['8ff745f590328e2a8fc4701c90d77056d7041f09f28e0ccb821efcc599ae0d8e'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a.eb b/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a.eb new file mode 100644 index 00000000000..7f2f12c79bc --- /dev/null +++ b/easybuild/easyconfigs/g/gym-pybullet-drones/gym-pybullet-drones-2.0.0-3d7b12e-foss-2023a.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'gym-pybullet-drones' +local_commit = '3d7b12edd4915a27e6cec9f2c0eb4b5479f7735e' +version = '2.0.0-%s' % local_commit[:7] + +homepage = 'https://utiasdsl.github.io/gym-pybullet-drones/' +description = """PyBullet-based Gym for single and multi-agent +reinforcement learning with nano-quadcopters""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.7.1'), + ('pytest', '7.4.2'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Gymnasium', '0.29.1'), + ('PyBullet', '3.2.6'), + ('Stable-Baselines3', '2.3.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('transforms3d', '0.4.2', { + 'checksums': ['e8b5df30eaedbee556e81c6938e55aab5365894e47d0a17615d7db7fd2393680'], + }), + (name, version, { + 'preinstallopts': """sed -i -e 's/gymnasium.*/gymnasium="*"/' """ + """-e 's/transforms3d.*/transforms3d="*"/' pyproject.toml && """, + 'source_urls': ['https://github.com/utiasDSL/gym-pybullet-drones/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['8ff745f590328e2a8fc4701c90d77056d7041f09f28e0ccb821efcc599ae0d8e'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/h/HDBSCAN/HDBSCAN-0.8.38.post1-foss-2023a.eb b/easybuild/easyconfigs/h/HDBSCAN/HDBSCAN-0.8.38.post1-foss-2023a.eb new file mode 100644 index 00000000000..b260708eab8 --- /dev/null +++ b/easybuild/easyconfigs/h/HDBSCAN/HDBSCAN-0.8.38.post1-foss-2023a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'HDBSCAN' +version = '0.8.38.post1' + +homepage = 'http://hdbscan.readthedocs.io/en/latest/' +description = """The hdbscan library is a suite of tools to use unsupervised learning to find clusters, or dense + regions, of a dataset. The primary algorithm is HDBSCAN* as proposed by Campello, Moulavi, and Sander. The library + provides a high performance implementation of this algorithm, along with tools for analysing the resulting + clustering.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5fbdba2ffb5a99a8b52fa2915658ced6bed59f4d0d5f40b1c673646c928aac0b'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('scikit-learn', '1.3.1'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.11-intel-2016a.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.11-intel-2016a.eb index e115932f8ee..3e25fa94133 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.11-intel-2016a.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.11-intel-2016a.eb @@ -3,15 +3,16 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.11' -homepage = 'http://www.hdfgroup.org/products/hdf4/' +homepage = 'http://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': 'intel', 'version': '2016a'} toolchainopts = {'pic': True} +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +checksums = ['c3f7753b2fb9b27d09eced4d2164605f111f270c9a60b37a578f7de02de86d24'] builddependencies = [ ('flex', '2.6.0'), diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.12-intel-2017a.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.12-intel-2017a.eb index 36b03f18536..5fade2d2248 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.12-intel-2017a.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.12-intel-2017a.eb @@ -3,15 +3,16 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.12' -homepage = 'http://www.hdfgroup.org/products/hdf4/' +homepage = 'http://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': 'intel', 'version': '2017a'} toolchainopts = {'pic': True} +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +checksums = ['dd419c55e85d1a0e13f3ea5ed35d00710033ccb16c85df088eb7925d486e040c'] builddependencies = [ ('flex', '2.6.3'), diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.13-GCCcore-6.4.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.13-GCCcore-6.4.0.eb index f1b4395af48..39dc5507935 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.13-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.13-GCCcore-6.4.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.13' -homepage = 'http://www.hdfgroup.org/products/hdf4/' +homepage = 'http://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -14,7 +14,7 @@ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} toolchainopts = {'pic': True} sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] checksums = ['be9813c1dc3712c2df977d4960e1f13f20f447dfa8c3ce53331d610c1f470483'] builddependencies = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.13-intel-2017a-no-netcdf.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.13-intel-2017a-no-netcdf.eb index 84bff2749e9..74e44dbfc26 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.13-intel-2017a-no-netcdf.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.13-intel-2017a-no-netcdf.eb @@ -4,7 +4,7 @@ name = 'HDF' version = '4.2.13' versionsuffix = '-no-netcdf' -homepage = 'http://www.hdfgroup.org/products/hdf4/' +homepage = 'http://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. This version suppresses the netcdf api, that gives issues with some applications""" @@ -12,7 +12,7 @@ toolchain = {'name': 'intel', 'version': '2017a'} toolchainopts = {'pic': True} sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] checksums = ['be9813c1dc3712c2df977d4960e1f13f20f447dfa8c3ce53331d610c1f470483'] builddependencies = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-6.4.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-6.4.0.eb index 1f31e675f7a..56e705f36a2 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-6.4.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.14' -homepage = 'http://www.hdfgroup.org/products/hdf4/' +homepage = 'http://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['2d383e87c8a0ca6a5352adbd1d5546e6cc43dc21ff7d90f93efa644d85c0b14a'] diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-7.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-7.3.0.eb index 204d917a179..51b65acec93 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-7.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.14' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '7.3.0'} toolchainopts = {'pic': True} -source_urls = ['https://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['https://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['2d383e87c8a0ca6a5352adbd1d5546e6cc43dc21ff7d90f93efa644d85c0b14a'] diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.2.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.2.0.eb index bf3fff366f2..a78efd6cee2 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.14' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['2d383e87c8a0ca6a5352adbd1d5546e6cc43dc21ff7d90f93efa644d85c0b14a'] diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.3.0.eb index ff08dc71e80..fdee3ff0383 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.14-GCCcore-8.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.14' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '8.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['2d383e87c8a0ca6a5352adbd1d5546e6cc43dc21ff7d90f93efa644d85c0b14a'] diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.2.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.2.0.eb index bdb2cb878ee..91e084fc238 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '10.2.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.3.0.eb index 869a6a796a2..7fff3f348bb 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-10.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.2.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.2.0.eb index fc36bb04673..7acaaafc09d 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.3.0.eb index 682e5e20b6c..4af8d274164 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-11.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-12.2.0.eb index f0286cd30bd..abab2d962f5 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-12.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb index fd6e6693977..7e6b5eefbe8 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.15' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for @@ -13,7 +13,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +source_urls = ['http://support.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] sources = [SOURCELOWER_TAR_GZ] patches = ['HDF-4.2.15_fix-aarch64.patch'] checksums = [ diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-12.3.0.eb index a6094f7f816..175aaba4731 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-12.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.16-2' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +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. diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-13.2.0.eb index 5b868a7fe58..f2c20e888b9 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-2-GCCcore-13.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.16-2' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +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. diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-GCCcore-12.3.0.eb index 630c4aa2dc2..fd9d8d3d4ea 100644 --- a/easybuild/easyconfigs/h/HDF/HDF-4.2.16-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.16-GCCcore-12.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HDF' version = '4.2.16' -homepage = 'https://www.hdfgroup.org/products/hdf4/' +homepage = 'https://support.hdfgroup.org/products/hdf4/' description = """ HDF (also known as HDF4) is a library and multi-object file format for 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.3-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb index f2aab3663a3..5cb05f4a4a1 100644 --- a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb @@ -12,7 +12,11 @@ toolchainopts = {'pic': True, 'usempi': True} source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'] +patches = ['HDF5-1.14.3_suppress_fp_exceptions.patch'] +checksums = [ + {'hdf5-1.14.3.tar.gz': '09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'}, + {'HDF5-1.14.3_suppress_fp_exceptions.patch': 'bf33e579c93a16043c54b266321bbe95e4a8797f7fe6d096a13ce905ed2ffde7'}, +] # replace src include path with installation dir for $H5BLD_CPPFLAGS _regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb index 77fa0c12ab9..e180d8619ee 100644 --- a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb @@ -12,7 +12,11 @@ toolchainopts = {'pic': True, 'usempi': True} source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'] +patches = ['HDF5-1.14.3_suppress_fp_exceptions.patch'] +checksums = [ + {'hdf5-1.14.3.tar.gz': '09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'}, + {'HDF5-1.14.3_suppress_fp_exceptions.patch': 'bf33e579c93a16043c54b266321bbe95e4a8797f7fe6d096a13ce905ed2ffde7'}, +] # replace src include path with installation dir for $H5BLD_CPPFLAGS _regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3_suppress_fp_exceptions.patch b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3_suppress_fp_exceptions.patch new file mode 100644 index 00000000000..420125db46d --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3_suppress_fp_exceptions.patch @@ -0,0 +1,223 @@ +See: https://github.com/HDFGroup/hdf5/commit/e0d095ebf020706ec7d7c82e6674b18f1a0a2d5b + +Created using +git checkout hdf5-1_14_3 +git cherry-pick e0d095ebf020706ec7d7c82e6674b18f1a0a2d5b + +commit 7c58dd64db0a6c04dea46dee1c7effbe8103ae82 +Author: Dana Robinson <43805+derobins@users.noreply.github.com> +Date: Tue Nov 7 08:13:30 2023 -0800 + + Disable FP exceptions in H5T init code (#3837) + + The H5T floating-point datatype initialization code can raise exceptions when handling signaling NaNs. This change disables FE_INVALID exceptions during initialization. + + Also removes the -ieee=full change for NAG Fortran as that shouldn't be necessary anymore. + + Fixes #3831 + +diff --git a/config/linux-gnulibc1 b/config/linux-gnulibc1 +index 328f8d3cec..079f08d96c 100644 +--- a/config/linux-gnulibc1 ++++ b/config/linux-gnulibc1 +@@ -173,10 +173,7 @@ case $FC_BASENAME in + nagfor) + + F9XSUFFIXFLAG="" +- # NOTE: The default is -ieee=stop, which will cause problems +- # when the H5T module performs floating-point type +- # introspection +- AM_FCFLAGS="$AM_FCFLAGS -ieee=full" ++ AM_FCFLAGS="$AM_FCFLAGS" + FSEARCH_DIRS="" + + # Production +diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt +index 200576332b..7de2a56974 100644 +--- a/release_docs/RELEASE.txt ++++ b/release_docs/RELEASE.txt +@@ -250,6 +250,29 @@ Bug Fixes since HDF5-1.14.2 release + =================================== + Library + ------- ++ - Suppressed floating-point exceptions in H5T init code ++ ++ The floating-point datatype initialization code in H5Tinit_float.c ++ could raise FE_INVALID exceptions while munging bits and performing ++ comparisons that might involve NaN. This was not a problem when the ++ initialization code was executed in H5detect at compile time (prior ++ to 1.14.3), but now that the code is executed at library startup ++ (1.14.3+), these exceptions can be caught by user code, as is the ++ default in the NAG Fortran compiler. ++ ++ Starting in 1.14.4, we now suppress floating-point exceptions while ++ initializing the floating-point types and clear FE_INVALID before ++ restoring the original environment. ++ ++ Fixes GitHub #3831 ++ ++ - Fixed a file handle leak in the core VFD ++ ++ When opening a file with the core VFD and a file image, if the file ++ already exists, the file check would leak the POSIX file handle. ++ ++ Fixes GitHub issue #635 ++ + - Fixed some issues with chunk index metadata not getting read + collectively when collective metadata reads are enabled + +@@ -619,12 +642,6 @@ Known Problems + this release with link errors. As a result, Windows binaries for this release + will not include Fortran. The problem will be addressed in HDF5 1.14.4. + +- IEEE standard arithmetic enables software to raise exceptions such as overflow, +- division by zero, and other illegal operations without interrupting or halting +- the program flow. The HDF5 C library intentionally performs these exceptions. +- Therefore, the "-ieee=full" nagfor switch is necessary when compiling a program +- to avoid stopping on an exception. +- + CMake files do not behave correctly with paths containing spaces. + Do not use spaces in paths because the required escaping for handling spaces + results in very complex and fragile build files. +diff --git a/src/H5Tinit_float.c b/src/H5Tinit_float.c +index 3b9e127fe4..3213f00fec 100644 +--- a/src/H5Tinit_float.c ++++ b/src/H5Tinit_float.c +@@ -51,19 +51,23 @@ + * Function: DETECT_F + * + * Purpose: This macro takes a floating point type like `double' and +- * a base name like `natd' and detects byte order, mantissa +- * location, exponent location, sign bit location, presence or +- * absence of implicit mantissa bit, and exponent bias and +- * initializes a detected_t structure with those properties. ++ * and detects byte order, mantissa location, exponent location, ++ * sign bit location, presence or absence of implicit mantissa ++ * bit, and exponent bias and initializes a detected_t structure ++ * with those properties. ++ * ++ * Note that these operations can raise floating-point ++ * exceptions and building with some compiler options ++ * (especially Fortran) can cause problems. + *------------------------------------------------------------------------- + */ +-#define DETECT_F(TYPE, VAR, INFO) \ ++#define DETECT_F(TYPE, INFO) \ + do { \ +- TYPE _v1, _v2, _v3; \ +- unsigned char _buf1[sizeof(TYPE)], _buf3[sizeof(TYPE)]; \ +- unsigned char _pad_mask[sizeof(TYPE)]; \ +- unsigned char _byte_mask; \ +- int _i, _j, _last = (-1); \ ++ TYPE _v1, _v2, _v3; \ ++ uint8_t _buf1[sizeof(TYPE)], _buf3[sizeof(TYPE)]; \ ++ uint8_t _pad_mask[sizeof(TYPE)]; \ ++ uint8_t _byte_mask; \ ++ int _i, _j, _last = -1; \ + \ + memset(&INFO, 0, sizeof(INFO)); \ + INFO.size = sizeof(TYPE); \ +@@ -81,7 +85,7 @@ + _v1 = (TYPE)4.0L; \ + H5MM_memcpy(_buf1, (const void *)&_v1, sizeof(TYPE)); \ + for (_i = 0; _i < (int)sizeof(TYPE); _i++) \ +- for (_byte_mask = (unsigned char)1; _byte_mask; _byte_mask = (unsigned char)(_byte_mask << 1)) { \ ++ for (_byte_mask = (uint8_t)1; _byte_mask; _byte_mask = (uint8_t)(_byte_mask << 1)) { \ + _buf1[_i] ^= _byte_mask; \ + H5MM_memcpy((void *)&_v2, (const void *)_buf1, sizeof(TYPE)); \ + H5_GCC_CLANG_DIAG_OFF("float-equal") \ +@@ -118,7 +122,7 @@ + _v1 = (TYPE)1.0L; \ + _v2 = (TYPE)-1.0L; \ + if (H5T__bit_cmp(sizeof(TYPE), INFO.perm, &_v1, &_v2, _pad_mask, &(INFO.sign)) < 0) \ +- HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "failed to detect byte order"); \ ++ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "failed to determine sign bit"); \ + \ + /* Mantissa */ \ + INFO.mpos = 0; \ +@@ -126,12 +130,11 @@ + _v1 = (TYPE)1.0L; \ + _v2 = (TYPE)1.5L; \ + if (H5T__bit_cmp(sizeof(TYPE), INFO.perm, &_v1, &_v2, _pad_mask, &(INFO.msize)) < 0) \ +- HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "failed to detect byte order"); \ ++ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "failed to determine mantissa"); \ + INFO.msize += 1 + (unsigned)(INFO.imp ? 0 : 1) - INFO.mpos; \ + \ + /* Exponent */ \ +- INFO.epos = INFO.mpos + INFO.msize; \ +- \ ++ INFO.epos = INFO.mpos + INFO.msize; \ + INFO.esize = INFO.sign - INFO.epos; \ + \ + _v1 = (TYPE)1.0L; \ +@@ -456,17 +459,24 @@ H5T__set_precision(H5T_fpoint_det_t *d) + herr_t H5_NO_UBSAN + H5T__init_native_float_types(void) + { ++ fenv_t saved_fenv; + H5T_fpoint_det_t det; + H5T_t *dt = NULL; + herr_t ret_value = SUCCEED; + + FUNC_ENTER_PACKAGE + ++ /* Turn off floating-point exceptions while initializing to avoid ++ * tripping over signaling NaNs while looking at "don't care" bits. ++ */ ++ if (feholdexcept(&saved_fenv) != 0) ++ HSYS_GOTO_ERROR(H5E_DATATYPE, H5E_CANTSET, FAIL, "can't save floating-point environment"); ++ + /* H5T_NATIVE_FLOAT */ + + /* Get the type's characteristics */ + memset(&det, 0, sizeof(H5T_fpoint_det_t)); +- DETECT_F(float, FLOAT, det); ++ DETECT_F(float, det); + + /* Allocate and fill type structure */ + if (NULL == (dt = H5T__alloc())) +@@ -497,7 +507,7 @@ H5T__init_native_float_types(void) + + /* Get the type's characteristics */ + memset(&det, 0, sizeof(H5T_fpoint_det_t)); +- DETECT_F(double, DOUBLE, det); ++ DETECT_F(double, det); + + /* Allocate and fill type structure */ + if (NULL == (dt = H5T__alloc())) +@@ -528,7 +538,7 @@ H5T__init_native_float_types(void) + + /* Get the type's characteristics */ + memset(&det, 0, sizeof(H5T_fpoint_det_t)); +- DETECT_F(long double, LDOUBLE, det); ++ DETECT_F(long double, det); + + /* Allocate and fill type structure */ + if (NULL == (dt = H5T__alloc())) +@@ -561,6 +571,14 @@ H5T__init_native_float_types(void) + H5T_native_order_g = det.order; + + done: ++ /* Clear any FE_INVALID exceptions from NaN handling */ ++ if (feclearexcept(FE_INVALID) != 0) ++ HSYS_GOTO_ERROR(H5E_DATATYPE, H5E_CANTSET, FAIL, "can't clear floating-point exceptions"); ++ ++ /* Restore the original environment */ ++ if (feupdateenv(&saved_fenv) != 0) ++ HSYS_GOTO_ERROR(H5E_DATATYPE, H5E_CANTSET, FAIL, "can't restore floating-point environment"); ++ + if (ret_value < 0) { + if (dt != NULL) { + dt->shared = H5FL_FREE(H5T_shared_t, dt->shared); +diff --git a/src/H5private.h b/src/H5private.h +index 14a0ac3225..3aaa0d5245 100644 +--- a/src/H5private.h ++++ b/src/H5private.h +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + #include + #include + #include 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/HERRO/HERRO-0.1.0_20240808-foss-2023a.eb b/easybuild/easyconfigs/h/HERRO/HERRO-0.1.0_20240808-foss-2023a.eb new file mode 100644 index 00000000000..a4057965c49 --- /dev/null +++ b/easybuild/easyconfigs/h/HERRO/HERRO-0.1.0_20240808-foss-2023a.eb @@ -0,0 +1,382 @@ +easyblock = 'Cargo' + +name = 'HERRO' +version = '0.1.0_20240808' +local_commit = 'deccc46' + +homepage = 'https://github.com/lbcb-sci/herro' +description = """ +HERRO is a highly-accurate, haplotype-aware, deep-learning tool for error correction of Nanopore R10.4.1 or +R9.4.1 reads (read length of >= 10 kbps is recommended). +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/lbcb-sci/herro/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] + +builddependencies = [ + ('Rust', '1.75.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('bzip2', '1.0.8'), + ('libffi', '3.4.4'), + ('libnsl', '2.0.1'), + ('SQLite', '3.42.0'), + ('util-linux', '2.39'), + ('zlib', '1.2.13'), + ('ncurses', '6.4'), + ('libreadline', '8.2'), + ('SeqKit', '2.3.1', '', SYSTEM), + ('Tk', '8.6.13'), + ('XZ', '5.4.2'), + ('matplotlib', '3.7.2'), + ('edlib', '1.3.9'), + ('h5py', '3.9.0'), + ('duplex-tools', '0.3.3'), + ('PyTorch', '2.1.2'), + ('Pillow', '10.0.0'), + ('zstd', '1.5.5'), + ('parasail', '2.6.2'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, + 'preinstallopts': '', + 'installopts': '', +} + +exts_list = [ + ('zstandard', '0.22.0', { + 'checksums': ['8226a33c542bcb54cd6bd0a366067b610b41713b64c9abec1bc4533d69f51e70'], + }), + ('Porechop', '20240119', { + 'modulename': 'porechop', + 'source_urls': ['https://github.com/dehui333/Porechop/archive/'], + 'sources': [{'download_filename': 'd2e77c6.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['6e5ff3a780fc2855b0101b4a6102437d9a0fc201e40ffabc44c0c67d7c9ad621'], + }), +] + +# use tch version 0.14.0 - compatible with PyTorch 2.1 +local_torch_opts = "sed -i 's/tch = \"0.13.0\"/tch = \"0.14.0\"/' Cargo.toml && " +local_torch_opts += 'export LIBTORCH_BYPASS_VERSION_CHECK=1 && export LIBTORCH_USE_PYTORCH=1 && ' +local_torch_opts += 'export LIBTORCH=$EBROOTPYTORCH/lib && RUSTFLAGS="-Ctarget-cpu=native"' +prebuildopts = pretestopts = preinstallopts = local_torch_opts + +# copy scripts to /bin to be easier to run scripts for users +postinstallcmds = [ + 'cp -a %(start_dir)s/scripts/* %(installdir)s/bin', + 'rm %(installdir)s/bin/herro-env.yml', + "chmod a+rx %(installdir)s/bin/*.sh", + "chmod a-x %(installdir)s/bin/*.py", +] + +_bins = [ + 'herro', + 'porechop', + 'no_split.sh', + 'postprocess_corrected.sh', + 'create_batched_alignments.sh', + 'porechop_with_split.sh', + 'preprocess.sh', + 'batch.py', + 'create_clusters.py', +] +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["herro --help"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +modloadmsg = """ +To run scripts from /scripts directory just run .sh +Do not run it as scripts/.sh +For example - run preprocess.sh as: + $ preprocess.sh +""" + +crates = [ + ('adler2', '2.0.0'), + ('aes', '0.8.4'), + ('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.86'), + ('approx', '0.5.1'), + ('autocfg', '1.3.0'), + ('base64ct', '1.6.0'), + ('block-buffer', '0.10.4'), + ('buffer-redux', '1.0.2'), + ('bytecount', '0.6.8'), + ('byteorder', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.13'), + ('cfg-if', '1.0.0'), + ('cipher', '0.4.4'), + ('clap', '4.4.18'), + ('clap_builder', '4.4.18'), + ('clap_derive', '4.4.7'), + ('clap_lex', '0.6.0'), + ('colorchoice', '1.0.2'), + ('console', '0.15.8'), + ('constant_time_eq', '0.1.5'), + ('cpufeatures', '0.2.13'), + ('crc32fast', '1.4.2'), + ('crossbeam-channel', '0.5.13'), + ('crossbeam-utils', '0.8.20'), + ('crunchy', '0.2.2'), + ('crypto-common', '0.1.6'), + ('deranged', '0.3.11'), + ('digest', '0.10.7'), + ('either', '1.13.0'), + ('encode_unicode', '0.3.6'), + ('flate2', '1.0.32'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.15'), + ('glob', '0.3.1'), + ('half', '2.4.1'), + ('heck', '0.4.1'), + ('hmac', '0.12.1'), + ('indicatif', '0.17.8'), + ('inout', '0.1.3'), + ('instant', '0.1.13'), + ('is_terminal_polyfill', '1.70.1'), + ('itertools', '0.12.1'), + ('itoa', '1.0.11'), + ('jemalloc-sys', '0.5.4+5.3.0-patched'), + ('jemallocator', '0.5.4'), + ('jobserver', '0.1.32'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.158'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.9'), + ('memchr', '2.7.4'), + ('miniz_oxide', '0.8.0'), + ('ndarray', '0.15.6'), + ('needletail', '0.5.1'), + ('npyz', '0.8.3'), + ('npyz-derive', '0.7.0'), + ('num-bigint', '0.4.6'), + ('num-complex', '0.4.6'), + ('num-conv', '0.1.0'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.19'), + ('number_prefix', '0.4.0'), + ('once_cell', '1.19.0'), + ('ordered-float', '4.2.2'), + ('password-hash', '0.4.2'), + ('pbkdf2', '0.11.0'), + ('pest', '2.7.11'), + ('pest_derive', '2.7.11'), + ('pest_generator', '2.7.11'), + ('pest_meta', '2.7.11'), + ('pkg-config', '0.3.30'), + ('portable-atomic', '1.7.0'), + ('powerfmt', '0.2.0'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.86'), + ('py_literal', '0.4.0'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rawpointer', '0.2.1'), + ('rustc-hash', '1.1.0'), + ('ryu', '1.0.18'), + ('safetensors', '0.3.3'), + ('serde', '1.0.208'), + ('serde_derive', '1.0.208'), + ('serde_json', '1.0.125'), + ('sha1', '0.10.6'), + ('sha2', '0.10.8'), + ('shlex', '1.3.0'), + ('strsim', '0.10.0'), + ('subtle', '2.6.1'), + ('syn', '1.0.109'), + ('syn', '2.0.75'), + ('tch', '0.14.0'), + ('thiserror', '1.0.63'), + ('thiserror-impl', '1.0.63'), + ('time', '0.3.36'), + ('time-core', '0.1.2'), + ('torch-sys', '0.14.0'), + ('typenum', '1.17.0'), + ('ucd-trie', '0.1.6'), + ('unicode-ident', '1.0.12'), + ('unicode-width', '0.1.13'), + ('utf8parse', '0.2.2'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('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'), + ('xz2', '0.1.7'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), + ('zip', '0.6.6'), + ('zstd', '0.11.2+zstd.1.5.2'), + ('zstd', '0.13.2'), + ('zstd-safe', '5.0.2+zstd.1.5.2'), + ('zstd-safe', '7.2.1'), + ('zstd-sys', '2.0.13+zstd.1.5.6'), +] + +checksums = [ + {'HERRO-0.1.0_20240808.tar.gz': '885f64ab097c89cf8ec8ec38625c6325271997e89636de756aa12fb68aab7598'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'aes-0.8.4.tar.gz': 'b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0'}, + {'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.86.tar.gz': 'b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'base64ct-1.6.0.tar.gz': '8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'buffer-redux-1.0.2.tar.gz': '4e8acf87c5b9f5897cd3ebb9a327f420e0cae9dd4e5c1d2e36f2c84c571a58f1'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'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.1.13.tar.gz': '72db2f7947ecee9b03b510377e8bb9077afa27176fdbff55c51027e976fdcc48'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'cipher-0.4.4.tar.gz': '773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad'}, + {'clap-4.4.18.tar.gz': '1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c'}, + {'clap_builder-4.4.18.tar.gz': '4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7'}, + {'clap_derive-4.4.7.tar.gz': 'cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442'}, + {'clap_lex-0.6.0.tar.gz': '702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1'}, + {'colorchoice-1.0.2.tar.gz': 'd3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0'}, + {'console-0.15.8.tar.gz': '0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb'}, + {'constant_time_eq-0.1.5.tar.gz': '245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc'}, + {'cpufeatures-0.2.13.tar.gz': '51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'crossbeam-channel-0.5.13.tar.gz': '33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'crypto-common-0.1.6.tar.gz': '1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3'}, + {'deranged-0.3.11.tar.gz': 'b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4'}, + {'digest-0.10.7.tar.gz': '9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'flate2-1.0.32.tar.gz': '9c0596c1eac1f9e04ed902702e9878208b336edc9d6fddc8a48387349bab3666'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'half-2.4.1.tar.gz': '6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hmac-0.12.1.tar.gz': '6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e'}, + {'indicatif-0.17.8.tar.gz': '763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3'}, + {'inout-0.1.3.tar.gz': 'a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5'}, + {'instant-0.1.13.tar.gz': 'e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222'}, + {'is_terminal_polyfill-1.70.1.tar.gz': '7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jemalloc-sys-0.5.4+5.3.0-patched.tar.gz': 'ac6c1946e1cea1788cbfde01c993b52a10e2da07f4bac608228d1bed20bfebf2'}, + {'jemallocator-0.5.4.tar.gz': 'a0de374a9f8e63150e6f5e8a60cc14c668226d7a347d8aee1a45766e3c4dd3bc'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.9.tar.gz': '9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'needletail-0.5.1.tar.gz': 'db05a5ab397f64070d8c998fa0fbb84e484b81f95752af317dac183a82d9295d'}, + {'npyz-0.8.3.tar.gz': '13f27ea175875c472b3df61ece89a6d6ef4e0627f43704e400c782f174681ebd'}, + {'npyz-derive-0.7.0.tar.gz': 'a285bd6c2f2a9a4b12b0f3813ad3e01a37e02d3de508c6d80a009f5e1af69aed'}, + {'num-bigint-0.4.6.tar.gz': 'a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9'}, + {'num-complex-0.4.6.tar.gz': '73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495'}, + {'num-conv-0.1.0.tar.gz': '51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'ordered-float-4.2.2.tar.gz': '4a91171844676f8c7990ce64959210cd2eaef32c2612c50f9fae9f8aaa6065a6'}, + {'password-hash-0.4.2.tar.gz': '7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700'}, + {'pbkdf2-0.11.0.tar.gz': '83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917'}, + {'pest-2.7.11.tar.gz': 'cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95'}, + {'pest_derive-2.7.11.tar.gz': '2a548d2beca6773b1c244554d36fcf8548a8a58e74156968211567250e48e49a'}, + {'pest_generator-2.7.11.tar.gz': '3c93a82e8d145725dcbaf44e5ea887c8a869efdcc28706df2d08c69e17077183'}, + {'pest_meta-2.7.11.tar.gz': 'a941429fea7e08bedec25e4f6785b6ffaacc6b755da98df5ef3e7dcf4a124c4f'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'portable-atomic-1.7.0.tar.gz': 'da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265'}, + {'powerfmt-0.2.0.tar.gz': '439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'py_literal-0.4.0.tar.gz': '102df7a3d46db9d3891f178dcc826dc270a6746277a9ae6436f8d29fd490a8e1'}, + {'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'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'safetensors-0.3.3.tar.gz': 'd93279b86b3de76f820a8854dd06cbc33cfa57a417b19c47f6a25280112fb1df'}, + {'serde-1.0.208.tar.gz': 'cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2'}, + {'serde_derive-1.0.208.tar.gz': '24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf'}, + {'serde_json-1.0.125.tar.gz': '83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed'}, + {'sha1-0.10.6.tar.gz': 'e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba'}, + {'sha2-0.10.8.tar.gz': '793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'subtle-2.6.1.tar.gz': '13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.75.tar.gz': 'f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9'}, + {'tch-0.14.0.tar.gz': '0ed5dddab3812892bf5fb567136e372ea49f31672931e21cec967ca68aec03da'}, + {'thiserror-1.0.63.tar.gz': 'c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724'}, + {'thiserror-impl-1.0.63.tar.gz': 'a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261'}, + {'time-0.3.36.tar.gz': '5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885'}, + {'time-core-0.1.2.tar.gz': 'ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3'}, + {'torch-sys-0.14.0.tar.gz': '803446f89fb877a117503dbfb8375b6a29fa8b0e0f44810fac3863c798ecef22'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'ucd-trie-0.1.6.tar.gz': 'ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-width-0.1.13.tar.gz': '0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'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'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, + {'zip-0.6.6.tar.gz': '760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261'}, + {'zstd-0.11.2+zstd.1.5.2.tar.gz': '20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4'}, + {'zstd-0.13.2.tar.gz': 'fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9'}, + {'zstd-safe-5.0.2+zstd.1.5.2.tar.gz': '1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db'}, + {'zstd-safe-7.2.1.tar.gz': '54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059'}, + {'zstd-sys-2.0.13+zstd.1.5.6.tar.gz': '38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa'}, +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HISAT2/HISAT2-2.2.1-gompi-2023a.eb b/easybuild/easyconfigs/h/HISAT2/HISAT2-2.2.1-gompi-2023a.eb new file mode 100644 index 00000000000..89974da79ff --- /dev/null +++ b/easybuild/easyconfigs/h/HISAT2/HISAT2-2.2.1-gompi-2023a.eb @@ -0,0 +1,61 @@ +## +# 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:: +# 2.2.1 - changes from Adam Huffman +# Bumped to foss-2021b +# J. Sassmannshausen + +easyblock = 'MakeCp' + +name = 'HISAT2' +version = '2.2.1' + +homepage = 'https://daehwankimlab.github.io/hisat2' +description = """HISAT2 is a fast and sensitive alignment program for mapping next-generation sequencing reads + (both DNA and RNA) against the general human population (as well as against a single reference genome).""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +sources = [{ + 'source_urls': ['https://cloud.biohpc.swmed.edu/index.php/s/fE9QCsX3NH4QwBi'], + 'download_filename': 'download', + 'filename': '%(namelower)s-%(version)s-source.zip', +}] +patches = [ + 'hisat2-libname-fix.patch', +] +checksums = [ + {'hisat2-2.2.1-source.zip': '48e933330d4d8470d2b3dfe7ec3918f2e98a75f7381891e23b7df1fb4f135eb1'}, + {'hisat2-libname-fix.patch': '8aa91d1dd6455b96c10ce48827f8313b006241d815fbe6382422dbae3b610726'}, +] + +dependencies = [ + ('ncbi-vdb', '3.0.10'), + ('SRA-Toolkit', '3.0.10'), # provides NGS +] + +buildopts = 'CC="$CC" CPP="$CXX" RELEASE_FLAGS="$CFLAGS" ' +buildopts += 'USE_SRA=1 NCBI_NGS_DIR="$EBROOTSRAMINTOOLKIT" NCBI_VDB_DIR="$EBROOTNCBIMINVDB" ' +# add new libncbi-ngs from the NGS merge into SRA-Toolkit v3 +buildopts += 'SRA_LIB="-lncbi-ngs-c++ -lngs-c++ -lncbi-ngs -lncbi-vdb -ldl"' + +local_executables = ['hisat2', 'hisat2-align-l', 'hisat2-align-s', 'hisat2-build', 'hisat2-build-l', 'hisat2-build-s', + 'hisat2-inspect', 'hisat2-inspect-s', 'hisat2-inspect-l', 'hisat2-repeat', 'extract_exons.py', + 'extract_splice_sites.py', 'hisat2_extract_exons.py', 'hisat2_extract_snps_haplotypes_UCSC.py', + 'hisat2_extract_snps_haplotypes_VCF.py', 'hisat2_extract_splice_sites.py', + 'hisat2_read_statistics.py', 'hisat2_simulate_reads.py'] +files_to_copy = [(local_executables, 'bin'), 'scripts', 'example'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_executables], + 'dirs': ['scripts', 'example'], +} + +sanity_check_commands = ["hisat2 --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb b/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb new file mode 100644 index 00000000000..bb76dc1e937 --- /dev/null +++ b/easybuild/easyconfigs/h/HMMER/HMMER-3.4-gompi-2023b.eb @@ -0,0 +1,78 @@ +## +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Nils Christian , +# Fotis Georgatos +# Updated by: Filip Kružík (INUITS) +# 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 = 'HMMER' +version = '3.4' + +homepage = 'http://hmmer.org/' +description = """HMMER is used for searching sequence databases for homologs + of protein sequences, and for making protein sequence alignments. It + implements methods using probabilistic models called profile hidden Markov + models (profile HMMs). Compared to BLAST, FASTA, and other sequence + alignment and database search tools based on older scoring methodology, + HMMER aims to be significantly more accurate and more able to detect remote + homologs because of the strength of its underlying mathematical models. In the + past, this strength came at significant computational expense, but in the new + HMMER3 project, HMMER is now essentially as fast as BLAST.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +source_urls = [ + 'http://eddylab.org/software/hmmer/', + 'http://eddylab.org/software/hmmer%(version_major)s/%(version)s/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ca70d94fd0cf271bd7063423aabb116d42de533117343a9b27a65c17ff06fbf3'] + +builddependencies = [ + ('Python', '3.11.5'), + ('Perl', '5.38.0'), +] + +# replace hardcoded /usr/bin/perl shebang lines with '/usr/bin/env perl' across all files +preconfigopts = "grep '/usr/bin/perl' . | cut -f1 -d: | xargs echo sed -i 's@/usr/bin/perl@/usr/bin/env perl@g' && " + +configopts = '--enable-mpi' + +buildopts = ' V=1 ' + +testopts = buildopts +runtest = 'check' + +installopts = ' && cd easel && make install' + +local_bin_files = ['alimask', 'esl-afetch', 'esl-alimanip', 'esl-alimap', 'esl-alimask', + 'esl-alimerge', 'esl-alipid', 'esl-alirev', 'esl-alistat', 'esl-compalign', + 'esl-compstruct', 'esl-construct', 'esl-histplot', 'esl-mask', 'esl-reformat', + 'esl-selectn', 'esl-seqrange', 'esl-seqstat', 'esl-sfetch', 'esl-shuffle', + 'esl-ssdraw', 'esl-translate', 'esl-weight', 'hmmalign', 'hmmbuild', + 'hmmconvert', 'hmmemit', 'hmmfetch', 'hmmlogo', 'hmmpgmd', 'hmmpress', + 'hmmscan', 'hmmsearch', 'hmmsim', 'hmmstat', 'jackhmmer', 'makehmmerdb', + 'nhmmer', 'nhmmscan', 'phmmer'] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in local_bin_files], + 'dirs': ['bin', 'share'], +} + +sanity_check_commands = [ + "esl-construct -h", + "hmmsearch -h", + "nhmmer -h", +] + +moduleclass = 'bio' 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 new file mode 100644 index 00000000000..addf2b3cf87 --- /dev/null +++ b/easybuild/easyconfigs/h/HOLE2/HOLE2-2.3.1-GCCcore-12.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'HOLE2' +version = '2.3.1' + +homepage = 'https://www.holeprogram.org/' +description = """HOLE is a program that allows the analysis and visualisation of +the pore dimensions of the holes through molecular structures of ion channels""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/osmart/hole2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['1109dd3d15a63b6c72833314f3ef0fcfdf56341e634fbd2195df7427e6b435ae'] + +builddependencies = [ + ('binutils', '2.40'), +] + +skipsteps = ['configure'] + +prebuildopts = "".join([ + "source source.apache && ", + "cd src && ", +]) + +preinstallopts = prebuildopts +install_cmd = "make install-all PREFIX=%(installdir)s" + +parallel = 1 + +local_binary = [ + 'bln2gnu', 'capost2gnu', 'grd2gnu', 'hole', 'labqpt', 'make_post2gnu', + 'make_post_map', 'qplot', 'qpt_conv', 'sos_triangle', 'sph_process', + 'vdwdot', 'vmd_triangles_to_lines' +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binary], + 'dirs': ['bin', 'share/hole2/rad'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826-foss-2020b.eb b/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826-foss-2020b.eb index b96581acb3c..5a0f068b7d1 100644 --- a/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826-foss-2020b.eb +++ b/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826-foss-2020b.eb @@ -12,7 +12,11 @@ toolchainopts = {'usempi': True} source_urls = ['https://github.com/Markus-Goetz/hpdbscan/archive/'] sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}] -checksums = ['52ff343f77aeea5a425a911d88a57314c6bc877c18209eb53819d114421a868d'] +patches = ['HPDBSCAN-20210826_fix-numpy-headers.patch'] +checksums = [ + {'HPDBSCAN-20210826.tar.gz': '52ff343f77aeea5a425a911d88a57314c6bc877c18209eb53819d114421a868d'}, + {'HPDBSCAN-20210826_fix-numpy-headers.patch': 'cceb6a8cc15cb9bfbf92e5944f0398c1ac9db85a04fea3f7b1e0a0595fb530b1'}, +] builddependencies = [ ('CMake', '3.18.4'), diff --git a/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826_fix-numpy-headers.patch b/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826_fix-numpy-headers.patch new file mode 100644 index 00000000000..bbc6f3764ba --- /dev/null +++ b/easybuild/easyconfigs/h/HPDBSCAN/HPDBSCAN-20210826_fix-numpy-headers.patch @@ -0,0 +1,81 @@ +Fix finding numpy includes such as ``. +Fixes failing compilation unless the numpy headers are in the compilers search path (e.g. $CPATH) +See https://github.com/Markus-Goetz/hpdbscan/pull/12 + +Author: Alexander Grund (TU Dresden) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6c3e450..b25c597 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -44,7 +44,7 @@ TARGET_COMPILE_OPTIONS(hpdbscan-bin PRIVATE ${OpenMP_CXX_FLAGS}) + + ## hdf5 + FIND_PACKAGE(HDF5 1.8.10 REQUIRED) +-INCLUDE_DIRECTORIES("${HDF5_INCLUDE_DIRS}") ++TARGET_INCLUDE_DIRECTORIES(hpdbscan-bin PRIVATE "${HDF5_INCLUDE_DIRS}") + TARGET_LINK_LIBRARIES(hpdbscan-bin PRIVATE "${HDF5_LIBRARIES}") + + ## swig and python detection for optional bindings +@@ -57,10 +57,9 @@ IF(SWIG_FOUND) + MESSAGE("PYTHON HEADERS NOT FOUND, BUILDING WITHOUT BINDINGS") + MESSAGE("TRY INSTALLING THE python-dev OR python-devel PACKAGE") + ELSE() +- INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}) + FIND_PACKAGE(NumPy) +- IF(NUMPY_FOUND) +- EXECUTE_PROCESS(COMMAND swig -c++ -python -I"${PYTHON_INCLUDE_DIRS}" -I"${NUMPY_INCLUDE_DIRS}" -o "${CMAKE_CURRENT_BINARY_DIR}/hpdbscan_wrap.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/swig/hpdbscan.i") ++ IF(NumPy_FOUND) ++ EXECUTE_PROCESS(COMMAND swig -c++ -python -o "${CMAKE_CURRENT_BINARY_DIR}/hpdbscan_wrap.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/swig/hpdbscan.i") + ADD_LIBRARY(hpdbscan-binding SHARED ${CMAKE_CURRENT_BINARY_DIR}/hpdbscan_wrap.cpp) + IF(MPI_FOUND) + FIND_PACKAGE(MPI4PY) +@@ -71,8 +70,10 @@ IF(SWIG_FOUND) + MESSAGE("MPI FOUND, BUT MPI4PY MISSING, BINDING WILL BE BUILT WITHOUT MPI SUPPORT") + ENDIF() + ENDIF() ++ TARGET_INCLUDE_DIRECTORIES(hpdbscan-binding PRIVATE ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS}) + TARGET_LINK_LIBRARIES(hpdbscan-binding PRIVATE ${OpenMP_CXX_FLAGS}) + TARGET_COMPILE_OPTIONS(hpdbscan-binding PRIVATE ${OpenMP_CXX_FLAGS}) ++ TARGET_INCLUDE_DIRECTORIES(hpdbscan-binding PRIVATE "${HDF5_INCLUDE_DIRS}") + TARGET_LINK_LIBRARIES(hpdbscan-binding PRIVATE "${HDF5_LIBRARIES}") + + # rename the library +diff --git a/cmake/FindNumPy.cmake b/cmake/FindNumPy.cmake +index ba0d7fd..8e353b5 100644 +--- a/cmake/FindNumPy.cmake ++++ b/cmake/FindNumPy.cmake +@@ -1,28 +1,15 @@ + # modified from https://github.com/live-clones/xdmf/blob/master/CMake/FindMPI4PY.cmake + +-IF(NOT NUMPY_INCLUDE_DIR) ++IF(NOT NUMPY_INCLUDE_DIRS) + EXECUTE_PROCESS(COMMAND + "${PYTHON_EXECUTABLE}" "-c" "import numpy as np; print(np.get_include())" +- OUTPUT_VARIABLE NUMPY_INCLUDE_DIR ++ OUTPUT_VARIABLE NUMPY_COMMAND_OUTPUT + RESULT_VARIABLE NUMPY_COMMAND_RESULT + OUTPUT_STRIP_TRAILING_WHITESPACE) +- IF(NUMPY_COMMAND_RESULT) +- MESSAGE("numpy not found") +- SET(NUMPY_FOUND FALSE) +- ELSE() +- IF(NUMPY_INCLUDE_DIR MATCHES "Traceback") +- MESSAGE("numpy matches traceback") +- ## Did not successfully include NUMPY +- SET(NUMPY_FOUND FALSE) +- ELSE() +- ## successful +- SET(NUMPY_FOUND TRUE) +- SET(NUMPY_INCLUDE_DIR ${NUMPY_INCLUDE_DIR} CACHE STRING "numpy include path") +- ENDIF() ++ IF(NOT NUMPY_COMMAND_RESULT AND NOT NUMPY_COMMAND_OUTPUT MATCHES "Traceback") ++ SET(NUMPY_INCLUDE_DIRS ${NUMPY_COMMAND_OUTPUT} CACHE STRING "numpy include path") + ENDIF() +-ELSE() +- SET(NUMPY_FOUND TRUE) + ENDIF() + + INCLUDE(FindPackageHandleStandardArgs) +-FIND_PACKAGE_HANDLE_STANDARD_ARGS(NUMPY DEFAULT_MSG NUMPY_INCLUDE_DIR) ++FIND_PACKAGE_HANDLE_STANDARD_ARGS(NumPy DEFAULT_MSG NUMPY_INCLUDE_DIRS) 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 new file mode 100644 index 00000000000..75808cd8e7a --- /dev/null +++ b/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb @@ -0,0 +1,64 @@ +easyblock = 'PythonBundle' + +name = 'HTSplotter' +version = '2.11' + +homepage = 'https://github.com/CBIGR/HTSplotter' +description = """HTSplotter allows an end-to-end data processing and analysis of chemical and genetic in vitro +perturbation screens.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('h5py', '3.9.0'), + ('Seaborn', '0.13.2'), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('argon2-cffi-bindings', '21.2.0', { + 'modulename': '_argon2_cffi_bindings', + 'checksums': ['bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3'], + }), + ('argon2_cffi', '23.1.0', { + 'modulename': 'argon2', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea'], + }), + ('minio', '7.2.9', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['fe5523d9c4a4d6cfc07e96905852841bccdb22b22770e1efca4bf5ae8b65774b'], + }), + ('pypdf', '5.0.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['67603e2e96cdf70e676564520933c017d450f16075b9966be5fee128812ace8c'], + }), + ('pypdf2', '3.0.1', { + 'modulename': 'PyPDF2', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d16e4205cfee272fbdc0568b68d82be796540b1537508cef59388f839c191928'], + }), + ('PyPDF3', '1.0.6', { + 'modulename': 'PyPDF3', + 'checksums': ['c946f3273419e37258e35e72273f49904ab15723d87a761c1115ef99799f8c5f'], + }), + (name, version, { + 'modulename': 'HTSplotter', + # 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'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..40540c3fcdc --- /dev/null +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + +name = 'HarfBuzz' +version = '9.0.0' + +homepage = 'https://www.freedesktop.org/wiki/Software/HarfBuzz' +description = """HarfBuzz is an OpenType text shaping engine.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'harfbuzz' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +patches = ['HarfBuzz-9.0.0_fix-subset-test.patch'] +checksums = [ + {'9.0.0.tar.gz': 'b7e481b109d19aefdba31e9f5888aa0cdfbe7608fed9a43494c060ce1f8a34d2'}, + {'HarfBuzz-9.0.0_fix-subset-test.patch': '1635505c27c312dca507863f2a865eb88d42e35ff4cc241cfa0e90c0ade8b790'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('GObject-Introspection', '1.80.1'), + ('pkgconf', '2.2.0'), + ('Ninja', '1.12.1'), + ('Meson', '1.4.0'), + ('fonttools', '4.53.1'), # For tests +] + +dependencies = [ + ('GLib', '2.80.4'), + ('ICU', '75.1'), + ('cairo', '1.18.0'), + ('freetype', '2.13.2'), +] + +configopts = '--default-library=both' # static and shared library +configopts += ' -Dgobject=enabled -Dintrospection=enabled' +configopts += ' -Dglib=enabled' +configopts += ' -Dicu=enabled' +configopts += ' -Dcairo=enabled' +configopts += ' -Dfreetype=enabled' + +runtest = 'meson' +testopts = 'test -C %(builddir)s/easybuild_obj -t 60' + +sanity_check_paths = { + 'files': ['lib/libharfbuzz.%s' % SHLIB_EXT, 'bin/hb-view'], + 'dirs': [] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch new file mode 100644 index 00000000000..25a2b619fc8 --- /dev/null +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-9.0.0_fix-subset-test.patch @@ -0,0 +1,26 @@ +The test "feature_variation_instance_collect_lookups" fails when run in environments +where the decimal separator is not a dot ("."). +Fix this by using the C locale. +See https://github.com/harfbuzz/harfbuzz/pull/4857 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/subset/run-tests.py b/test/subset/run-tests.py +index 9e09d95d1d9..c0c256d8974 100755 +--- a/test/subset/run-tests.py ++++ b/test/subset/run-tests.py +@@ -135,10 +135,13 @@ def check_ots (path): + + has_ots = has_ots() + ++env = os.environ.copy() ++env['LC_ALL'] = 'C' + process = subprocess.Popen ([hb_subset, '--batch'], + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, +- stderr=sys.stdout) ++ stderr=sys.stdout, ++ env=env) + + fails = 0 + for path in args: 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/h4toh5/h4toh5-2.2.3-foss-2018b.eb b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-foss-2018b.eb index 0b79b7cfc94..605d20f196f 100644 --- a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-foss-2018b.eb +++ b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-foss-2018b.eb @@ -3,13 +3,13 @@ easyblock = 'ConfigureMake' name = 'h4toh5' version = '2.2.3' -homepage = 'http://www.hdfgroup.org/h4toh5/' +homepage = "https://docs.hdfgroup.org/archive/support/products/hdf5_tools/h4toh5/index.html" description = """The h4toh5 software consists of the h4toh5 and h5toh4 command-line utilities, as well as a conversion library for converting between individual HDF4 and HDF5 objects.""" toolchain = {'name': 'foss', 'version': '2018b'} -source_urls = ['http://www.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] +source_urls = ['http://support.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] sources = ['h4h5tools-%(version)s.tar.gz'] checksums = ['ba167d9e5ec1f9014a95e3f5d0621f814caa6e83508e235ce60cfd315e3a9d3f'] diff --git a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2019b.eb b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2019b.eb index 81636ad6de3..079d5eb7de1 100644 --- a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2019b.eb +++ b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2019b.eb @@ -3,13 +3,13 @@ easyblock = 'ConfigureMake' name = 'h4toh5' version = '2.2.3' -homepage = 'http://www.hdfgroup.org/h4toh5/' +homepage = "https://docs.hdfgroup.org/archive/support/products/hdf5_tools/h4toh5/index.html" description = """The h4toh5 software consists of the h4toh5 and h5toh4 command-line utilities, as well as a conversion library for converting between individual HDF4 and HDF5 objects.""" toolchain = {'name': 'gompi', 'version': '2019b'} -source_urls = ['http://www.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] +source_urls = ['http://support.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] sources = ['h4h5tools-%(version)s%(versionsuffix)s.tar.gz'] checksums = ['ba167d9e5ec1f9014a95e3f5d0621f814caa6e83508e235ce60cfd315e3a9d3f'] diff --git a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2020b.eb b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2020b.eb index 8e8e8c7f705..50fe19e455a 100644 --- a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2020b.eb +++ b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.3-gompi-2020b.eb @@ -3,13 +3,13 @@ easyblock = 'ConfigureMake' name = 'h4toh5' version = '2.2.3' -homepage = 'http://www.hdfgroup.org/h4toh5/' +homepage = "https://docs.hdfgroup.org/archive/support/products/hdf5_tools/h4toh5/index.html" description = """The h4toh5 software consists of the h4toh5 and h5toh4 command-line utilities, as well as a conversion library for converting between individual HDF4 and HDF5 objects.""" toolchain = {'name': 'gompi', 'version': '2020b'} -source_urls = ['http://www.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] +source_urls = ['http://support.hdfgroup.org/ftp/HDF5/tools/%s/src' % name] sources = ['h4h5tools-%(version)s%(versionsuffix)s.tar.gz'] checksums = ['ba167d9e5ec1f9014a95e3f5d0621f814caa6e83508e235ce60cfd315e3a9d3f'] diff --git a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.5-gompi-2022a.eb b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.5-gompi-2022a.eb index 1a825bc8ed8..28d67776a1b 100644 --- a/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.5-gompi-2022a.eb +++ b/easybuild/easyconfigs/h/h4toh5/h4toh5-2.2.5-gompi-2022a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'h4toh5' version = '2.2.5' -homepage = 'http://www.hdfgroup.org/h4toh5/' +homepage = "https://docs.hdfgroup.org/archive/support/products/hdf5_tools/h4toh5/index.html" description = """The h4toh5 software consists of the h4toh5 and h5toh4 command-line utilities, as well as a conversion library for converting between individual HDF4 and HDF5 objects.""" diff --git a/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..071c33cd4b1 --- /dev/null +++ b/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-12.3.0.eb @@ -0,0 +1,35 @@ +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': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.3'), + ('hatchling', '1.18.0'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('hatch_nodejs_version', '0.3.2', { + 'checksums': ['8a7828d817b71e50bbbbb01c9bfc0b329657b7900c56846489b9c958de15b54c'], + }), + ('hatch_jupyter_builder', '0.9.1', { + 'checksums': ['79278198d124c646b799c5e8dca8504aed9dcaaa88d071a09eb0b5c2009a58ad'], + }), +] + +moduleclass = 'tools' 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..f4483b94edd --- /dev/null +++ b/easybuild/easyconfigs/h/hatch-jupyter-builder/hatch-jupyter-builder-0.9.1-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +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'), +] + +sanity_pip_check = True +use_pip = True + +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..4a9b159e99b --- /dev/null +++ b/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2023b.eb @@ -0,0 +1,29 @@ +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'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +options = {'modulename': 'hicstraw'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/hiredis/hiredis-1.2.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/h/hiredis/hiredis-1.2.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..bc3a5a1c715 --- /dev/null +++ b/easybuild/easyconfigs/h/hiredis/hiredis-1.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,41 @@ +# Author: Alexander Grund (TU Dresden) +# Based on EC by J. Sassmannshausen (Imperial College London) + +easyblock = 'CMakeMake' + +name = 'hiredis' +version = '1.2.0' + +homepage = 'https://github.com/redis/hiredis' +description = """Hiredis is a minimalistic C client library for the Redis database. + +It is minimalistic because it just adds minimal support for the protocol, +but at the same time it uses a high level printf-alike API in order to +make it much higher level than otherwise suggested by its minimal code base +and the lack of explicit bindings for every Redis command.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'redis' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['82ad632d31ee05da13b537c124f819eb88e18851d9cb0c30ae0552084811588c'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('OpenSSL', '3', '', SYSTEM), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['lib/libhiredis.a', 'lib/libhiredis.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb b/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb new file mode 100644 index 00000000000..f2072785aa5 --- /dev/null +++ b/easybuild/easyconfigs/i/IJulia/IJulia-1.24.2-Julia-1.10.3.eb @@ -0,0 +1,84 @@ +easyblock = 'JuliaBundle' + +name = 'IJulia' +version = '1.24.2' +_julia_ver = '1.10.3' +versionsuffix = "-Julia-%s" % _julia_ver + +homepage = 'https://github.com/JuliaLang/IJulia.jl' +description = "Julia kernel for Jupyter" + +toolchain = SYSTEM + +dependencies = [ + ('Julia', _julia_ver, '-linux-%s' % ARCH, SYSTEM), +] + +exts_list = [ + ('Preferences', '1.4.3', { + 'source_urls': ['https://github.com/JuliaPackaging/Preferences.jl/archive/'], + 'checksums': ['02b995891818b91266f98bcb46eefc513dfb66b177b5a6a0d1cff97be3e4582d'], + }), + ('JLLWrappers', '1.5.0', { + 'source_urls': ['https://github.com/JuliaPackaging/JLLWrappers.jl/archive/'], + 'checksums': ['6e83b81afd0c57636e80bcf52ad51f6ba43d98643cac999727b958d9ab3d4a01'], + }), + ('SnoopPrecompile', '2.10.8', { + 'source_urls': ['https://github.com/timholy/SnoopCompile.jl/archive/'], + 'start_dir': '%(name)s', + 'checksums': ['9b3204ce72fa3d0f1a359428e9f2ae43db2ee91f7ba77407056aced39d74d9d6'], + }), + ('PrecompileTools', '1.2.1', { + 'source_urls': ['https://github.com/JuliaLang/PrecompileTools.jl/archive/'], + 'checksums': ['af58b384e08b488b2da5ad19e72817b8b0ddb026997f8cf85f2964cc2c26cd34'], + }), + ('Parsers', '2.8.1', { + 'source_urls': ['https://github.com/JuliaData/Parsers.jl/archive/'], + 'checksums': ['6ea035be48ef5daaecdff62ac8f29c6110aaf20f3349058a4f96e2503f55b693'], + }), + ('JSON', '0.21.4', { + 'source_urls': ['https://github.com/JuliaIO/JSON.jl/archive/'], + 'checksums': ['c6b620ad4150ec5a154367f50c9579af800e3a89a6d8f9cb5dd30215a5d3f552'], + }), + ('MbedTLS', '1.1.9', { + 'source_urls': ['https://github.com/JuliaLang/MbedTLS.jl/archive/'], + 'checksums': ['d421bb36f9eb7f8840bd7108c2c33a9a5532454ac9465861e2f7797f89c1f56b'], + }), + ('VersionParsing', '1.3.0', { + 'source_urls': ['https://github.com/JuliaInterop/VersionParsing.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('Conda', '1.10.0', { + 'source_urls': ['https://github.com/JuliaPy/Conda.jl/archive/'], + 'checksums': ['2007170cad58d6f27626500abd52bd782023b8ecb7a7d05a678d7aec3c0f9948'], + }), + ('SoftGlobalScope', '1.1.0', { + 'source_urls': ['https://github.com/stevengj/SoftGlobalScope.jl/archive/'], + 'checksums': ['8d4264386c859403938498cd9ddd5e94e10181deba4a3e71d391b16750e3848b'], + }), + ('libsodium_jll', '1.0.20+0', { + 'source_urls': ['https://github.com/JuliaBinaryWrappers/libsodium_jll.jl/archive/'], + 'sources': [{'filename': 'libsodium-v%(version)s.tar.gz'}], + 'checksums': ['f7c3a17acc3a478ec10a4a49a0dd04694140f4483644ec9db638706ea9844aba'], + }), + ('ZeroMQ_jll', '4.3.5+0', { + 'source_urls': ['https://github.com/JuliaBinaryWrappers/ZeroMQ_jll.jl/archive/'], + 'sources': [{'filename': 'ZeroMQ-v%(version)s.tar.gz'}], + 'checksums': ['29d1f35e48c1436743a6da28518cb7aeccb32af4b439c3976df1967c6a252e87'], + }), + ('ZMQ', '1.2.4', { + 'source_urls': ['https://github.com/JuliaInterop/ZMQ.jl/archive/'], + 'checksums': ['a15fe752d2b049ad7521d03909ae8ad6c28e4cf46fc823f666cbc1cc6f5795ba'], + }), + (name, version, { + 'preinstallopts': "mkdir -p %(installdir)s/jupyter && export JUPYTER_DATA_DIR=%(installdir)s/jupyter && ", + 'source_urls': ['https://github.com/JuliaLang/IJulia.jl/archive/'], + 'checksums': ['de215348c7c41e1ca15c0d21f5f9a78bedce77b02ef89d67f38702c4d57ee80d'], + }), +] + +modextrapaths = { + 'JUPYTER_PATH': 'jupyter', +} + +moduleclass = 'lib' 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 78aaf35586a..c43ce71e9a8 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'), ] @@ -58,12 +59,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..a85e58910e9 --- /dev/null +++ b/easybuild/easyconfigs/i/IPython/IPython-8.27.0-GCCcore-13.3.0.eb @@ -0,0 +1,80 @@ +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') +] + +sanity_pip_check = True +use_pip = True + +# for the matplotlib-inline required extention we avoid the import sanity check +# as it will fail without matplotlib in the environment, but ipython devs prefer not to make +# matplotlib a required dep (https://github.com/ipython/matplotlib-inline/issues/4) +# we follow the same convention and we not set matplotlib as dependency + +# 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..163d831276b --- /dev/null +++ b/easybuild/easyconfigs/i/IPython/IPython-8.28.0-GCCcore-13.3.0.eb @@ -0,0 +1,79 @@ +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') +] + +sanity_pip_check = True +use_pip = True + +# for the matplotlib-inline required extention we avoid the import sanity check +# as it will fail without matplotlib in the environment, but ipython devs prefer not to make +# matplotlib a required dep (https://github.com/ipython/matplotlib-inline/issues/4) +# we follow the same convention and we not set matplotlib as dependency + +exts_list = [ + ('traitlets', '5.13.0', { + 'checksums': ['9b232b9430c8f57288c1024b34a8f0251ddcc47268927367a0dd3eeaca40deb5'], + }), + ('pure_eval', '0.2.2', { + 'checksums': ['2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3'], + }), + ('executing', '2.0.1', { + 'checksums': ['35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147'], + }), + ('asttokens', '2.4.1', { + 'checksums': ['b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0'], + }), + ('stack_data', '0.6.3', { + 'checksums': ['836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9'], + }), + ('prompt_toolkit', '3.0.41', { + 'checksums': ['941367d97fc815548822aa26c2a269fdc4eb21e9ec05fc5d447cf09bad5d75f0'], + }), + ('pickleshare', '0.7.5', { + 'checksums': ['87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca'], + }), + ('matplotlib-inline', '0.1.6', { + 'modulename': False, + 'checksums': ['f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304'], + }), + ('backcall', '0.2.0', { + 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'], + }), + ('ipython', version, { + 'modulename': 'IPython', + 'checksums': ['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/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1e79d2b10db --- /dev/null +++ b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.31.0-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'ConfigureMake' + +name = 'ISA-L' +version = '2.31.0' + +homepage = 'https://github.com/intel/isa-l' +description = "Intelligent Storage Acceleration Library" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'intel' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['e218b7b2e241cfb8e8b68f54a6e5eed80968cc387c4b1af03708b54e9fb236f1'] + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [('NASM', '2.16.03')] + +preconfigopts = "autoreconf -i -f &&" + +runtest = 'check' + +local_bins = ['bin/igzip'] +local_includes = ['include/%(namelower)s.h'] +local_includes += ['include/isa-l/%s.h' % i for i in ['crc64', 'crc', 'erasure_code', 'gf_vect_mul', 'igzip_lib', + 'mem_routines', 'raid', 'test']] +local_libs = ['lib/libisal.%s' % k for k in ['a', 'la', SHLIB_EXT]] + +sanity_check_paths = { + 'files': local_bins + local_includes + local_libs, + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = [ + "igzip --help", + "igzip --version", +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/ISCE2/ISCE2-2.6.3-foss-2023a.eb b/easybuild/easyconfigs/i/ISCE2/ISCE2-2.6.3-foss-2023a.eb new file mode 100644 index 00000000000..ceae2b31949 --- /dev/null +++ b/easybuild/easyconfigs/i/ISCE2/ISCE2-2.6.3-foss-2023a.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'ISCE2' +version = '2.6.3' + +homepage = 'https://github.com/isce-framework/isce2' +description = """ISCE is a framework designed for the purpose of processing Interferometric Synthetic + Aperture Radar (InSAR) data. The framework aspects of it have been designed as a general software + development framework. It may have additional utility in a general sense for building other + types of software packages. In its InSAR aspect ISCE supports data from many space-borne + satellites and one air-borne platform.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/isce-framework/isce2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['13fd55ffcadcdd723b61053241d5e49905157b0b0ac6ed8532e4faccaa6d77f1'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('FFTW', '3.3.10'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Cython', '3.0.8'), + ('GDAL', '3.7.1'), + ('motif', '2.3.8'), + ('OpenCV', '4.8.1', '-contrib'), + ('pybind11', '2.11.1'), +] + +fix_python_shebang_for = ['bin/*.py'] + +modextrapaths = {'PYTHONPATH': 'packages'} + +sanity_check_paths = { + 'files': ['bin/stripmapApp.py'], + 'dirs': ['packages'], +} + +sanity_check_commands = [ + "python -c 'import isce'", + "stripmapApp.py --help 2>&1 | grep 'ISCE VERSION = %(version)s'", +] + +moduleclass = 'phys' 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 new file mode 100644 index 00000000000..776471b14b2 --- /dev/null +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38-GCCcore-13.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'ConfigureMake' + +name = 'ImageMagick' +version = '7.1.1-38' + +homepage = 'https://www.imagemagick.org/' +description = "ImageMagick is a software suite to create, edit, compose, or convert bitmap images" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(name)s/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['ImageMagick-7.1.1-38_fix-linking.patch'] +checksums = [ + {'7.1.1-38.tar.gz': '5e449530ccec8b85ae2bfd1ad773184fb7a4737d40fd9439db8a5d4beee4403e'}, + {'ImageMagick-7.1.1-38_fix-linking.patch': '0fbe8e3b6621e3e0d1efec59949fecb45924bc6e65851b9b6399bb3eff8d55d9'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('bzip2', '1.0.8'), + ('X11', '20240607'), + ('Ghostscript', '10.03.1'), + ('JasPer', '4.2.4'), + ('libjpeg-turbo', '3.0.1'), + ('LibTIFF', '4.6.0'), + ('LittleCMS', '2.16'), + ('Pango', '1.54.0'), + ('pixman', '0.43.4'), + ('FriBidi', '1.0.15'), +] + +preconfigopts = 'PKG_CONFIG=$EBROOTPKGCONF/bin/pkgconf' +configopts = "--with-gslib --with-x" + +sanity_check_paths = { + 'files': ['bin/magick'], + 'dirs': ['etc/%(name)s-%(version_major)s', 'include/%(name)s-%(version_major)s', 'lib', 'share'], +} + +sanity_check_commands = [ + 'magick --help', +] + +modextravars = {'MAGICK_HOME': '%(installdir)s'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch new file mode 100644 index 00000000000..2c9d54a4ac0 --- /dev/null +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.1-38_fix-linking.patch @@ -0,0 +1,27 @@ +The configure script sets this to a path inside the install location which is empty during build. +However this path(s) is/are used by the compiler/linker to find libraries. `pkg-config` used during configure assumes this is the same during build as on invocation of itself and omits any path already contained in the variable. + +This combination causes build failures due to dependent libraries not being found in the link step unless there happens to be some other way the paths get pulled in. E.g. if HarfBuzz is built using (the deprecated) configure&make it has `*.la` files which contain the required link flags. If HarfBuzz is built using the new Meson build system those files are no longer present and the linker paths will be missing. + +As there doesn't seem to be a specific reason for the variable to be set to an empty directory in the Makefile just remove it. + +See https://github.com/ImageMagick/ImageMagick/pull/7613 + +Author: Alexander Grund (TU Dresden) + +--- + Makefile.in | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index 47b78566f0c..3a9761cfd5b 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -3288,7 +3288,6 @@ LIBOBJS = @LIBOBJS@ + LIBOPENJP2_CFLAGS = @LIBOPENJP2_CFLAGS@ + LIBOPENJP2_LIBS = @LIBOPENJP2_LIBS@ + LIBRARY_EXTRA_CPPFLAGS = @LIBRARY_EXTRA_CPPFLAGS@ +-LIBRARY_PATH = @LIBRARY_PATH@ + LIBS = @LIBS@ + LIBSTDCLDFLAGS = @LIBSTDCLDFLAGS@ + LIBTOOL = @LIBTOOL@ diff --git a/easybuild/easyconfigs/i/Imath/Imath-3.1.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/i/Imath/Imath-3.1.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..05efb6d6c62 --- /dev/null +++ b/easybuild/easyconfigs/i/Imath/Imath-3.1.11-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'Imath' +version = '3.1.11' + +homepage = 'https://imath.readthedocs.io/en/latest/' +description = """ +Imath is a C++ and python library of 2D and 3D vector, matrix, and math operations for computer graphics +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/AcademySoftwareFoundation/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9057849585e49b8b85abe7cc1e76e22963b01bfdc3b6d83eac90c499cd760063'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['lib/libImath.%s' % SHLIB_EXT], + 'dirs': ['include/Imath'], +} + +moduleclass = 'lib' 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/IsoQuant/IsoQuant-3.5.0-foss-2023a.eb b/easybuild/easyconfigs/i/IsoQuant/IsoQuant-3.5.0-foss-2023a.eb new file mode 100644 index 00000000000..41248bcbf73 --- /dev/null +++ b/easybuild/easyconfigs/i/IsoQuant/IsoQuant-3.5.0-foss-2023a.eb @@ -0,0 +1,45 @@ +easyblock = 'Tarball' + +name = 'IsoQuant' +version = '3.5.0' + +homepage = 'https://github.com/ablab/IsoQuant' +description = """IsoQuant is a tool for the genome-based analysis of long RNA reads, + such as PacBio or Oxford Nanopores. IsoQuant allows to reconstruct and quantify + transcript models with high precision and decent recall. If the reference annotation is given, + IsoQuant also assigns reads to the annotated isoforms based on their intron and exon structure. + IsoQuant further performs annotated gene, isoform, exon and intron quantification. + If reads are grouped (e.g. according to cell type), counts are reported according to the provided grouping.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/ablab/%(name)s/archive/'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['8cbba80b5eb0ed85fe0b519693157eb97820bc1d79ff44435736bf799af85c1f'] + +dependencies = [ + ('Python', '3.11.3'), + ('gffutils', '0.13'), + ('Biopython', '1.83'), + ('SciPy-bundle', '2023.07'), + ('pybedtools', '0.9.1'), + ('Pysam', '0.22.0'), + ('pyfaidx', '0.8.1.1'), + ('minimap2', '2.26'), + ('SAMtools', '1.18'), + ('PyYAML', '6.0'), +] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['isoquant.py'], + 'dirs': [], +} + +sanity_check_commands = ["mkdir -p %(builddir)s && cd %(builddir)s && isoquant.py --test"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/ilastik-napari/ilastik-napari-0.2.4-foss-2023a.eb b/easybuild/easyconfigs/i/ilastik-napari/ilastik-napari-0.2.4-foss-2023a.eb new file mode 100644 index 00000000000..64e20f93f38 --- /dev/null +++ b/easybuild/easyconfigs/i/ilastik-napari/ilastik-napari-0.2.4-foss-2023a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'ilastik-napari' +version = '0.2.4' + +homepage = 'https://github.com/ilastik/ilastik-napari/' +description = "Napari plugin for interactive pixel classification." + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('napari', '0.4.18'), + ('QtPy', '2.4.1'), + ('scikit-learn', '1.3.1'), + ('numba', '0.58.1'), + ('fastfilters', '0.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('sparse', '0.15.4', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['76ec76fee2aee82a84eb97155dd530a9644e3b1fdea2406bc4b454698b36d938'], + }), + (name, version, { + 'source_tmpl': 'ilastik_napari-%(version)s.tar.gz', + 'modulename': 'ilastik', + 'checksums': ['8e971a70389f9257eaca7561637301f996f316fdff2cb223c5828d162970bec4'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb new file mode 100644 index 00000000000..2b1f0c837e5 --- /dev/null +++ b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'imgaug' +version = '0.4.1' + +homepage = 'https://imgaug.readthedocs.io/en/latest/' +description = """ This python library helps you with augmenting images for your machine learning projects. + It converts a set of input images into a new, much larger set of slightly altered images. """ + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Pillow', '10.0.0'), + ('matplotlib', '3.7.2'), + ('scikit-image', '0.22.0'), + ('OpenCV', '4.8.1', '-contrib'), + ('Shapely', '2.0.1'), + ('imageio', '2.33.1'), +] + +source_urls = ['https://github.com/nsetzer/imgaug/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['imgaug-0.4.1_openvc_requirement.patch'] +checksums = [ + {'0.4.1.tar.gz': 'dd9655f8d871da35c37cf674ba35c76175a77aeac517e8dafe6673c8f853115f'}, + {'imgaug-0.4.1_openvc_requirement.patch': '0e0993322184c56115ea04262f8eacef4a86a9aa7b26c8cd67258ccaa441d8a7'}, +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb b/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb new file mode 100644 index 00000000000..e194f389253 --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb @@ -0,0 +1,18 @@ +name = 'imkl' +version = '2023.2.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html' +description = "Intel oneAPI Math Kernel Library" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/adb8a02c-4ee7-4882-97d6-a524150da358/'] +sources = ['l_onemkl_p_%(version)s.49497_offline.sh'] +checksums = ['4a0d93da85a94d92e0ad35dc0fc3b3ab7f040bd55ad374c4d5ec81a57a2b872b'] + +interfaces = False + +installopts = "--download-cache=%(builddir)s/cache --download-dir=%(builddir)s/download --log-dir=%(builddir)s/log" + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/inferCNV/inferCNV-1.21.0-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/i/inferCNV/inferCNV-1.21.0-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..7404bfe1502 --- /dev/null +++ b/easybuild/easyconfigs/i/inferCNV/inferCNV-1.21.0-foss-2023a-R-4.3.2.eb @@ -0,0 +1,59 @@ +easyblock = 'Bundle' + +name = 'inferCNV' +version = '1.21.0' +versionsuffix = '-R-%(rver)s' +local_biocver = '3.18' +local_commit = '124eec089e5d9ab5a2a2352461d03db6cdcf0ea0' +github_account = 'broadinstitute' + +homepage = 'https://github.com/broadinstitute/inferCNV/wiki' +description = """InferCNV is used to explore tumor single cell RNA-Seq data to identify evidence + for somatic large-scale chromosomal copy number alterations, such as gains or + deletions of entire chromosomes or large segments of chromosomes.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('R', '4.3.2'), + ('R-bundle-Bioconductor', local_biocver, '-R-%(rver)s'), + ('rjags', '4-15', '-R-%(rver)s'), +] + +exts_default_options = { + 'source_urls': [ + 'https://bioconductor.org/packages/release/bioc/src/contrib/', # current version of packages + 'https://bioconductor.org/packages/%s/bioc/src/contrib/' % local_biocver, + 'https://bioconductor.org/packages/%s/bioc/src/contrib/Archive/%%(name)s' % local_biocver, + 'https://bioconductor.org/packages/%s/data/annotation/src/contrib/' % local_biocver, + 'https://bioconductor.org/packages/%s/data/experiment/src/contrib/' % local_biocver, + '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_defaultclass = 'RPackage' + +exts_list = [ + ('phyclust', '0.1-34', { + 'checksums': ['d2047030e9f24c5dc8bbb378867fbcb8e71d1f1c2ab77e9285f79f670568f5f3'], + }), + (name, version, { + 'modulename': '%(namelower)s', + 'source_urls': ['https://github.com/%(github_account)s/%(name)s/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['c8886c0a7c292e28a5fb0acaab3ae00eb2b3906aa0a1d146d5931819a37daefb'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['infercnv'], +} + +moduleclass = 'bio' 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/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/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..14ce45ca6ad --- /dev/null +++ b/easybuild/easyconfigs/j/JasPer/JasPer-4.2.4-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'JasPer' +version = '4.2.4' + +homepage = 'https://www.ece.uvic.ca/~frodo/jasper/' + +description = """ + The JasPer Project is an open-source initiative to provide a free + software-based reference implementation of the codec specified in + the JPEG-2000 Part-1 standard. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +github_account = 'jasper-software' +source_urls = [GITHUB_SOURCE] +sources = ['version-%(version)s.tar.gz'] +checksums = ['23a3d58cdeacf3abdf9fa1d81dcefee58da6ab330940790c0f27019703bfd2cd'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = '-DJAS_ENABLE_DOC=OFF ' + +sanity_check_paths = { + 'files': ['bin/jasper', ('lib/libjasper.%s' % SHLIB_EXT, 'lib64/libjasper.%s' % SHLIB_EXT)], + 'dirs': ['include'], +} + +sanity_check_commands = ['jasper --version'] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/j/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..82821a0cc38 --- /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'] + +parallel = 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/JsonCpp/JsonCpp-1.9.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/JsonCpp/JsonCpp-1.9.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b1d3f620566 --- /dev/null +++ b/easybuild/easyconfigs/j/JsonCpp/JsonCpp-1.9.5-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = "CMakeNinja" + +name = 'JsonCpp' +version = '1.9.5' + +homepage = 'https://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html' +description = """ JsonCpp is a C++ library that allows manipulating JSON values, + including serialization and deserialization to and from strings. It can also preserve existing comment in + unserialization/serialization steps, making it a convenient format to store user input files. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/open-source-parsers/jsoncpp/archive'] +sources = ['%(version)s.tar.gz'] +checksums = ['f409856e5920c18d0c2fb85276e24ee607d2a09b5e7d5f0a371368903c275da2'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['include/json/json.h', 'lib/libjsoncpp.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' 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/Julia/Julia-1.10.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.3-linux-x86_64.eb new file mode 100644 index 00000000000..599edfd33ea --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.3-linux-x86_64.eb @@ -0,0 +1,30 @@ +easyblock = 'Tarball' + +name = 'Julia' +version = '1.10.3' +versionsuffix = '-linux-x86_64' + +homepage = 'https://julialang.org' +description = "Julia is a high-level, high-performance dynamic programming language for numerical computing" + +toolchain = SYSTEM + +source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.3-linux-x86_64.tar.gz': '81b910c922fff0e27ae1f256f2cc803db81f3960215281eddd2d484721928c70'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] + +sanity_check_paths = { + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] +} + +sanity_check_commands = ['julia --help'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.4-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.4-linux-x86_64.eb new file mode 100644 index 00000000000..767a23c33a4 --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.4-linux-x86_64.eb @@ -0,0 +1,37 @@ +# 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 +# Updated by: Dugan Witherick, University of Warwick +# Robert Mijakovic +# Wahid Mainassara + +easyblock = 'Tarball' + +name = 'Julia' +version = '1.10.4' +versionsuffix = '-linux-x86_64' + +homepage = 'https://julialang.org' +description = "Julia is a high-level, high-performance dynamic programming language for numerical computing" + +toolchain = SYSTEM + +source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.4-linux-x86_64.tar.gz': '079f61757c3b5b40d2ade052b3cc4816f50f7ef6df668825772562b3746adff1'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] + +sanity_check_paths = { + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] +} +sanity_check_commands = ['julia --help'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.5-linux-x86_64.eb new file mode 100644 index 00000000000..4c623699101 --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.5-linux-x86_64.eb @@ -0,0 +1,38 @@ +# 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 +# Updated by: Dugan Witherick, University of Warwick +# Robert Mijakovic +# Wahid Mainassara +# Paul Melis + +easyblock = 'Tarball' + +name = 'Julia' +version = '1.10.5' +versionsuffix = '-linux-x86_64' + +homepage = 'https://julialang.org' +description = "Julia is a high-level, high-performance dynamic programming language for numerical computing" + +toolchain = SYSTEM + +source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.5-linux-x86_64.tar.gz': '33497b93cf9dd65e8431024fd1db19cbfbe30bd796775a59d53e2df9a8de6dc0'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] + +sanity_check_paths = { + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] +} +sanity_check_commands = ['julia --help'] + +moduleclass = 'lang' 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..abe825dfa69 --- /dev/null +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-4.2.5-GCCcore-13.3.0.eb @@ -0,0 +1,78 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/jax/jax-0.4.25-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a-CUDA-12.1.1.eb index c193b35c83b..75355c6c842 100644 --- a/easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a-CUDA-12.1.1.eb @@ -1,6 +1,7 @@ # This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild # Author: Denis Kristak # Updated by: Alex Domingo (Vrije Universiteit Brussel) +# Updated by: Pavel Tománek (INUITS) # Updated by: Thomas Hoffmann (EMBL Heidelberg) easyblock = 'PythonBundle' @@ -8,7 +9,7 @@ name = 'jax' version = '0.4.25' versionsuffix = '-CUDA-%(cudaver)s' -homepage = 'https://pypi.python.org/pypi/jax' +homepage = 'https://jax.readthedocs.io/' description = """Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more""" @@ -18,8 +19,7 @@ cuda_compute_capabilities = ["5.0", "6.0", "6.1", "7.0", "7.5", "8.0", "8.6", "9 builddependencies = [ ('Bazel', '6.3.1'), ('pytest-xdist', '3.3.1'), - # git 2.x required to fetch repository 'io_bazel_rules_docker' - ('git', '2.41.0', '-nodocs'), + ('git', '2.41.0', '-nodocs'), # bazel uses git to fetch repositories ('matplotlib', '3.7.2'), # required for tests/lobpcg_test.py ('poetry', '1.5.1'), ('pybind11', '2.11.1'), @@ -29,23 +29,65 @@ dependencies = [ ('CUDA', '12.1.1', '', SYSTEM), ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), ('NCCL', '2.18.3', versionsuffix), - ('zlib', '1.2.13'), ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), + ('absl-py', '2.1.0'), ('flatbuffers-python', '23.5.26'), ('ml_dtypes', '0.3.2'), + ('zlib', '1.2.13'), ] # downloading xla and other tarballs to avoid that Bazel downloads it during the build -# note: this *must* be the exact same commit as used in third_party/{xla,"other"}/workspace.bzl +local_extract_cmd = 'mkdir -p %(builddir)s/archives && cp %s %(builddir)s/archives' +# note: following commits *must* be the exact same onces used upstream +# XLA_COMMIT from jax-jaxlib: third_party/xla/workspace.bzl local_xla_commit = '4ccfe33c71665ddcbca5b127fefe8baa3ed632d4' +# TFRT_COMMIT from xla: third_party/tsl/third_party/tf_runtime/workspace.bzl local_tfrt_commit = '0aeefb1660d7e37964b2bb71b1f518096bda9a25' -local_extract_cmd = 'mkdir -p %(builddir)s/archives && cp %s %(builddir)s/archives' -local_repo_opt = '--bazel_options="--distdir=%(builddir)s/archives" ' -local_repo_opt += '--bazel_options="--action_env=TF_SYSTEM_LIBS=pybind11" ' -local_repo_opt += '--bazel_options="--action_env=CPATH=$EBROOTPYBIND11/include" ' +# Use sources downloaded by EasyBuild +_jaxlib_buildopts = '--bazel_options="--distdir=%(builddir)s/archives" ' +# Use dependencies from EasyBuild +_jaxlib_buildopts += '--bazel_options="--action_env=TF_SYSTEM_LIBS=pybind11" ' +_jaxlib_buildopts += '--bazel_options="--action_env=CPATH=$EBROOTPYBIND11/include" ' +# Avoid warning (treated as error) in upb/table.c +_jaxlib_buildopts += '--bazel_options="--copt=-Wno-maybe-uninitialized" ' +components = [ + ('jaxlib', version, { + 'sources': [ + { + 'source_urls': ['https://github.com/google/jax/archive/'], + 'filename': '%(name)s-v%(version)s.tar.gz', + }, + { + 'source_urls': ['https://github.com/openxla/xla/archive'], + 'download_filename': '%s.tar.gz' % local_xla_commit, + 'filename': 'xla-%s.tar.gz' % local_xla_commit[:8], + 'extract_cmd': local_extract_cmd, + }, + { + 'source_urls': ['https://github.com/tensorflow/runtime/archive'], + 'download_filename': '%s.tar.gz' % local_tfrt_commit, + 'filename': 'tf_runtime-%s.tar.gz' % local_tfrt_commit[:8], + 'extract_cmd': local_extract_cmd, + }, + ], + 'patches': ['jax-0.4.25_fix-pybind11-systemlib.patch'], + 'checksums': [ + {'jaxlib-v0.4.25.tar.gz': + 'fc1197c401924942eb14185a61688d0c476e3e81ff71f9dc95e620b57c06eec8'}, + {'xla-4ccfe33c.tar.gz': + '8a59b9af7d0850059d7043f7043c780066d61538f3af536e8a10d3d717f35089'}, + {'tf_runtime-0aeefb16.tar.gz': + 'a3df827d7896774cb1d80bf4e1c79ab05c268f29bd4d3db1fb5a4b9c2079d8e3'}, + {'jax-0.4.25_fix-pybind11-systemlib.patch': + 'daad5b726d1a138431b05eb60ecf4c89c7b5148eb939721800bdf43d804ca033'}, + ], + 'start_dir': 'jax-jaxlib-v%(version)s', + 'buildopts': _jaxlib_buildopts + }), +] # Some tests require an isolated run: local_isolated_tests = [ @@ -74,71 +116,20 @@ local_test += ' && '.join(['pytest -vv %s' % x for x in local_isolated_tests]) use_pip = True -default_easyblock = 'PythonPackage' -default_component_specs = { - 'sources': [SOURCE_TAR_GZ], - 'source_urls': [PYPI_SOURCE], - 'start_dir': '%(name)s-%(version)s', - 'use_pip': True, - 'sanity_pip_check': True, - 'download_dep_fail': True, -} - -components = [ - ('absl-py', '2.1.0', { - 'options': {'modulename': 'absl'}, - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), - ('jaxlib', version, { - 'sources': [ - '%(name)s-v%(version)s.tar.gz', - { - 'download_filename': '%s.tar.gz' % local_xla_commit, - 'filename': 'xla-%s.tar.gz' % local_xla_commit, - 'extract_cmd': local_extract_cmd, - }, - { - 'download_filename': '%s.tar.gz' % local_tfrt_commit, - 'filename': 'tf_runtime-%s.tar.gz' % local_tfrt_commit, - 'extract_cmd': local_extract_cmd, - }, - ], - 'source_urls': [ - 'https://github.com/google/jax/archive/', - 'https://github.com/tensorflow/runtime/archive', - 'https://github.com/openxla/xla/archive' - ], - 'patches': ['jax-0.4.25_fix-pybind11-systemlib.patch'], - 'checksums': [ - {'jaxlib-v0.4.25.tar.gz': - 'fc1197c401924942eb14185a61688d0c476e3e81ff71f9dc95e620b57c06eec8'}, - {'xla-4ccfe33c71665ddcbca5b127fefe8baa3ed632d4.tar.gz': - '8a59b9af7d0850059d7043f7043c780066d61538f3af536e8a10d3d717f35089'}, - {'tf_runtime-0aeefb1660d7e37964b2bb71b1f518096bda9a25.tar.gz': - 'a3df827d7896774cb1d80bf4e1c79ab05c268f29bd4d3db1fb5a4b9c2079d8e3'}, - {'jax-0.4.25_fix-pybind11-systemlib.patch': - 'daad5b726d1a138431b05eb60ecf4c89c7b5148eb939721800bdf43d804ca033'}, - ], - 'start_dir': 'jax-jaxlib-v%(version)s', - # Avoid warning (treated as error) in upb/table.c - 'buildopts': local_repo_opt + ' --bazel_options="--copt=-Wno-maybe-uninitialized"' - }), -] - exts_list = [ (name, version, { - 'patches': ['jax-0.4.25_fix_env_test_no_log_spam.patch'], - 'runtest': local_test, 'source_tmpl': '%(name)s-v%(version)s.tar.gz', 'source_urls': ['https://github.com/google/jax/archive/'], + 'patches': ['jax-0.4.25_fix_env_test_no_log_spam.patch'], 'checksums': [ {'jax-v0.4.25.tar.gz': '8b30af49688c0c13b82c6f5ce992727c00b5fc6d04a4c6962012f4246fa664eb'}, {'jax-0.4.25_fix_env_test_no_log_spam.patch': 'a18b5f147569d9ad41025124333a0f04fd0d0e0f9e4309658d7f6b9b838e2e2a'}, ], + 'runtest': local_test, }), ] sanity_pip_check = True -moduleclass = 'tools' +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/j/jax/jax-0.4.25-foss-2023a.eb b/easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a.eb similarity index 53% rename from easybuild/easyconfigs/j/jax/jax-0.4.25-foss-2023a.eb rename to easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a.eb index 64a723ffe37..a4a86382ad6 100644 --- a/easybuild/easyconfigs/j/jax/jax-0.4.25-foss-2023a.eb +++ b/easybuild/easyconfigs/j/jax/jax-0.4.25-gfbf-2023a.eb @@ -1,8 +1,8 @@ # This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild # Author: Denis Kristak -# Updated by: Alex Domingo (Vrije Universiteit Brussel), Pavel Tománek (INUITS) -# Update v0.4.25 based on: https://github.com/easybuilders/easybuild-easyconfigs/pull/20119 - +# Updated by: Alex Domingo (Vrije Universiteit Brussel) +# Updated by: Pavel Tománek (INUITS) +# Updated by: Thomas Hoffmann (EMBL Heidelberg) easyblock = 'PythonBundle' name = 'jax' @@ -12,14 +12,13 @@ homepage = 'https://jax.readthedocs.io/' description = """Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more""" -toolchain = {'name': 'foss', 'version': '2023a'} +toolchain = {'name': 'gfbf', 'version': '2023a'} builddependencies = [ ('Bazel', '6.3.1'), ('pytest-xdist', '3.3.1'), - # git 2.x required to fetch repository 'io_bazel_rules_docker' - ('git', '2.41.0', '-nodocs'), - ('matplotlib', '3.7.2'), + ('git', '2.41.0', '-nodocs'), # bazel uses git to fetch repositories + ('matplotlib', '3.7.2'), # required for tests/lobpcg_test.py ('poetry', '1.5.1'), ('pybind11', '2.11.1'), ] @@ -27,86 +26,84 @@ builddependencies = [ dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), - ('zlib', '1.2.13'), + ('absl-py', '2.1.0'), ('flatbuffers-python', '23.5.26'), ('ml_dtypes', '0.3.2'), + ('zlib', '1.2.13'), ] -use_pip = True - +# downloading xla and other tarballs to avoid that Bazel downloads it during the build +local_extract_cmd = 'mkdir -p %(builddir)s/archives && cp %s %(builddir)s/archives' +# note: following commits *must* be the exact same onces used upstream +# XLA_COMMIT from jax-jaxlib: third_party/xla/workspace.bzl local_xla_commit = '4ccfe33c71665ddcbca5b127fefe8baa3ed632d4' +# TFRT_COMMIT from xla: third_party/tsl/third_party/tf_runtime/workspace.bzl local_tfrt_commit = '0aeefb1660d7e37964b2bb71b1f518096bda9a25' -local_extract_cmd = 'cp %s %(builddir)s/archives' - -local_repo_opt = '--bazel_options="--distdir=%(builddir)s/archives" ' -local_repo_opt += '--bazel_options="--action_env=TF_SYSTEM_LIBS=pybind11" ' -local_repo_opt += '--bazel_options="--action_env=CPATH=$EBROOTPYBIND11/include" ' - -default_easyblock = 'PythonPackage' -default_component_specs = { - 'sources': [SOURCE_TAR_GZ], - 'source_urls': [PYPI_SOURCE], - 'start_dir': '%(name)s-%(version)s', - 'use_pip': True, - 'sanity_pip_check': True, - 'download_dep_fail': True, -} +# Use sources downloaded by EasyBuild +_jaxlib_buildopts = '--bazel_options="--distdir=%(builddir)s/archives" ' +# Use dependencies from EasyBuild +_jaxlib_buildopts += '--bazel_options="--action_env=TF_SYSTEM_LIBS=pybind11" ' +_jaxlib_buildopts += '--bazel_options="--action_env=CPATH=$EBROOTPYBIND11/include" ' +# Avoid warning (treated as error) in upb/table.c +_jaxlib_buildopts += '--bazel_options="--copt=-Wno-maybe-uninitialized" ' components = [ - ('absl-py', '2.1.0', { - 'options': {'modulename': 'absl'}, - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), ('jaxlib', version, { 'sources': [ - '%(name)s-v%(version)s.tar.gz', { + 'source_urls': ['https://github.com/google/jax/archive/'], + 'filename': '%(name)s-v%(version)s.tar.gz', + }, + { + 'source_urls': ['https://github.com/openxla/xla/archive'], 'download_filename': '%s.tar.gz' % local_xla_commit, - 'filename': 'xla-%s.tar.gz' % local_xla_commit, + 'filename': 'xla-%s.tar.gz' % local_xla_commit[:8], 'extract_cmd': local_extract_cmd, }, { + 'source_urls': ['https://github.com/tensorflow/runtime/archive'], 'download_filename': '%s.tar.gz' % local_tfrt_commit, - 'filename': 'tf_runtime-%s.tar.gz' % local_tfrt_commit, + 'filename': 'tf_runtime-%s.tar.gz' % local_tfrt_commit[:8], 'extract_cmd': local_extract_cmd, }, ], - 'source_urls': [ - 'https://github.com/google/jax/archive/', - 'https://github.com/tensorflow/runtime/archive', - 'https://github.com/openxla/xla/archive' - ], 'patches': ['jax-0.4.25_fix-pybind11-systemlib.patch'], 'checksums': [ {'jaxlib-v0.4.25.tar.gz': 'fc1197c401924942eb14185a61688d0c476e3e81ff71f9dc95e620b57c06eec8'}, - {'xla-4ccfe33c71665ddcbca5b127fefe8baa3ed632d4.tar.gz': + {'xla-4ccfe33c.tar.gz': '8a59b9af7d0850059d7043f7043c780066d61538f3af536e8a10d3d717f35089'}, - {'tf_runtime-0aeefb1660d7e37964b2bb71b1f518096bda9a25.tar.gz': + {'tf_runtime-0aeefb16.tar.gz': 'a3df827d7896774cb1d80bf4e1c79ab05c268f29bd4d3db1fb5a4b9c2079d8e3'}, {'jax-0.4.25_fix-pybind11-systemlib.patch': 'daad5b726d1a138431b05eb60ecf4c89c7b5148eb939721800bdf43d804ca033'}, ], 'start_dir': 'jax-jaxlib-v%(version)s', - # Avoid warning (treated as error) in upb/table.c - 'buildopts': local_repo_opt + ' --bazel_options="--copt=-Wno-maybe-uninitialized"' + 'buildopts': _jaxlib_buildopts }), ] +use_pip = True + exts_list = [ (name, version, { + 'sources': [ + { + 'source_urls': ['https://github.com/google/jax/archive/'], + 'filename': '%(name)s-v%(version)s.tar.gz', + }, + ], 'patches': ['jax-0.4.25_fix_env_test_no_log_spam.patch'], - 'source_tmpl': '%(name)s-v%(version)s.tar.gz', - 'source_urls': ['https://github.com/google/jax/archive/'], 'checksums': [ {'jax-v0.4.25.tar.gz': '8b30af49688c0c13b82c6f5ce992727c00b5fc6d04a4c6962012f4246fa664eb'}, {'jax-0.4.25_fix_env_test_no_log_spam.patch': 'a18b5f147569d9ad41025124333a0f04fd0d0e0f9e4309658d7f6b9b838e2e2a'}, ], + 'runtest': "pytest -n %(parallel)s tests", }), ] sanity_pip_check = True -moduleclass = 'tools' +moduleclass = 'ai' 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 5b2a8950603..daf043bb1a5 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'} @@ -29,9 +31,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..fcdb1b6305b --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.0-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +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'), +] + +sanity_pip_check = True +use_pip = True + +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 eca3a2e905d..a0891f77c33 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'} @@ -29,9 +31,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..b477ad70774 --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.3.0.eb @@ -0,0 +1,32 @@ +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'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('parso', '0.8.3', { + 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'], + }), + (name, version, { + 'checksums': ['cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jemalloc/jemalloc-5.3.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/jemalloc/jemalloc-5.3.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..023c3001dd3 --- /dev/null +++ b/easybuild/easyconfigs/j/jemalloc/jemalloc-5.3.0-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'jemalloc' +version = '5.3.0' + +homepage = 'http://jemalloc.net' +description = """jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and + scalable concurrency support.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/jemalloc/jemalloc/archive'] +sources = ['%(version)s.tar.gz'] +checksums = ['ef6f74fd45e95ee4ef7f9e19ebe5b075ca6b7fbe0140612b2a161abafb7ee179'] + +builddependencies = [ + ('Autotools', '20231222'), + ('binutils', '2.42'), +] + +# From version 5.2.1 (or maybe earlier) it does no longer build, +# nor try to install, documentation if xsltproc is missing. +# So we can use normal installation. +preconfigopts = "./autogen.sh && " +configopts = "--with-version=%(version)s-0-g0000 " # build with version info + +sanity_check_paths = { + 'files': ['bin/jeprof', 'lib/libjemalloc.a', 'lib/libjemalloc_pic.a', 'lib/libjemalloc.%s' % SHLIB_EXT, + 'include/jemalloc/jemalloc.h'], + 'dirs': [], +} + +# jemalloc can be used via $LD_PRELOAD, but we don't enable this by +# default, you need to opt-in to it +# modextrapaths = {'LD_PRELOAD': ['lib/libjemalloc.%s' % SHLIB_EXT]} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb b/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb new file mode 100644 index 00000000000..db6e77ea520 --- /dev/null +++ b/easybuild/easyconfigs/j/joypy/joypy-0.2.6-foss-2023a.eb @@ -0,0 +1,28 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'joypy' +version = '0.2.6' + +homepage = 'https://github.com/sbebo/joypy' +description = "Joyplots in Python with matplotlib & pandas" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_WHL] +checksums = ['fffe882e8281e56e08b374a3148436cb448562ba39e4d566204c7e8ee2caddab'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/j/json-c/json-c-0.17-GCCcore-13.3.0.eb b/easybuild/easyconfigs/j/json-c/json-c-0.17-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..87642888aa1 --- /dev/null +++ b/easybuild/easyconfigs/j/json-c/json-c-0.17-GCCcore-13.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'json-c' +version = '0.17' +local_suff = '-20230812' + +homepage = 'https://github.com/json-c/json-c' +description = """JSON-C implements a reference counting object model that allows you to easily construct JSON objects + in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON +objects.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/json-c/json-c/archive/'] +sources = ['json-c-%%(version)s%s.tar.gz' % local_suff] +checksums = ['024d302a3aadcbf9f78735320a6d5aedf8b77876c8ac8bbb95081ca55054c7eb'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +# disable using Valgrind during the tests to avoid failures caused by using an OS Valgrind +pretestopts = 'USE_VALGRIND=0 ' +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libjson-c.a', 'lib/libjson-c.%s' % SHLIB_EXT, 'lib/pkgconfig/json-c.pc'], + 'dirs': ['include/json-c'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb new file mode 100644 index 00000000000..03dceec3b87 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-12.3.0.eb @@ -0,0 +1,32 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'json-fortran' +version = '9.0.2' + +homepage = 'https://github.com/jacobwilliams/json-fortran' +description = "JSON-Fortran: A Modern Fortran JSON API" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['a599a77e406e59cdb7672d780e69156b6ce57cb8ce515d21d1744c4065a85976'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-13.2.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-13.2.0.eb new file mode 100644 index 00000000000..3b32a332d54 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-9.0.2-GCC-13.2.0.eb @@ -0,0 +1,32 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'json-fortran' +version = '9.0.2' + +homepage = 'https://github.com/jacobwilliams/json-fortran' +description = "JSON-Fortran: A Modern Fortran JSON API" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['a599a77e406e59cdb7672d780e69156b6ce57cb8ce515d21d1744c4065a85976'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/junos-eznc/junos-eznc-2.7.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/j/junos-eznc/junos-eznc-2.7.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ceaec648de3 --- /dev/null +++ b/easybuild/easyconfigs/j/junos-eznc/junos-eznc-2.7.1-GCCcore-12.3.0.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = 'junos-eznc' +version = '2.7.1' + +homepage = 'https://github.com/Juniper/py-junos-eznc' +description = "Python library for Junos automation." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.3'), + ('lxml', '4.9.2'), + ('PyYAML', '6.0'), + ('Python-bundle-PyPI', '2023.06'), + ('bcrypt', '4.0.1'), +] + +exts_list = [ + ('yamlordereddictloader', '0.4.2', { + 'checksums': ['36af2f6210fcff5da4fc4c12e1d815f973dceb41044e795e1f06115d634bca13'], + }), + ('transitions', '0.9.2', { + 'checksums': ['2f8490dbdbd419366cef1516032ab06d07ccb5839ef54905e842a472692d4204'], + }), + ('scp', '0.15.0', { + 'checksums': ['f1b22e9932123ccf17eebf19e0953c6e9148f589f93d91b872941a696305c83f'], + }), + ('pyserial', '3.5', { + 'modulename': 'serial', + 'checksums': ['3c77e014170dfffbd816e6ffc205e9842efb10be9f58ec16d3e8675b4925cddb'], + }), + ('ncclient', '0.6.15', { + 'checksums': ['6757cb41bc9160dfe47f22f5de8cf2f1adf22f27463fb50453cc415ab96773d8'], + }), + ('paramiko', '3.4.0', { + # Juniper fork of paramiko - compatible with junos-eznc + 'source_urls': ['https://github.com/Juniper/paramiko/archive/'], + 'sources': [{'download_filename': 'v%(version)s-JNPR.tar.gz', 'filename': '%(name)s-%(version)s-JNPR.tar.gz'}], + 'checksums': ['6b3b62e18a2b693169eaa50a7cdd2ab5637fc423205ce85e109cb37722f9eeda'], + }), + (name, version, { + 'modulename': 'jnpr.junos', + # delete 'os.system("pip install git+https://github.com/Juniper/paramiko.git@v3.4.0-JNPR")' from setup.py + 'preinstallopts': "sed -i '/pip install/d' setup.py && ", + 'checksums': ['371f0298bf03e0cb4c017c43f6f4122263584eda0d690d0112e93f13daae41ac'], + }), +] + +use_pip = True +sanity_pip_check = True + +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..e7bc1dceeb0 --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-server/jupyter-server-2.14.2-GCCcore-13.3.0.eb @@ -0,0 +1,185 @@ +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 +] + +sanity_pip_check = True +use_pip = True + +# 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..2f0f8aabd7f --- /dev/null +++ b/easybuild/easyconfigs/j/jupyterlmod/jupyterlmod-5.2.1-GCCcore-13.2.0.eb @@ -0,0 +1,43 @@ +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'), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'sources': ['%(name)s-%(version)s-py3-none-any.whl'], + 'checksums': ['6f9c94d80b813792a6b63aeff5f2672f7d485ce43a7fd5bb7f6fce1c0907cad5'], + }), +] + +sanity_pip_check = True + +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/KMCLib/KMCLib-2.0-a2-foss-2023a-Python-2.7.18.eb b/easybuild/easyconfigs/k/KMCLib/KMCLib-2.0-a2-foss-2023a-Python-2.7.18.eb new file mode 100644 index 00000000000..12cf687bb00 --- /dev/null +++ b/easybuild/easyconfigs/k/KMCLib/KMCLib-2.0-a2-foss-2023a-Python-2.7.18.eb @@ -0,0 +1,51 @@ +easyblock = 'CMakeMake' + +name = 'KMCLib' +version = '2.0-a2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/leetmaa/KMCLib' +description = """KMCLib - a general framework for lattice kinetic Monte Carlo (KMC) simulations""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/leetmaa/KMCLib/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['796620a67ad010df4b11734f703151c17441f82cef026f3d56386a34056d0213'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), + ('SWIG', '4.1.1'), +] + +dependencies = [ + ('Python', '2.7.18'), + ('numpy', '1.16.6', versionsuffix), +] + +start_dir = 'c++' + +preconfigopts = 'cd ../%(name)s-%(version)s/c++/externals && ' +preconfigopts += 'make CC="$CC" CXX="$CXX" CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" && cd - && ' + +prebuildopts = 'export CPATH=$EBROOTPYTHON/include/python%(pyshortver)s:$CPATH && ' + +buildopts = ' && cp wrap/Backend.py wrap/_Backend.so wrap/Custom.py wrap/_Custom.so' +buildopts += ' "%(builddir)s/%(name)s-%(version)s/python/src/KMCLib/Backend/"' + +test_cmd = 'export PYTHONPATH="%(builddir)s/%(name)s-%(version)s/python/src:$PYTHONPATH" && ' +test_cmd += 'python "%(builddir)s/%(name)s-%(version)s/python/unittest/utest.py"' + +install_cmd = 'cp -r "%(builddir)s/%(name)s-%(version)s/python/src/KMCLib" "%(installdir)s/"' + +modextrapaths = {'PYTHONPATH': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['KMCLib/Backend'], +} + +sanity_check_commands = ["python -c 'from KMCLib import *'"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..231466bb169 --- /dev/null +++ b/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +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': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [('Python', '3.11.3')] + +if ARCH == 'x86_64': + local_source_tmpl = '%(namelower)s-%(version)s-py2.py3-none-manylinux1_%(arch)s.whl' +elif ARCH == 'aarch64': + local_source_tmpl = '%(namelower)s-%(version)s-py2.py3-none-manylinux2014_%(arch)s.whl' + +exts_list = [ + (name, version, { + 'source_tmpl': local_source_tmpl, + 'checksums': ['aa21cf1bf1c78f8fa50a9f7d45e1003c387bd3d6fe0a767cfbbf344b95bdc3a8'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'vis' 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..7413eeebb71 --- /dev/null +++ b/easybuild/easyconfigs/k/Kaleido/Kaleido-0.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +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'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'vis' 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 new file mode 100644 index 00000000000..ae831c08a64 --- /dev/null +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023a.eb @@ -0,0 +1,46 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'CMakeMake' + +name = 'kallisto' +version = '0.51.1' + +homepage = 'https://pachterlab.github.io/kallisto/' +description = """kallisto is a program for quantifying abundances of transcripts from RNA-Seq data, or more generally + of target sequences using high-throughput sequencing reads.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'pic': True, 'usempi': True} + +github_account = 'pachterlab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['a8bcc23bca6ac758f15e30bb77e9e169e628beff2da3be2e34a53e1d42253516'] + +builddependencies = [ + ('Autotools', '20220317'), + ('CMake', '3.26.3'), + ('zlib', '1.2.13'), +] + +dependencies = [ + ('HDF5', '1.14.0'), + ('HTSlib', '1.18'), +] + +parallel = 1 + +configopts = '-DUSE_HDF5=ON' + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = [ + "kallisto version", + "cd %(builddir)s/%(name)s-%(version)s/test && kallisto index -i ts.idx transcripts.fasta.gz", + "cd %(builddir)s/%(name)s-%(version)s/test && kallisto quant -i ts.idx -o out -b 100 reads_{1,2}.fastq.gz", +] + +moduleclass = 'bio' 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 new file mode 100644 index 00000000000..68cf98992dd --- /dev/null +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.51.1-gompi-2023b.eb @@ -0,0 +1,46 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'CMakeMake' + +name = 'kallisto' +version = '0.51.1' + +homepage = 'https://pachterlab.github.io/kallisto/' +description = """kallisto is a program for quantifying abundances of transcripts from RNA-Seq data, or more generally + of target sequences using high-throughput sequencing reads.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +github_account = 'pachterlab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['a8bcc23bca6ac758f15e30bb77e9e169e628beff2da3be2e34a53e1d42253516'] + +builddependencies = [ + ('Autotools', '20220317'), + ('CMake', '3.27.6'), + ('zlib', '1.2.13'), +] + +dependencies = [ + ('HDF5', '1.14.3'), + ('HTSlib', '1.19.1'), +] + +parallel = 1 + +configopts = '-DUSE_HDF5=ON' + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = [ + "kallisto version", + "cd %(builddir)s/%(name)s-%(version)s/test && kallisto index -i ts.idx transcripts.fasta.gz", + "cd %(builddir)s/%(name)s-%(version)s/test && kallisto quant -i ts.idx -o out -b 100 reads_{1,2}.fastq.gz", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-13.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..5b1bf9a4cd6 --- /dev/null +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-13.2.0.eb @@ -0,0 +1,43 @@ +easyblock = 'CMakeMake' + +name = 'kim-api' +version = '2.3.0' + +homepage = 'https://openkim.org/' +description = """Open Knowledgebase of Interatomic Models. + +KIM is an API and OpenKIM is a collection of interatomic models (potentials) for +atomistic simulations. This is a library that can be used by simulation programs +to get access to the models in the OpenKIM database. + +This EasyBuild only installs the API, the models can be installed with the +package openkim-models, or the user can install them manually by running + kim-api-collections-management install user MODELNAME +or + kim-api-collections-management install user OpenKIM +to install them all. + """ + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://s3.openkim.org/kim-api/'] +sources = ['%(name)s-%(version)s.txz'] +checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] + +dependencies = [ + ('CMake', '3.27.6'), # Also needed to install models, thus not just a builddependency. +] + +parallel = 1 +separate_build_dir = True + +modextravars = { + 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' +} + +sanity_check_paths = { + 'files': ['bin/kim-api-collections-management', 'lib64/libkim-api.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/k/kineto/kineto-0.4.0-GCC-12.3.0.eb b/easybuild/easyconfigs/k/kineto/kineto-0.4.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..4dd6b4afdf1 --- /dev/null +++ b/easybuild/easyconfigs/k/kineto/kineto-0.4.0-GCC-12.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'kineto' +version = '0.4.0' + +homepage = 'https://github.com/pytorch/kineto' +description = "A CPU+GPU Profiling library that provides access to timeline traces and hardware performance counters" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/pytorch/kineto/archive/'] +sources = [{ + 'git_config': { + 'url': 'https://github.com/pytorch', + 'repo_name': name, + 'tag': 'v%(version)s', + 'recursive': True, + }, + 'filename': SOURCE_TAR_GZ, +}] +checksums = [None] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Python', '3.11.3'), +] + +start_dir = 'libkineto' + +sanity_check_paths = { + 'files': ['lib/libkineto.a'], + 'dirs': ['include/kineto'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/k/kyber/kyber-0.4.0-GCC-12.3.0.eb b/easybuild/easyconfigs/k/kyber/kyber-0.4.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..14fa1faab67 --- /dev/null +++ b/easybuild/easyconfigs/k/kyber/kyber-0.4.0-GCC-12.3.0.eb @@ -0,0 +1,452 @@ +easyblock = 'Cargo' + +name = 'kyber' +version = '0.4.0' + +homepage = 'https://github.com/wdecoster/kyber' +description = """Tool to quickly make a minimalistic 600x600 pixels + heatmap image of read length (log-transformed) and read accuracy.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wdecoster/kyber/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['kyber-0.4.0_requirements.patch'] +checksums = [ + {'v0.4.0.tar.gz': '1a89538d2795e5f589fd18280de4443d3311454ed70f595b3e6611bd8d8811e1'}, + {'ab_glyph_rasterizer-0.1.8.tar.gz': 'c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-0.7.20.tar.gz': 'cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac'}, + {'approx-0.5.1.tar.gz': 'cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'bio-types-0.13.0.tar.gz': 'dfa990f40a28735fa598dc3dd58d73e62e6b41458959d623903b927ba7b04c80'}, + {'bit_field-0.10.2.tar.gz': 'dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bumpalo-3.12.0.tar.gz': '0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535'}, + {'bytemuck-1.13.1.tar.gz': '17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea'}, + {'byteorder-1.4.3.tar.gz': '14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.79.tar.gz': '50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-4.5.0.tar.gz': '80c21025abd42669a92efc996ef13cfb2c5c627858421ea58d5c3b331a6c134f'}, + {'clap_builder-4.5.0.tar.gz': '458bf1f341769dfcf849846f65dffdf9146daa56bcd2a47cb4e1de9915567c99'}, + {'anstream-0.6.7.tar.gz': '4cd2405b3ac1faab2990b74d728624cd9fd115651fcecc7c2d8daf01376275ba'}, + {'anstyle-1.0.2.tar.gz': '15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea'}, + {'anstyle-parse-0.2.1.tar.gz': '938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333'}, + {'anstyle-query-1.0.0.tar.gz': '5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'clap_derive-4.5.0.tar.gz': '307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'snapbox-0.4.16.tar.gz': '73145a30df4935f50a7b13c1882bce7d194d7071ad0bcc36e7cacbf9ef16e3ec'}, + {'escargot-0.5.7.tar.gz': 'f5584ba17d7ab26a8a7284f13e5bd196294dd2f2d79773cff29b9e9edef601a6'}, + {'dunce-1.0.4.tar.gz': '56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b'}, + {'content_inspector-0.2.4.tar.gz': 'b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38'}, + {'filetime-0.2.22.tar.gz': 'd4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0'}, + {'normalize-line-endings-0.3.0.tar.gz': '61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be'}, + {'os_pipe-1.1.4.tar.gz': '0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177'}, + {'similar-2.2.0.tar.gz': '62ac7f900db32bf3fd12e0117dd3dc4da74bc52ebaac97f39668446d89694803'}, + {'snapbox-macros-0.3.7.tar.gz': '78ccde059aad940984ff696fe8c280900f7ea71a6fb45fce65071a3f2c40b667'}, + {'tempfile-3.9.0.tar.gz': '01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa'}, + {'wait-timeout-0.2.0.tar.gz': '9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6'}, + {'walkdir-2.4.0.tar.gz': 'd71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee'}, + {'clap_lex-0.7.0.tar.gz': '98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce'}, + {'cmake-0.1.49.tar.gz': 'db34956e100b30725f2eb215f90d4871051239535632f84fea3bc92722c66b7c'}, + {'color_quant-1.1.0.tar.gz': '3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b'}, + {'conv-0.3.3.tar.gz': '78ff10625fd0ac447827aa30ea8b861fead473bb60aeb73af6c1c58caf0d1299'}, + {'crc32fast-1.3.2.tar.gz': 'b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d'}, + {'crossbeam-channel-0.5.7.tar.gz': 'cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c'}, + {'crossbeam-deque-0.8.3.tar.gz': 'ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef'}, + {'crossbeam-epoch-0.9.14.tar.gz': '46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695'}, + {'crossbeam-utils-0.8.15.tar.gz': '3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'ctor-0.2.0.tar.gz': 'dd4056f63fce3b82d852c3da92b08ea59959890813a7f4ce9c0ff85b10cf301b'}, + {'curl-sys-0.4.60+curl-7.88.1.tar.gz': '717abe2cb465a5da6ce06617388a3980c9a2844196734bec8ccb8e575250f13f'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'either-1.8.1.tar.gz': '7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91'}, + {'env_logger-0.10.0.tar.gz': '85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0'}, + {'errno-0.2.8.tar.gz': 'f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1'}, + {'errno-dragonfly-0.1.2.tar.gz': 'aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf'}, + {'exr-1.6.3.tar.gz': 'bdd2162b720141a91a054640662d3edce3d50a944a50ffca5313cd951abb35b4'}, + {'flate2-1.0.25.tar.gz': 'a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841'}, + {'flume-0.10.14.tar.gz': '1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577'}, + {'form_urlencoded-1.1.0.tar.gz': 'a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'futures-core-0.3.27.tar.gz': '86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd'}, + {'futures-sink-0.3.27.tar.gz': 'ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2'}, + {'getrandom-0.1.16.tar.gz': '8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce'}, + {'getrandom-0.2.8.tar.gz': 'c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31'}, + {'gif-0.11.4.tar.gz': '3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'half-2.2.1.tar.gz': '02b4af3693f1b705df946e9fe5631932443781d0aabb423b62fcd4d73f6d2fd0'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.2.6.tar.gz': 'ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7'}, + {'hermit-abi-0.3.1.tar.gz': 'fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286'}, + {'hts-sys-2.0.3.tar.gz': '0dba4fc406d3686926c84f98fd53026b625319d119e6056a40313862a6e3c4eb'}, + {'idna-0.3.0.tar.gz': 'e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'image-0.24.5.tar.gz': '69b7ea949b537b0fd0af141fff8c77690f2ce96f4f41f042ccb6c69c6c965945'}, + {'imageproc-0.23.0.tar.gz': 'b6aee993351d466301a29655d628bfc6f5a35a0d062b6160ca0808f425805fd7'}, + {'io-lifetimes-1.0.6.tar.gz': 'cfa919a82ea574332e2de6e74b4c36e74d41982b335080fa59d4ef31be20fdf3'}, + {'is-terminal-0.4.4.tar.gz': '21b6b32576413a8e69b90e952e4a026476040d81017b80445deda5f2d3921857'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'jobserver-0.1.26.tar.gz': '936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2'}, + {'jpeg-decoder-0.3.0.tar.gz': 'bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e'}, + {'js-sys-0.3.61.tar.gz': '445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lebe-0.5.2.tar.gz': '03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8'}, + {'libc-0.2.140.tar.gz': '99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c'}, + {'libz-sys-1.1.8.tar.gz': '9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'linux-raw-sys-0.1.4.tar.gz': 'f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4'}, + {'lock_api-0.4.9.tar.gz': '435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df'}, + {'log-0.4.17.tar.gz': 'abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'matrixmultiply-0.3.2.tar.gz': 'add85d4dd35074e6fedc608f8c8f513a3548619a9024b751949ef0e8e45a4d84'}, + {'memchr-2.5.0.tar.gz': '2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d'}, + {'memoffset-0.8.0.tar.gz': 'd61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1'}, + {'miniz_oxide-0.6.2.tar.gz': 'b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa'}, + {'nalgebra-0.30.1.tar.gz': '4fb2d0de08694bed883320212c18ee3008576bfe8c306f4c3c4a58b4876998be'}, + {'nanorand-0.7.0.tar.gz': '6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'num-0.4.0.tar.gz': '43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606'}, + {'num-bigint-0.4.3.tar.gz': 'f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f'}, + {'num-complex-0.4.3.tar.gz': '02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d'}, + {'num-integer-0.1.45.tar.gz': '225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9'}, + {'num-iter-0.1.43.tar.gz': '7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252'}, + {'num-rational-0.4.1.tar.gz': '0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0'}, + {'num-traits-0.2.15.tar.gz': '578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd'}, + {'num_cpus-1.15.0.tar.gz': '0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b'}, + {'once_cell-1.17.1.tar.gz': 'b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3'}, + {'openssl-src-111.25.1+1.1.1t.tar.gz': '1ef9a9cc6ea7d9d5e7c4a913dc4b48d0e359eddf01af1dfec96ba7064b4aba10'}, + {'openssl-sys-0.9.81.tar.gz': '176be2629957c157240f68f61f2d0053ad3a4ecfdd9ebf1e6521d18d9635cf67'}, + {'os_str_bytes-6.4.1.tar.gz': '9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee'}, + {'owned_ttf_parser-0.15.2.tar.gz': '05e6affeb1632d6ff6a23d2cd40ffed138e82f1532571a26f527c8a284bb2fbb'}, + {'paste-1.0.12.tar.gz': '9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79'}, + {'percent-encoding-2.2.0.tar.gz': '478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e'}, + {'pin-project-1.0.12.tar.gz': 'ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc'}, + {'pin-project-internal-1.0.12.tar.gz': '069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55'}, + {'pkg-config-0.3.26.tar.gz': '6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160'}, + {'png-0.17.7.tar.gz': '5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'proc-macro-error-1.0.4.tar.gz': 'da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c'}, + {'proc-macro-error-attr-1.0.4.tar.gz': 'a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869'}, + {'proc-macro2-1.0.70.tar.gz': '39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.26.tar.gz': '4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc'}, + {'rand-0.7.3.tar.gz': '6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03'}, + {'rand_chacha-0.2.2.tar.gz': 'f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402'}, + {'rand_core-0.5.1.tar.gz': '90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19'}, + {'rand_distr-0.2.2.tar.gz': '96977acbdd3a6576fb1d27391900035bf3863d4a16422973a409b488cf29ffb2'}, + {'rand_hc-0.2.0.tar.gz': 'ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.7.0.tar.gz': '1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b'}, + {'rayon-core-1.11.0.tar.gz': '4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d'}, + {'regex-1.7.1.tar.gz': '48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733'}, + {'regex-syntax-0.6.28.tar.gz': '456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848'}, + {'rust-htslib-0.43.1.tar.gz': '53881800f22b91fa893cc3f6d70e6e9aa96d200133bfe112e36aee37aad70bf5'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustix-0.36.9.tar.gz': 'fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc'}, + {'rusttype-0.9.3.tar.gz': '3ff8374aa04134254b7995b63ad3dc41c7f7236f69528b28553da7d72efaa967'}, + {'rustversion-1.0.12.tar.gz': '4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06'}, + {'safe_arch-0.6.0.tar.gz': '794821e4ccb0d9f979512f9c1973480123f9bd62a90d74ab0f9426fcf8f4a529'}, + {'scoped_threadpool-0.1.9.tar.gz': '1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8'}, + {'scopeguard-1.1.0.tar.gz': 'd29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'simba-0.7.3.tar.gz': '2f3fd720c48c53cace224ae62bef1bbff363a70c68c4802a78b5cc6159618176'}, + {'simd-adler32-0.3.5.tar.gz': '238abfbb77c1915110ad968465608b68e869e0772622c9656714e73e5a1a522f'}, + {'smallvec-1.10.0.tar.gz': 'a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0'}, + {'spin-0.9.6.tar.gz': 'b5d6e0250b93c8427a177b849d144a96d5acc57006149479403d7861ab721e34'}, + {'strsim-0.11.0.tar.gz': '5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01'}, + {'strum_macros-0.24.3.tar.gz': '1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.12.tar.gz': '79d9531f94112cfc3e4c8f5f02cb2b58f72c97b7efd85f70203cc6d8efda5927'}, + {'termcolor-1.2.0.tar.gz': 'be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6'}, + {'thiserror-1.0.39.tar.gz': 'a5ab016db510546d856297882807df8da66a16fb8c4101cb8b30054b0d5b2d9c'}, + {'thiserror-impl-1.0.39.tar.gz': '5420d42e90af0c38c3290abcca25b9b3bdf379fc9f55c528f53a269d9c9a267e'}, + {'tiff-0.8.1.tar.gz': '7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'ttf-parser-0.15.2.tar.gz': '7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd'}, + {'typenum-1.16.0.tar.gz': '497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba'}, + {'unicode-bidi-0.3.11.tar.gz': '524b68aca1d05e03fdf03fcdce2c6c94b6daf6d16861ddaa7e4f2b6638a9052c'}, + {'unicode-ident-1.0.8.tar.gz': 'e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4'}, + {'unicode-normalization-0.1.22.tar.gz': '5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921'}, + {'url-2.3.1.tar.gz': '0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.9.0+wasi-snapshot-preview1.tar.gz': 'cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.84.tar.gz': '31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b'}, + {'wasm-bindgen-backend-0.2.84.tar.gz': '95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9'}, + {'wasm-bindgen-macro-0.2.84.tar.gz': '4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5'}, + {'wasm-bindgen-macro-support-0.2.84.tar.gz': '2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6'}, + {'wasm-bindgen-shared-0.2.84.tar.gz': '0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d'}, + {'weezl-0.1.7.tar.gz': '9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb'}, + {'wide-0.7.8.tar.gz': 'b689b6c49d6549434bf944e6b0f39238cf63693cb7a147e9d887507fffa3b223'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.5.tar.gz': '70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-sys-0.45.0.tar.gz': '75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0'}, + {'windows-sys-0.48.0.tar.gz': '677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.42.2.tar.gz': '8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071'}, + {'windows-targets-0.48.5.tar.gz': '9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c'}, + {'windows-targets-0.52.0.tar.gz': '8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd'}, + {'windows_aarch64_gnullvm-0.42.2.tar.gz': '597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8'}, + {'windows_aarch64_gnullvm-0.48.5.tar.gz': '2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8'}, + {'windows_aarch64_gnullvm-0.52.0.tar.gz': 'cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea'}, + {'windows_aarch64_msvc-0.42.2.tar.gz': 'e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43'}, + {'windows_aarch64_msvc-0.48.5.tar.gz': 'dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc'}, + {'windows_aarch64_msvc-0.52.0.tar.gz': 'bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef'}, + {'windows_i686_gnu-0.42.2.tar.gz': 'c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f'}, + {'windows_i686_gnu-0.48.5.tar.gz': 'a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e'}, + {'windows_i686_gnu-0.52.0.tar.gz': 'a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313'}, + {'windows_i686_msvc-0.42.2.tar.gz': '44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060'}, + {'windows_i686_msvc-0.48.5.tar.gz': '8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406'}, + {'windows_i686_msvc-0.52.0.tar.gz': 'ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a'}, + {'windows_x86_64_gnu-0.42.2.tar.gz': '8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36'}, + {'windows_x86_64_gnu-0.48.5.tar.gz': '53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e'}, + {'windows_x86_64_gnu-0.52.0.tar.gz': '3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd'}, + {'windows_x86_64_gnullvm-0.42.2.tar.gz': '26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3'}, + {'windows_x86_64_gnullvm-0.48.5.tar.gz': '0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc'}, + {'windows_x86_64_gnullvm-0.52.0.tar.gz': '1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e'}, + {'windows_x86_64_msvc-0.42.2.tar.gz': '9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0'}, + {'windows_x86_64_msvc-0.48.5.tar.gz': 'ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538'}, + {'windows_x86_64_msvc-0.52.0.tar.gz': 'dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04'}, + {'zune-inflate-0.2.51.tar.gz': 'a01728b79fb9b7e28a8c11f715e1cd8dc2cda7416a007d66cac55cebb3a8ac6b'}, + {'kyber-0.4.0_requirements.patch': '25c454d67914ccfe1f80ac4edf19629806c7d9d06135201053f73b0a4c10c0eb'}, +] + +crates = [ + ('ab_glyph_rasterizer', '0.1.8'), + ('adler', '1.0.2'), + ('aho-corasick', '0.7.20'), + ('approx', '0.5.1'), + ('autocfg', '1.1.0'), + ('bio-types', '0.13.0'), + ('bit_field', '0.10.2'), + ('bitflags', '1.3.2'), + ('bumpalo', '3.12.0'), + ('bytemuck', '1.13.1'), + ('byteorder', '1.4.3'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.79'), + ('cfg-if', '1.0.0'), + ('clap', '4.5.0'), + ('clap_builder', '4.5.0'), + ('anstream', '0.6.7'), + ('anstyle', '1.0.2'), + ('anstyle-parse', '0.2.1'), + ('anstyle-query', '1.0.0'), + ('anstyle-wincon', '3.0.2'), + ('colorchoice', '1.0.0'), + ('utf8parse', '0.2.1'), + ('humantime', '2.1.0'), + ('clap_derive', '4.5.0'), + ('shlex', '1.3.0'), + ('snapbox', '0.4.16'), + ('escargot', '0.5.7'), + ('dunce', '1.0.4'), + ('content_inspector', '0.2.4'), + ('filetime', '0.2.22'), + ('normalize-line-endings', '0.3.0'), + ('os_pipe', '1.1.4'), + ('similar', '2.2.0'), + ('snapbox-macros', '0.3.7'), + ('tempfile', '3.9.0'), + ('wait-timeout', '0.2.0'), + ('walkdir', '2.4.0'), + ('clap_lex', '0.7.0'), + ('cmake', '0.1.49'), + ('color_quant', '1.1.0'), + ('conv', '0.3.3'), + ('crc32fast', '1.3.2'), + ('crossbeam-channel', '0.5.7'), + ('crossbeam-deque', '0.8.3'), + ('crossbeam-epoch', '0.9.14'), + ('crossbeam-utils', '0.8.15'), + ('crunchy', '0.2.2'), + ('ctor', '0.2.0'), + ('curl-sys', '0.4.60+curl-7.88.1'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('either', '1.8.1'), + ('env_logger', '0.10.0'), + ('errno', '0.2.8'), + ('errno-dragonfly', '0.1.2'), + ('exr', '1.6.3'), + ('flate2', '1.0.25'), + ('flume', '0.10.14'), + ('form_urlencoded', '1.1.0'), + ('fs-utils', '1.1.4'), + ('futures-core', '0.3.27'), + ('futures-sink', '0.3.27'), + ('getrandom', '0.1.16'), + ('getrandom', '0.2.8'), + ('gif', '0.11.4'), + ('glob', '0.3.1'), + ('half', '2.2.1'), + ('heck', '0.4.1'), + ('hermit-abi', '0.2.6'), + ('hermit-abi', '0.3.1'), + ('hts-sys', '2.0.3'), + ('idna', '0.3.0'), + ('ieee754', '0.2.6'), + ('image', '0.24.5'), + ('imageproc', '0.23.0'), + ('io-lifetimes', '1.0.6'), + ('is-terminal', '0.4.4'), + ('itertools', '0.10.5'), + ('jobserver', '0.1.26'), + ('jpeg-decoder', '0.3.0'), + ('js-sys', '0.3.61'), + ('lazy_static', '1.4.0'), + ('lebe', '0.5.2'), + ('libc', '0.2.140'), + ('libz-sys', '1.1.8'), + ('linear-map', '1.2.0'), + ('linux-raw-sys', '0.1.4'), + ('lock_api', '0.4.9'), + ('log', '0.4.17'), + ('lzma-sys', '0.1.20'), + ('matrixmultiply', '0.3.2'), + ('memchr', '2.5.0'), + ('memoffset', '0.8.0'), + ('miniz_oxide', '0.6.2'), + ('nalgebra', '0.30.1'), + ('nanorand', '0.7.0'), + ('ndarray', '0.15.6'), + ('newtype_derive', '0.1.6'), + ('num', '0.4.0'), + ('num-bigint', '0.4.3'), + ('num-complex', '0.4.3'), + ('num-integer', '0.1.45'), + ('num-iter', '0.1.43'), + ('num-rational', '0.4.1'), + ('num-traits', '0.2.15'), + ('num_cpus', '1.15.0'), + ('once_cell', '1.17.1'), + ('openssl-src', '111.25.1+1.1.1t'), + ('openssl-sys', '0.9.81'), + ('os_str_bytes', '6.4.1'), + ('owned_ttf_parser', '0.15.2'), + ('paste', '1.0.12'), + ('percent-encoding', '2.2.0'), + ('pin-project', '1.0.12'), + ('pin-project-internal', '1.0.12'), + ('pkg-config', '0.3.26'), + ('png', '0.17.7'), + ('ppv-lite86', '0.2.17'), + ('proc-macro-error', '1.0.4'), + ('proc-macro-error-attr', '1.0.4'), + ('proc-macro2', '1.0.70'), + ('quick-error', '1.2.3'), + ('quote', '1.0.26'), + ('rand', '0.7.3'), + ('rand_chacha', '0.2.2'), + ('rand_core', '0.5.1'), + ('rand_distr', '0.2.2'), + ('rand_hc', '0.2.0'), + ('rawpointer', '0.2.1'), + ('rayon', '1.7.0'), + ('rayon-core', '1.11.0'), + ('regex', '1.7.1'), + ('regex-syntax', '0.6.28'), + ('rust-htslib', '0.43.1'), + ('rustc_version', '0.1.7'), + ('rustix', '0.36.9'), + ('rusttype', '0.9.3'), + ('rustversion', '1.0.12'), + ('safe_arch', '0.6.0'), + ('scoped_threadpool', '0.1.9'), + ('scopeguard', '1.1.0'), + ('semver', '0.1.20'), + ('simba', '0.7.3'), + ('simd-adler32', '0.3.5'), + ('smallvec', '1.10.0'), + ('spin', '0.9.6'), + ('strsim', '0.11.0'), + ('strum_macros', '0.24.3'), + ('syn', '1.0.109'), + ('syn', '2.0.12'), + ('termcolor', '1.2.0'), + ('thiserror', '1.0.39'), + ('thiserror-impl', '1.0.39'), + ('tiff', '0.8.1'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('ttf-parser', '0.15.2'), + ('typenum', '1.16.0'), + ('unicode-bidi', '0.3.11'), + ('unicode-ident', '1.0.8'), + ('unicode-normalization', '0.1.22'), + ('url', '2.3.1'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('wasi', '0.9.0+wasi-snapshot-preview1'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.84'), + ('wasm-bindgen-backend', '0.2.84'), + ('wasm-bindgen-macro', '0.2.84'), + ('wasm-bindgen-macro-support', '0.2.84'), + ('wasm-bindgen-shared', '0.2.84'), + ('weezl', '0.1.7'), + ('wide', '0.7.8'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.5'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.45.0'), + ('windows-sys', '0.48.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.42.2'), + ('windows-targets', '0.48.5'), + ('windows-targets', '0.52.0'), + ('windows_aarch64_gnullvm', '0.42.2'), + ('windows_aarch64_gnullvm', '0.48.5'), + ('windows_aarch64_gnullvm', '0.52.0'), + ('windows_aarch64_msvc', '0.42.2'), + ('windows_aarch64_msvc', '0.48.5'), + ('windows_aarch64_msvc', '0.52.0'), + ('windows_i686_gnu', '0.42.2'), + ('windows_i686_gnu', '0.48.5'), + ('windows_i686_gnu', '0.52.0'), + ('windows_i686_msvc', '0.42.2'), + ('windows_i686_msvc', '0.48.5'), + ('windows_i686_msvc', '0.52.0'), + ('windows_x86_64_gnu', '0.42.2'), + ('windows_x86_64_gnu', '0.48.5'), + ('windows_x86_64_gnu', '0.52.0'), + ('windows_x86_64_gnullvm', '0.42.2'), + ('windows_x86_64_gnullvm', '0.48.5'), + ('windows_x86_64_gnullvm', '0.52.0'), + ('windows_x86_64_msvc', '0.42.2'), + ('windows_x86_64_msvc', '0.48.5'), + ('windows_x86_64_msvc', '0.52.0'), + ('zune-inflate', '0.2.51'), +] + +builddependencies = [ + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s --version"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/k/kyber/kyber-0.4.0_requirements.patch b/easybuild/easyconfigs/k/kyber/kyber-0.4.0_requirements.patch new file mode 100644 index 00000000000..4f59f4a0e8e --- /dev/null +++ b/easybuild/easyconfigs/k/kyber/kyber-0.4.0_requirements.patch @@ -0,0 +1,521 @@ +Use newer `proc-macro2` to avoid the `proc_macro_span_shrink` error. +see https://github.com/dtolnay/proc-macro2/issues/356 + https://github.com/rust-lang/rust/issues/113152 +Author: Petr Král (INUITS) +diff -u Cargo.lock.orig Cargo.lock +--- Cargo.lock.orig 2024-09-23 12:04:03.201953274 +0200 ++++ Cargo.lock 2024-10-15 11:28:46.785202683 +0200 +@@ -109,42 +109,256 @@ + + [[package]] + name = "clap" +-version = "4.1.8" ++version = "4.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "c3d7ae14b20b94cb02149ed21a86c423859cbe18dc7ed69845cace50e52b40a5" ++checksum = "80c21025abd42669a92efc996ef13cfb2c5c627858421ea58d5c3b331a6c134f" + dependencies = [ +- "bitflags", ++ "clap_builder 4.5.0", + "clap_derive", +- "clap_lex", +- "is-terminal", +- "once_cell", +- "strsim", +- "termcolor", ++ "humantime", ++ "rustversion", ++ "shlex", ++ "snapbox", ++ "trybuild", ++ "trycmd", ++] ++ ++[[package]] ++name = "clap_builder" ++version = "4.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "458bf1f341769dfcf849846f65dffdf9146daa56bcd2a47cb4e1de9915567c99" ++dependencies = [ ++ "anstream", ++ "anstyle", ++ "backtrace", ++ "clap_lex 0.7.0", ++ "color-print", ++ "static_assertions", ++ "strsim 0.11.0", ++ "terminal_size 0.3.0", ++ "unic-emoji-char", ++ "unicase", ++ "unicode-width", + ] + + [[package]] ++name = "anstream" ++version = "0.6.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4cd2405b3ac1faab2990b74d728624cd9fd115651fcecc7c2d8daf01376275ba" ++dependencies = [ ++ "anstyle", ++ "anstyle-parse", ++ "anstyle-query", ++ "anstyle-wincon", ++ "colorchoice", ++ "utf8parse", ++] ++ ++[[package]] ++name = "anstyle" ++version = "1.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" ++ ++[[package]] ++name = "anstyle-parse" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" ++dependencies = [ ++ "utf8parse", ++] ++ ++[[package]] ++name = "anstyle-query" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" ++dependencies = [ ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "anstyle-wincon" ++version = "3.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" ++dependencies = [ ++ "anstyle", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "colorchoice" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" ++ ++[[package]] ++name = "utf8parse" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" ++ ++[[package]] ++name = "humantime" ++version = "2.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" ++ ++[[package]] + name = "clap_derive" +-version = "4.1.8" ++version = "4.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "44bec8e5c9d09e439c4335b1af0abaab56dcf3b94999a936e1bb47b9134288f0" ++checksum = "307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47" + dependencies = [ + "heck", +- "proc-macro-error", + "proc-macro2", + "quote", +- "syn 1.0.109", ++ "syn 2.0.48", + ] + + [[package]] +-name = "clap_lex" +-version = "0.3.2" ++name = "shlex" ++version = "1.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" ++ ++[[package]] ++name = "snapbox" ++version = "0.4.16" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "73145a30df4935f50a7b13c1882bce7d194d7071ad0bcc36e7cacbf9ef16e3ec" ++dependencies = [ ++ "anstream", ++ "anstyle", ++ "content_inspector", ++ "dunce", ++ "escargot", ++ "filetime", ++ "libc", ++ "normalize-line-endings", ++ "os_pipe", ++ "similar", ++ "snapbox-macros", ++ "tempfile", ++ "wait-timeout", ++ "walkdir", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "escargot" ++version = "0.5.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f5584ba17d7ab26a8a7284f13e5bd196294dd2f2d79773cff29b9e9edef601a6" ++dependencies = [ ++ "log", ++ "once_cell", ++ "serde", ++ "serde_json", ++] ++ ++[[package]] ++name = "dunce" ++version = "1.0.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" ++ ++[[package]] ++name = "content_inspector" ++version = "0.2.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38" ++dependencies = [ ++ "memchr", ++] ++ ++[[package]] ++name = "filetime" ++version = "0.2.22" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" ++dependencies = [ ++ "cfg-if", ++ "libc", ++ "redox_syscall 0.3.5", ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "normalize-line-endings" ++version = "0.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" ++ ++[[package]] ++name = "os_pipe" ++version = "1.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177" ++dependencies = [ ++ "libc", ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "similar" ++version = "2.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "62ac7f900db32bf3fd12e0117dd3dc4da74bc52ebaac97f39668446d89694803" ++ ++ ++[[package]] ++name = "snapbox-macros" ++version = "0.3.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "78ccde059aad940984ff696fe8c280900f7ea71a6fb45fce65071a3f2c40b667" ++dependencies = [ ++ "anstream", ++] ++ ++[[package]] ++name = "tempfile" ++version = "3.9.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "350b9cf31731f9957399229e9b2adc51eeabdfbe9d71d9a0552275fd12710d09" ++checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" + dependencies = [ +- "os_str_bytes", ++ "cfg-if", ++ "fastrand", ++ "redox_syscall 0.4.1", ++ "rustix 0.38.30", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "wait-timeout" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "walkdir" ++version = "2.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" ++dependencies = [ ++ "same-file", ++ "winapi-util", + ] + + [[package]] ++name = "clap_lex" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" ++ ++[[package]] + name = "cmake" + version = "0.1.49" + source = "registry+https://github.com/rust-lang/crates.io-index" +@@ -464,12 +678,6 @@ + ] + + [[package]] +-name = "humantime" +-version = "2.1.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +- +-[[package]] + name = "idna" + version = "0.3.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +@@ -959,9 +1167,9 @@ + + [[package]] + name = "proc-macro2" +-version = "1.0.52" ++version = "1.0.70" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1d0e1ae9e836cc3beddd63db0df682593d7e2d3d891ae8c9083d2113e1744224" ++checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b" + dependencies = [ + "unicode-ident", + ] +@@ -1199,9 +1407,9 @@ + + [[package]] + name = "strsim" +-version = "0.10.0" ++version = "0.11.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" ++checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01" + + [[package]] + name = "strum_macros" +@@ -1468,7 +1676,25 @@ + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" + dependencies = [ +- "windows-targets", ++ "windows-targets 0.42.2", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.48.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" ++dependencies = [ ++ "windows-targets 0.48.5", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" ++dependencies = [ ++ "windows-targets 0.52.0", + ] + + [[package]] +@@ -1477,13 +1703,43 @@ + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" + dependencies = [ +- "windows_aarch64_gnullvm", +- "windows_aarch64_msvc", +- "windows_i686_gnu", +- "windows_i686_msvc", +- "windows_x86_64_gnu", +- "windows_x86_64_gnullvm", +- "windows_x86_64_msvc", ++ "windows_aarch64_gnullvm 0.42.2", ++ "windows_aarch64_msvc 0.42.2", ++ "windows_i686_gnu 0.42.2", ++ "windows_i686_msvc 0.42.2", ++ "windows_x86_64_gnu 0.42.2", ++ "windows_x86_64_gnullvm 0.42.2", ++ "windows_x86_64_msvc 0.42.2", ++] ++ ++[[package]] ++name = "windows-targets" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" ++dependencies = [ ++ "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", ++] ++ ++[[package]] ++name = "windows-targets" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" ++dependencies = [ ++ "windows_aarch64_gnullvm 0.52.0", ++ "windows_aarch64_msvc 0.52.0", ++ "windows_i686_gnu 0.52.0", ++ "windows_i686_msvc 0.52.0", ++ "windows_x86_64_gnu 0.52.0", ++ "windows_x86_64_gnullvm 0.52.0", ++ "windows_x86_64_msvc 0.52.0", + ] + + [[package]] +@@ -1493,42 +1749,126 @@ + checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + + [[package]] ++name = "windows_aarch64_gnullvm" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" ++ ++[[package]] ++name = "windows_aarch64_gnullvm" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" ++ ++[[package]] + name = "windows_aarch64_msvc" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + + [[package]] ++name = "windows_aarch64_msvc" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" ++ ++[[package]] ++name = "windows_aarch64_msvc" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" ++ ++[[package]] + name = "windows_i686_gnu" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + + [[package]] ++name = "windows_i686_gnu" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" ++ ++[[package]] ++name = "windows_i686_gnu" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" ++ ++[[package]] + name = "windows_i686_msvc" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + + [[package]] ++name = "windows_i686_msvc" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" ++ ++[[package]] ++name = "windows_i686_msvc" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" ++ ++[[package]] + name = "windows_x86_64_gnu" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + + [[package]] ++name = "windows_x86_64_gnu" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" ++ ++[[package]] ++name = "windows_x86_64_gnu" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" ++ ++[[package]] + name = "windows_x86_64_gnullvm" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + + [[package]] ++name = "windows_x86_64_gnullvm" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" ++ ++[[package]] ++name = "windows_x86_64_gnullvm" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" ++ ++[[package]] + name = "windows_x86_64_msvc" + version = "0.42.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + + [[package]] ++name = "windows_x86_64_msvc" ++version = "0.48.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" ++ ++[[package]] ++name = "windows_x86_64_msvc" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" ++ ++[[package]] + name = "zune-inflate" + version = "0.2.51" + source = "registry+https://github.com/rust-lang/crates.io-index" diff --git a/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1fa3ca78fd9 --- /dev/null +++ b/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'LAME' +version = '3.100' + +homepage = 'http://lame.sourceforge.net/' +description = """LAME is a high quality MPEG Audio Layer III (MP3) encoder licensed under the LGPL.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://sourceforge.net/projects/lame/files/lame/%(version_major_minor)s/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['LAME-3.99.5_check-tgetent.patch'] +checksums = [ + 'ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e', # lame-3.100.tar.gz + '8bfb6a73f2db1511baf90fbd7174f11043ec4b592a4917edc30ccfb53bf37256', # LAME-3.99.5_check-tgetent.patch +] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), +] + +dependencies = [('ncurses', '6.5')] + +preconfigopts = "autoconf && " + +# configure is broken: add workaround to find libncurses... +preconfigopts += "FRONTEND_LDADD='-L${EBROOTNCURSES}/lib' " + +sanity_check_paths = { + 'files': ['bin/lame', 'include/lame/lame.h', 'lib/libmp3lame.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-29Aug2024-foss-2023b-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-29Aug2024-foss-2023b-kokkos.eb new file mode 100644 index 00000000000..177e6b4d2ce --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-29Aug2024-foss-2023b-kokkos.eb @@ -0,0 +1,177 @@ +name = 'LAMMPS' +version = '29Aug2024' +versionsuffix = '-kokkos' + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['stable_%(version)s.tar.gz'] +patches = [ + 'LAMMPS-2Aug2023_install_lammps_python_package_in_eb_software_module.patch', +] +checksums = [ + {'stable_29Aug2024.tar.gz': '6112e0cc352c3140a4874c7f74db3c0c8e30134024164509ecf3772b305fde2e'}, + {'LAMMPS-2Aug2023_install_lammps_python_package_in_eb_software_module.patch': + '723c944b62b9d28427d25e80a7a67049631702d344df49268a6846aa0cd0fe04'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('pkgconf', '2.0.3'), + ('archspec', '0.2.2'), +] +dependencies = [ + ('Python', '3.11.5'), + ('libpng', '1.6.40'), + ('libjpeg-turbo', '3.0.1'), + ('netCDF', '4.9.2'), + ('GSL', '2.7'), + ('zlib', '1.2.13'), + ('gzip', '1.13'), + ('cURL', '8.3.0'), + ('HDF5', '1.14.3'), + ('PCRE', '8.45'), + ('libxml2', '2.11.5'), + ('FFmpeg', '6.0'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.9.2'), + ('SciPy-bundle', '2023.11'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.3.0'), + # We use a custom build of MDI + ('MDI', '1.4.29'), +] +if ARCH == 'x86_64': + # TBB and ScaFaCos are an optional dependency when building on Intel arch + dependencies += [ + ('tbb', '2021.13.0'), + ('ScaFaCoS', '1.0.4'), + ] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) +# 'INTEL' - if builing on Intel CPU +# 'OPENMP' - if OpenMP swithed on in 'toolchainopts' + +# include the following extra packages into the build +general_packages = [ + 'AMOEBA', + 'ASPHERE', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SPICA', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'LEPTON', + 'MACHDYN', + 'MANIFOLD', + 'MANYBODY', + 'MC', + 'MDI', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-POD', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPT', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] + +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..f0d3a361152 --- /dev/null +++ b/easybuild/easyconfigs/l/LDC/LDC-1.39.0-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeNinja' + +name = 'LDC' +version = '1.39.0' + +homepage = 'https://wiki.dlang.org/LDC' +description = "The LLVM-based D Compiler" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/ldc-developers/ldc/releases/download/v%(version)s'] +sources = ['ldc-%(version)s-src.tar.gz'] +checksums = ['839bac36f6073318e36f0b163767e03bdbd3f57d99256b97494ac439b59a4562'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), + # building LDC from source requires LDC + ('LDC', '1.24.0', '-%(arch)s', SYSTEM), +] + +dependencies = [ + ('LLVM', '16.0.6'), +] + +configopts = "-DLLVM_ROOT_DIR=$EBROOTLLVM" + +sanity_check_paths = { + 'files': ['bin/ldc2', 'bin/ldmd2'], + 'dirs': ['include/d', 'lib'], +} + +sanity_check_commands = [ + "ldc2 --help", + "ldmd2 --help", +] + +moduleclass = 'lang' 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..f4d5e9a50be --- /dev/null +++ b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +# 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'), +] + +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + +postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) + "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", + "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-12.3.0.eb b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..11dbbfa5025 --- /dev/null +++ b/easybuild/easyconfigs/l/LIME/LIME-1.3.2-GCCcore-12.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': '12.3.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.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/LMDB/LMDB-0.9.31-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LMDB/LMDB-0.9.31-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..946dd8e0961 --- /dev/null +++ b/easybuild/easyconfigs/l/LMDB/LMDB-0.9.31-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'MakeCp' + +name = 'LMDB' +version = '0.9.31' + +homepage = 'https://symas.com/lmdb' +description = """LMDB is a fast, memory-efficient database. With memory-mapped files, it has the read performance + of a pure in-memory database while retaining the persistence of standard disk-based databases.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/LMDB/lmdb/archive/'] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['dd70a8c67807b3b8532b3e987b0a4e998962ecc28643e1af5ec77696b081c9b0'] + +builddependencies = [('binutils', '2.40')] + +buildopts = 'CC="$CC" OPT="$CFLAGS"' + +runtest = 'test' + +local_binaries = ['mdb_copy', 'mdb_dump', 'mdb_load', 'mdb_stat'] + +files_to_copy = [ + (['lmdb.h', 'midl.h'], 'include'), + (local_binaries, 'bin'), + (['liblmdb.a', 'liblmdb.%s' % SHLIB_EXT], 'lib'), +] + +sanity_check_paths = { + 'files': ['bin/mdb_copy', 'bin/mdb_dump', 'bin/mdb_load', 'bin/mdb_stat', 'include/lmdb.h', + 'include/midl.h', 'lib/liblmdb.a', 'lib/liblmdb.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["%s -V" % x for x in local_binaries] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/LMDB/LMDB-0.9.31-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LMDB/LMDB-0.9.31-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a10be56a891 --- /dev/null +++ b/easybuild/easyconfigs/l/LMDB/LMDB-0.9.31-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'MakeCp' + +name = 'LMDB' +version = '0.9.31' + +homepage = 'https://symas.com/lmdb' +description = """LMDB is a fast, memory-efficient database. With memory-mapped files, it has the read performance + of a pure in-memory database while retaining the persistence of standard disk-based databases.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/LMDB/lmdb/archive/'] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['dd70a8c67807b3b8532b3e987b0a4e998962ecc28643e1af5ec77696b081c9b0'] + +builddependencies = [('binutils', '2.42')] + +buildopts = 'CC="$CC" OPT="$CFLAGS"' + +runtest = 'test' + +local_binaries = ['mdb_copy', 'mdb_dump', 'mdb_load', 'mdb_stat'] + +files_to_copy = [ + (['lmdb.h', 'midl.h'], 'include'), + (local_binaries, 'bin'), + (['liblmdb.a', 'liblmdb.%s' % SHLIB_EXT], 'lib'), +] + +sanity_check_paths = { + 'files': ['bin/mdb_copy', 'bin/mdb_dump', 'bin/mdb_load', 'bin/mdb_stat', 'include/lmdb.h', + 'include/midl.h', 'lib/liblmdb.a', 'lib/liblmdb.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["%s -V" % x for x in local_binaries] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/LRBinner/LRBinner-0.1-foss-2023a.eb b/easybuild/easyconfigs/l/LRBinner/LRBinner-0.1-foss-2023a.eb new file mode 100644 index 00000000000..143e59d35c5 --- /dev/null +++ b/easybuild/easyconfigs/l/LRBinner/LRBinner-0.1-foss-2023a.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'LRBinner' +version = '0.1' + +homepage = 'https://github.com/anuradhawick/LRBinner' +description = "LRBinner is a long-read binning tool published in WABI 2021 proceedings and AMB. " + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('HMMER', '3.4'), + ('Seaborn', '0.13.2'), + ('h5py', '3.9.0'), + ('PyTorch', '2.1.2'), + ('tqdm', '4.66.1'), + ('Biopython', '1.83'), + ('scikit-learn', '1.3.1'), + ('FragGeneScan', '1.31'), + ('HDBSCAN', '0.8.38.post1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('tabulate', '0.9.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f'], + }), + (name, version, { + 'modulename': 'mbcclr_utils', + 'preinstallopts': "sed -i 's/pytorch/torch/g' setup.py && ", + 'source_urls': ['https://github.com/anuradhawick/LRBinner/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['2d77dde8ab1272c432b20eb18a352326c622e929261562ef6d680c6638cc4bd1'], + }), +] + +sanity_check_commands = ['LRBinner --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/LZO/LZO-2.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LZO/LZO-2.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4d8ccd20b1f --- /dev/null +++ b/easybuild/easyconfigs/l/LZO/LZO-2.10-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'LZO' +version = '2.10' + +homepage = 'https://www.oberhumer.com/opensource/lzo/' +description = "Portable lossless data compression library" + +source_urls = [homepage + 'download/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072'] + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +builddependencies = [('binutils', '2.42')] + +configopts = '--enable-shared' + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/liblzo2.a', 'lib/liblzo2.%s' % SHLIB_EXT], + 'dirs': ['include'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ee92fb98c62 --- /dev/null +++ b/easybuild/easyconfigs/l/Leptonica/Leptonica-1.84.1-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'Leptonica' +version = '1.84.1' + +homepage = 'http://www.leptonica.org' +description = """Leptonica is a collection of pedagogically-oriented open source software + that is broadly useful for image processing and image analysis applications.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/DanBloomberg/leptonica/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2b3e1254b1cca381e77c819b59ca99774ff43530209b9aeb511e1d46588a64f6'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('libpng', '1.6.39'), + ('LibTIFF', '4.5.0'), + ('libjpeg-turbo', '2.1.5.1'), + ('giflib', '5.2.1'), + ('libwebp', '1.3.1'), + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['bin/convertformat'], + 'dirs': ['include/leptonica', 'lib/pkgconfig'] +} + +moduleclass = 'vis' 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 35889241c08..cf2d0aace66 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 @@ -47,6 +47,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..638330e8866 --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = "LightGBM" +version = "4.5.0" +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://lightgbm.readthedocs.io" +description = """A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM +or MART) framework based on decision tree algorithms, used for ranking, +classification and many other machine learning tasks.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('scikit-build-core', '0.9.3'), + ('wget', '1.24.5'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Arrow', '14.0.1'), # optional + ('dask', '2023.9.2'), # optional + ('scikit-learn', '1.3.1'), # optional +] + +use_pip = True + +# example files are not distributed with the sources +_test_repo_url = "https://raw.githubusercontent.com/microsoft/LightGBM/refs/tags/v%(version)s/examples" +_test_cmds_pre = " && ".join([ + "mkdir regression", + "wget -P regression %s/regression/regression.test" % _test_repo_url, + "wget -P regression %s/regression/regression.train" % _test_repo_url, + "mkdir test", + "cd test", + "wget %s/python-guide/simple_example.py" % _test_repo_url, + "", +]) + +exts_list = [ + ('lightgbm', version, { + 'checksums': ['e1cd7baf0318d4e308a26575a63a4635f08df866ad3622a9d8e3d71d9637a1ba'], + 'installopts': "--config-settings=cmake.define.USE_CUDA=ON", + 'use_pip_extras': "arrow,dask,pandas,scikit-learn", + 'pretestopts': _test_cmds_pre, + 'runtest': 'python', + 'testopts': "simple_example.py", + 'testinstall': True, + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb new file mode 100644 index 00000000000..b6a03faf9ca --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = "LightGBM" +version = "4.5.0" + +homepage = "https://lightgbm.readthedocs.io" +description = """A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM +or MART) framework based on decision tree algorithms, used for ranking, +classification and many other machine learning tasks.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('scikit-build-core', '0.9.3'), + ('wget', '1.24.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Arrow', '14.0.1'), # optional + ('dask', '2023.9.2'), # optional + ('scikit-learn', '1.3.1'), # optional +] + +use_pip = True + +# example files are not distributed with the sources +_test_repo_url = "https://raw.githubusercontent.com/microsoft/LightGBM/refs/tags/v%(version)s/examples" +_test_cmds_pre = " && ".join([ + "mkdir regression", + "wget -P regression %s/regression/regression.test" % _test_repo_url, + "wget -P regression %s/regression/regression.train" % _test_repo_url, + "mkdir test", + "cd test", + "wget %s/python-guide/simple_example.py" % _test_repo_url, + "", +]) + +exts_list = [ + ('lightgbm', version, { + 'checksums': ['e1cd7baf0318d4e308a26575a63a4635f08df866ad3622a9d8e3d71d9637a1ba'], + 'installopts': "--config-settings=cmake.define.USE_MPI=ON", + 'use_pip_extras': "arrow,dask,pandas,scikit-learn", + 'pretestopts': _test_cmds_pre, + 'runtest': 'python', + 'testopts': "simple_example.py", + 'testinstall': True, + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb b/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb new file mode 100644 index 00000000000..5635e783f7c --- /dev/null +++ b/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'Lightning' +version = '2.2.1' + +homepage = 'https://github.com/Lightning-AI/pytorch-lightning' +description = """ +The deep learning framework to pretrain, finetune and deploy AI models. +Lightning has 4 core packages: + PyTorch Lightning: Train and deploy PyTorch at scale. + Lightning Fabric: Expert control. + Lightning Data: Blazing fast, distributed streaming of training data from cloud storage. + Lightning Apps: Build AI products and ML workflows. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b3e46d596b32cafd1fb9b21fdba1b1767df97b1af5cc702693d1c51df60b19aa'] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('PyTorch-Lightning', version), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.16-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.16-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..121d33200a2 --- /dev/null +++ b/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.16-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'LittleCMS' +version = '2.16' + +homepage = 'https://www.littlecms.com/' +description = """ Little CMS intends to be an OPEN SOURCE small-footprint color management engine, + with special focus on accuracy and performance. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://sourceforge.net/projects/lcms/files/lcms/%s/' % '.'.join(version.split('.')[:2])] +sources = ['lcms2-%(version)s.tar.gz'] +checksums = ['d873d34ad8b9b4cea010631f1a6228d2087475e4dc5e763eb81acc23d9d45a51'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('libjpeg-turbo', '3.0.1')] + +sanity_check_paths = { + 'files': ['bin/jpgicc', 'bin/linkicc', 'bin/psicc', 'bin/transicc', 'include/lcms2.h', 'include/lcms2_plugin.h', + 'lib/liblcms2.a', 'lib/liblcms2.%s' % SHLIB_EXT, 'lib/pkgconfig/lcms2.pc'], + 'dirs': ['share/man'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/l/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/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8a01a3ac439 --- /dev/null +++ b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'MesonNinja' + +name = 'libGLU' +version = '9.0.3' + +homepage = 'https://mesa.freedesktop.org/archive/glu/' +description = """The OpenGL Utility Library (GLU) is a computer graphics library for OpenGL. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://mesa.freedesktop.org/archive/glu/'] +sources = ['glu-%(version)s.tar.xz'] +checksums = ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), + ('Ninja', '1.12.1'), + ('Meson', '1.4.0'), +] + +dependencies = [('Mesa', '24.1.3')] + +sanity_check_paths = { + 'files': ['lib/libGLU.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' 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.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/libcint/libcint-5.4.0-gfbf-2023a-pypzpx.eb b/easybuild/easyconfigs/l/libcint/libcint-5.4.0-gfbf-2023a-pypzpx.eb new file mode 100644 index 00000000000..0bc083652f0 --- /dev/null +++ b/easybuild/easyconfigs/l/libcint/libcint-5.4.0-gfbf-2023a-pypzpx.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'libcint' +version = '5.4.0' +versionsuffix = '-pypzpx' + +homepage = 'https://github.com/sunqm/libcint' +description = """libcint is an open source library for analytical Gaussian integrals. +This module of libcint uses the P orbitals convention (py, pz, px)""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +source_urls = ['https://github.com/sunqm/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-4.4.0_remove_pyscftest.patch'] +checksums = [ + '42a8f2e9244e4575437e426e32cd1e60ef9559971c42a41f860c870efc745d99', # v5.4.0.tar.gz + '6449297a6aee30fef3d6a268aa892dea8dd5c3ca9669a50ae694ab9bcf17842d', # libcint-4.4.0_remove_pyscftest.patch +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +configopts = "-DWITH_RANGE_COULOMB=on -DWITH_COULOMB_ERF=on -DWITH_F12=on -DENABLE_TEST=on -DPYPZPX=1" + +buildopts = 'VERBOSE=1' + +runtest = "test " +separate_build_dir = False # Must use the same directory for tests + +sanity_check_paths = { + 'files': ['include/cint.h', 'lib/%%(name)s.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/libcint/libcint-6.1.2-gfbf-2024a.eb b/easybuild/easyconfigs/l/libcint/libcint-6.1.2-gfbf-2024a.eb new file mode 100644 index 00000000000..ec3812fdaec --- /dev/null +++ b/easybuild/easyconfigs/l/libcint/libcint-6.1.2-gfbf-2024a.eb @@ -0,0 +1,42 @@ +easyblock = 'CMakeMake' + +name = 'libcint' +version = '6.1.2' + +homepage = 'https://github.com/sunqm/libcint' +description = "libcint is an open source library for analytical Gaussian integrals." + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +source_urls = ['https://github.com/sunqm/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-4.4.0_remove_pyscftest.patch', + 'libcint-6.1.2_fix_tests.patch', +] + +checksums = [ + {'v6.1.2.tar.gz': '8287e1eaf2b8c8e19eb7a8ea92fd73898f0884023c503b84624610400adb25c4'}, + {'libcint-4.4.0_remove_pyscftest.patch': '6449297a6aee30fef3d6a268aa892dea8dd5c3ca9669a50ae694ab9bcf17842d'}, + {'libcint-6.1.2_fix_tests.patch': '2776dbe2320a44733f01e6d2baaf190d3af19fe9148ce656b449e09f65497be7'}, +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), +] + +configopts = "-DWITH_RANGE_COULOMB=on -DWITH_COULOMB_ERF=on -DWITH_F12=on -DENABLE_TEST=on" + +buildopts = 'VERBOSE=1' + +runtest = "test " +separate_build_dir = False # Must use the same directory for tests + +sanity_check_paths = { + 'files': ['include/cint.h', 'lib/%(name)s.so'], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/libcint/libcint-6.1.2_fix_tests.patch b/easybuild/easyconfigs/l/libcint/libcint-6.1.2_fix_tests.patch new file mode 100644 index 00000000000..f9f8927990b --- /dev/null +++ b/easybuild/easyconfigs/l/libcint/libcint-6.1.2_fix_tests.patch @@ -0,0 +1,147 @@ +What: Fix incorrect path to the shared library +Author: maxim-mnasterov (SURF) + +diff -Nru libcint-6.1.2.orig/testsuite/test_3c2e.py libcint-6.1.2/testsuite/test_3c2e.py +--- libcint-6.1.2.orig/testsuite/test_3c2e.py 2024-10-04 16:09:36.042124000 +0200 ++++ libcint-6.1.2/testsuite/test_3c2e.py 2024-10-04 16:12:57.158040824 +0200 +@@ -13,7 +13,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + PTR_LIGHT_SPEED = 0 + PTR_COMMON_ORIG = 1 +diff -Nru libcint-6.1.2.orig/testsuite/test_c2s.py libcint-6.1.2/testsuite/test_c2s.py +--- libcint-6.1.2.orig/testsuite/test_c2s.py 2024-10-04 16:09:36.042595000 +0200 ++++ libcint-6.1.2/testsuite/test_c2s.py 2024-10-04 16:13:11.143154981 +0200 +@@ -3,7 +3,7 @@ + import ctypes + import numpy + +-_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../../build'))) ++_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../..'))) + + + PTR_EXPCUTOFF = 0 +diff -Nru libcint-6.1.2.orig/testsuite/test_cart2sph.py libcint-6.1.2/testsuite/test_cart2sph.py +--- libcint-6.1.2.orig/testsuite/test_cart2sph.py 2024-10-04 16:09:36.043003000 +0200 ++++ libcint-6.1.2/testsuite/test_cart2sph.py 2024-10-04 16:13:35.057998480 +0200 +@@ -10,7 +10,7 @@ + sys.path.insert(0, os.path.abspath(os.path.join(__file__, '../../scripts'))) + import cart2sph + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + pauli = np.array([[[0., 1.], + [1., 0.]], # x +diff -Nru libcint-6.1.2.orig/testsuite/test_cint4c1e.py libcint-6.1.2/testsuite/test_cint4c1e.py +--- libcint-6.1.2.orig/testsuite/test_cint4c1e.py 2024-10-04 16:09:36.043792000 +0200 ++++ libcint-6.1.2/testsuite/test_cint4c1e.py 2024-10-04 16:13:48.171695000 +0200 +@@ -13,7 +13,7 @@ + import ctypes + import numpy + +-_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../../build'))) ++_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../..'))) + + + PTR_LIGHT_SPEED = 0 +diff -Nru libcint-6.1.2.orig/testsuite/test_cint.py libcint-6.1.2/testsuite/test_cint.py +--- libcint-6.1.2.orig/testsuite/test_cint.py 2024-10-04 16:09:36.043395000 +0200 ++++ libcint-6.1.2/testsuite/test_cint.py 2024-10-04 16:12:23.988960299 +0200 +@@ -13,7 +13,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + + PTR_EXPCUTOFF = 0 +diff -Nru libcint-6.1.2.orig/testsuite/test_int1e_grids.py libcint-6.1.2/testsuite/test_int1e_grids.py +--- libcint-6.1.2.orig/testsuite/test_int1e_grids.py 2024-10-04 16:09:36.045513000 +0200 ++++ libcint-6.1.2/testsuite/test_int1e_grids.py 2024-10-04 16:14:20.427552000 +0200 +@@ -13,7 +13,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + PTR_EXPCUTOFF = 0 + PTR_COMMON_ORIG = 1 +diff -Nru libcint-6.1.2.orig/testsuite/test_int1e.py libcint-6.1.2/testsuite/test_int1e.py +--- libcint-6.1.2.orig/testsuite/test_int1e.py 2024-10-04 16:09:36.045015000 +0200 ++++ libcint-6.1.2/testsuite/test_int1e.py 2024-10-04 16:14:31.649911000 +0200 +@@ -5,7 +5,7 @@ + import ctypes + import numpy + +-_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../../build'))) ++_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../..'))) + #_cint4 = ctypes.cdll.LoadLibrary('libcint.so.4') + + from pyscf import gto, lib +diff -Nru libcint-6.1.2.orig/testsuite/test_int2c2e.py libcint-6.1.2/testsuite/test_int2c2e.py +--- libcint-6.1.2.orig/testsuite/test_int2c2e.py 2024-10-04 16:09:36.045952547 +0200 ++++ libcint-6.1.2/testsuite/test_int2c2e.py 2024-10-04 16:14:45.424744884 +0200 +@@ -3,7 +3,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + from pyscf import gto, lib + +diff -Nru libcint-6.1.2.orig/testsuite/test_int2e_f12_etc.py libcint-6.1.2/testsuite/test_int2e_f12_etc.py +--- libcint-6.1.2.orig/testsuite/test_int2e_f12_etc.py 2024-10-04 16:09:36.046726088 +0200 ++++ libcint-6.1.2/testsuite/test_int2e_f12_etc.py 2024-10-04 16:14:57.223888132 +0200 +@@ -3,7 +3,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + from pyscf import gto, lib + +diff -Nru libcint-6.1.2.orig/testsuite/test_int2e.py libcint-6.1.2/testsuite/test_int2e.py +--- libcint-6.1.2.orig/testsuite/test_int2e.py 2024-10-04 16:09:36.046362000 +0200 ++++ libcint-6.1.2/testsuite/test_int2e.py 2024-10-04 16:15:10.386953000 +0200 +@@ -5,7 +5,7 @@ + import ctypes + import numpy + +-_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../../build'))) ++_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../..'))) + #_cint4 = ctypes.cdll.LoadLibrary('libcint.so.4') + + from pyscf import gto, lib +diff -Nru libcint-6.1.2.orig/testsuite/test_int3c1e.py libcint-6.1.2/testsuite/test_int3c1e.py +--- libcint-6.1.2.orig/testsuite/test_int3c1e.py 2024-10-04 16:09:36.047153000 +0200 ++++ libcint-6.1.2/testsuite/test_int3c1e.py 2024-10-04 16:15:23.148032000 +0200 +@@ -3,7 +3,7 @@ + import ctypes + import numpy + +-_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../../build'))) ++_cint = numpy.ctypeslib.load_library('libcint', os.path.abspath(os.path.join(__file__, '../..'))) + #_cint4 = ctypes.cdll.LoadLibrary('libcint.so.4') + + from pyscf import gto, lib +diff -Nru libcint-6.1.2.orig/testsuite/test_int3c2e.py libcint-6.1.2/testsuite/test_int3c2e.py +--- libcint-6.1.2.orig/testsuite/test_int3c2e.py 2024-10-04 16:09:36.047561000 +0200 ++++ libcint-6.1.2/testsuite/test_int3c2e.py 2024-10-04 16:15:33.932008000 +0200 +@@ -3,7 +3,7 @@ + import ctypes + import numpy + +-_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../build/libcint.so'))) ++_cint = ctypes.CDLL(os.path.abspath(os.path.join(__file__, '../../libcint.so'))) + + from pyscf import gto, lib + diff --git a/easybuild/easyconfigs/l/libcircle/libcircle-0.3-gompi-2024a.eb b/easybuild/easyconfigs/l/libcircle/libcircle-0.3-gompi-2024a.eb new file mode 100644 index 00000000000..1ea2630b327 --- /dev/null +++ b/easybuild/easyconfigs/l/libcircle/libcircle-0.3-gompi-2024a.eb @@ -0,0 +1,38 @@ +## +# Authors: +# * Petar Forai +# * Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'libcircle' +version = '0.3' + +homepage = 'https://github.com/hpc/libcircle/' + +description = """ + An API to provide an efficient distributed queue on a cluster. libcircle is an + API for distributing embarrassingly parallel workloads using self-stabilization. +""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'hpc' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['fd8bc6e4dcc6fdec9d2a3d1c78a4060948ae4f11f0b278792610d6c05d53e14c'] + +builddependencies = [ + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] + +preconfigopts = './autogen.sh && ' + +sanity_check_paths = { + 'files': ['include/%(name)s.h', 'lib/%(name)s.a', 'lib/%%(name)s.%s' % SHLIB_EXT], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'lib' 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.20.11-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-11.3.0.eb index 237260a43f7..063ce985f47 100644 --- a/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-11.3.0.eb @@ -9,14 +9,15 @@ description = """A C++ SDK which contains an implementation of DAP 2.0 and toolchain = {'name': 'GCCcore', 'version': '11.3.0'} -source_urls = ['https://www.opendap.org/pub/source/'] -sources = [SOURCE_TAR_GZ] -checksums = ['850debf6ee6991350bf31051308093bee35ddd2121e4002be7e130a319de1415'] +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['319e9771d037b6c796f04e6a96bb27db1706bc5931ca149c78347c623a747771'] builddependencies = [ ('binutils', '2.38'), ('Bison', '3.8.2'), ('flex', '2.6.4'), + ('Autotools', '20220317'), ] dependencies = [ @@ -27,6 +28,7 @@ dependencies = [ ('util-linux', '2.38'), ] +preconfigopts = "autoreconf -fi && " configopts = 'TIRPC_LIBS="-ltirpc"' sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-12.3.0.eb index 39e628f1d97..a6dbd52797f 100644 --- a/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/l/libdap/libdap-3.20.11-GCCcore-12.3.0.eb @@ -9,14 +9,15 @@ description = """A C++ SDK which contains an implementation of DAP 2.0 and toolchain = {'name': 'GCCcore', 'version': '12.3.0'} -source_urls = ['https://www.opendap.org/pub/source/'] -sources = [SOURCE_TAR_GZ] -checksums = ['850debf6ee6991350bf31051308093bee35ddd2121e4002be7e130a319de1415'] +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['319e9771d037b6c796f04e6a96bb27db1706bc5931ca149c78347c623a747771'] builddependencies = [ ('binutils', '2.40'), ('Bison', '3.8.2'), ('flex', '2.6.4'), + ('Autotools', '20220317'), ] dependencies = [ @@ -27,6 +28,7 @@ dependencies = [ ('util-linux', '2.39'), ] +preconfigopts = "autoreconf -fi && " configopts = 'TIRPC_LIBS="-ltirpc"' diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.20.7-GCCcore-10.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.20.7-GCCcore-10.3.0.eb index e2bb8f718ab..c1cb33551f7 100644 --- a/easybuild/easyconfigs/l/libdap/libdap-3.20.7-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/l/libdap/libdap-3.20.7-GCCcore-10.3.0.eb @@ -9,14 +9,15 @@ description = """A C++ SDK which contains an implementation of DAP 2.0 and toolchain = {'name': 'GCCcore', 'version': '10.3.0'} -source_urls = ['https://www.opendap.org/pub/source/'] -sources = [SOURCE_TAR_GZ] -checksums = ['6856813d0b29e70a36e8a53e9cf20ad680d21d615952263e9c6586704539e78c'] +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['f6e907ea7a9f878965a3af2a858423450dde389d851fc67a33b0096b8b9b6085'] builddependencies = [ ('binutils', '2.36.1'), ('Bison', '3.7.6'), ('flex', '2.6.4'), + ('Autotools', '20210128'), ] dependencies = [ @@ -27,6 +28,7 @@ dependencies = [ ('util-linux', '2.36'), ] +preconfigopts = "autoreconf -fi && " configopts = 'TIRPC_LIBS="-ltirpc"' sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.20.8-GCCcore-11.2.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.20.8-GCCcore-11.2.0.eb index b48c3f1b6bc..1172b66d8f2 100644 --- a/easybuild/easyconfigs/l/libdap/libdap-3.20.8-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/l/libdap/libdap-3.20.8-GCCcore-11.2.0.eb @@ -9,14 +9,15 @@ description = """A C++ SDK which contains an implementation of DAP 2.0 and toolchain = {'name': 'GCCcore', 'version': '11.2.0'} -source_urls = ['https://www.opendap.org/pub/source/'] -sources = [SOURCE_TAR_GZ] -checksums = ['65eb5c8f693cf74d58eece5eaa2e7c3c65f368926b1bffab0cf5b207757b94eb'] +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['e59b48f48bb37b36dcf9618043881e1d4150abd9b2ea3fa7474647c4ad622ccc'] builddependencies = [ ('binutils', '2.37'), ('Bison', '3.7.6'), ('flex', '2.6.4'), + ('Autotools', '20210726'), ] dependencies = [ @@ -27,6 +28,7 @@ dependencies = [ ('util-linux', '2.37'), ] +preconfigopts = "autoreconf -fi && " configopts = 'TIRPC_LIBS="-ltirpc"' sanity_check_paths = { 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/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..df82da05952 --- /dev/null +++ b/easybuild/easyconfigs/l/libffi/libffi-3.4.5.eb @@ -0,0 +1,25 @@ +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 +toolchainopts = {'pic': True} + +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/libgit2/libgit2-1.8.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libgit2/libgit2-1.8.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..07da30e2a80 --- /dev/null +++ b/easybuild/easyconfigs/l/libgit2/libgit2-1.8.1-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'libgit2' +version = '1.8.1' + +homepage = 'https://libgit2.org/' +description = """libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant +linkable library with a solid API, allowing you to write native speed custom Git applications in any language +which supports C bindings.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['8c1eaf0cf07cba0e9021920bfba9502140220786ed5d8a8ec6c7ad9174522f8e'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('PCRE2', '10.43'), + ('OpenSSL', '3', '', SYSTEM), +] + +configopts = '-DREGEX_BACKEND=pcre2' + +sanity_check_paths = { + 'files': ['include/git2.h', 'lib64/%%(name)s.%s' % SHLIB_EXT, 'lib64/pkgconfig/%(name)s.pc'], + 'dirs': [], +} + +moduleclass = 'devel' 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/libmatheval/003-guile2.0.patch b/easybuild/easyconfigs/l/libmatheval/003-guile2.0.patch new file mode 100644 index 00000000000..3f592cadb0d --- /dev/null +++ b/easybuild/easyconfigs/l/libmatheval/003-guile2.0.patch @@ -0,0 +1,402 @@ +Description: Increase precision of floating point tests + guile-2.0 has increased the precision of the floating point maths returns, + so the test suite needs to allow for the correct values to be returned + with higher precision. Thanks to Dave Pigott + Also adapt the configure script to build against guile-2.0 - patch from + Hilo Bengen . + . + libmatheval (1.1.11+dfsg-1.1) unstable; urgency=low + . + * Non-maintainer upload. + * Migrate to guile-2.0 - patch from Hilo Bengen, + extended to support higher precision of return values + by guile-2.0. (Closes: #746013) +Author: Neil Williams +Bug-Debian: https://bugs.debian.org/746013 + +--- + +--- libmatheval-1.1.11+dfsg.orig/configure.in ++++ libmatheval-1.1.11+dfsg/configure.in +@@ -60,10 +60,11 @@ dnl Checks for library functions. + AC_CHECK_FUNCS([bzero memset], [break]) + + dnl Additional Guile feature checks. ++CFLAGS="$CFLAGS $GUILE_CFLAGS" + AC_CHECK_TYPE([scm_t_bits], [AC_DEFINE([HAVE_SCM_T_BITS], [1], [Define to 1 if you have the `scm_t_bits' type.])], [], [#include ]) +-AC_CHECK_LIB([guile], [scm_c_define_gsubr], [AC_DEFINE([HAVE_SCM_C_DEFINE_GSUBR], [1], [Define to 1 if you have the `scm_c_define_gsubr' function.])], [], [$GUILE_LDFLAGS]) +-AC_CHECK_LIB([guile], [scm_make_gsubr], [AC_DEFINE([HAVE_SCM_MAKE_GSUBR], [1], [Define to 1 if you have the `scm_make_gsubr' function.])], [], [$GUILE_LDFLAGS]) +-AC_CHECK_LIB([guile], [scm_num2dbl], [AC_DEFINE([HAVE_SCM_NUM2DBL], [1], [Define to 1 if you have the `scm_num2dbl' function.])], [], [$GUILE_LDFLAGS]) ++AC_CHECK_LIB([guile-2.0], [scm_c_define_gsubr], [AC_DEFINE([HAVE_SCM_C_DEFINE_GSUBR], [1], [Define to 1 if you have the `scm_c_define_gsubr' function.])], [], [$GUILE_LDFLAGS]) ++AC_CHECK_LIB([guile-2.0], [scm_make_gsubr], [AC_DEFINE([HAVE_SCM_MAKE_GSUBR], [1], [Define to 1 if you have the `scm_make_gsubr' function.])], [], [$GUILE_LDFLAGS]) ++AC_CHECK_LIB([guile-2.0], [scm_num2dbl], [AC_DEFINE([HAVE_SCM_NUM2DBL], [1], [Define to 1 if you have the `scm_num2dbl' function.])], [], [$GUILE_LDFLAGS]) + + AC_CONFIG_FILES([Makefile doc/Makefile lib/Makefile]) + AC_OUTPUT(libmatheval.pc) +--- libmatheval-1.1.11+dfsg.orig/tests/basics.at ++++ libmatheval-1.1.11+dfsg/tests/basics.at +@@ -62,7 +62,7 @@ AT_DATA([basics.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh basics.scm], [ignore], [10.0], [ignore]) ++AT_CHECK([matheval.sh basics.scm], [ignore], [10.000000000000002], [ignore]) + + AT_DATA([basics.scm], + [[ +@@ -70,7 +70,7 @@ AT_DATA([basics.scm], + (display (evaluator-evaluate-x f 0.7)) + ]]) + +-AT_CHECK([matheval.sh basics.scm], [ignore], [0.220966666722528], [ignore]) ++AT_CHECK([matheval.sh basics.scm], [ignore], [0.22096666672252796], [ignore]) + + AT_DATA([basics.scm], + [[ +@@ -78,7 +78,7 @@ AT_DATA([basics.scm], + (display (evaluator-evaluate-x-y f 0.4 -0.7)) + ]]) + +-AT_CHECK([matheval.sh basics.scm], [ignore], [-1.14962406520749], [ignore]) ++AT_CHECK([matheval.sh basics.scm], [ignore], [-1.1496240652074883], [ignore]) + + AT_DATA([basics.scm], + [[ +@@ -86,7 +86,7 @@ AT_DATA([basics.scm], + (display (evaluator-evaluate-x-y-z f 11.2 0.41 -0.66)) + ]]) + +-AT_CHECK([matheval.sh basics.scm], [ignore], [3.99876152571934], [ignore]) ++AT_CHECK([matheval.sh basics.scm], [ignore], [3.9987615257193383], [ignore]) + + AT_DATA([basics.scm], + [[ +--- libmatheval-1.1.11+dfsg.orig/tests/constants.at ++++ libmatheval-1.1.11+dfsg/tests/constants.at +@@ -29,7 +29,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [2.71828182845905], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [2.718281828459045], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -37,7 +37,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [1.44269504088896], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [1.4426950408889634], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -45,7 +45,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.434294481903252], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.4342944819032518], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -53,7 +53,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.693147180559945], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.6931471805599453], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -61,7 +61,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [2.30258509299405], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [2.302585092994046], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -69,7 +69,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [3.14159265358979], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [3.141592653589793], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -77,7 +77,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [1.5707963267949], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [1.5707963267948966], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -85,7 +85,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.785398163397448], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.7853981633974483], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -93,7 +93,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.318309886183791], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.3183098861837907], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -101,7 +101,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.636619772367581], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.6366197723675814], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -109,7 +109,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [1.12837916709551], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [1.1283791670955126], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -117,7 +117,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [1.4142135623731], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [1.4142135623730951], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -125,7 +125,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [0.707106781186548], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [0.7071067811865476], [ignore]) + + AT_DATA([constant.scm], + [[ +@@ -133,7 +133,7 @@ AT_DATA([constant.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh constant.scm], [ignore], [10.0], [ignore]) ++AT_CHECK([matheval.sh constant.scm], [ignore], [10.000000000000002], [ignore]) + + AT_DATA([constant.scm], + [[ +--- libmatheval-1.1.11+dfsg.orig/tests/functions.at ++++ libmatheval-1.1.11+dfsg/tests/functions.at +@@ -29,7 +29,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [2.71828182845905], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [2.718281828459045], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -80,7 +80,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.841470984807897], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.8414709848078965], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -97,7 +97,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.54030230586814], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.5403023058681398], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -114,7 +114,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.5574077246549], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.5574077246549023], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -131,7 +131,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.642092615934331], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.6420926159343306], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -148,7 +148,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.85081571768093], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.8508157176809255], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -165,7 +165,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.18839510577812], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.1883951057781212], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -182,7 +182,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.5707963267949], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.5707963267948966], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -216,7 +216,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.785398163397448], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.7853981633974483], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -233,7 +233,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.785398163397448], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.7853981633974483], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -267,7 +267,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.5707963267949], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.5707963267948966], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -284,7 +284,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.1752011936438], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.1752011936438014], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -301,7 +301,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.54308063481524], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.5430806348152437], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -318,7 +318,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.761594155955765], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.7615941559557649], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -335,7 +335,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [1.31303528549933], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [1.3130352854993315], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -352,7 +352,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.648054273663885], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.6480542736638855], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -368,7 +368,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.850918128239322], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.8509181282393216], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -385,7 +385,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.881373587019543], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.8813735870195429], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -419,7 +419,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 0.5)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.549306144334055], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.5493061443340549], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -436,7 +436,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 2)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.549306144334055], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.5493061443340549], [ignore]) + + AT_DATA([function.scm], + [[ +@@ -470,7 +470,7 @@ AT_DATA([function.scm], + (display (evaluator-evaluate-x f 1)) + ]]) + +-AT_CHECK([matheval.sh function.scm], [ignore], [0.881373587019543], [ignore]) ++AT_CHECK([matheval.sh function.scm], [ignore], [0.8813735870195429], [ignore]) + + AT_DATA([function.scm], + [[ +--- libmatheval-1.1.11+dfsg.orig/tests/numbers.at ++++ libmatheval-1.1.11+dfsg/tests/numbers.at +@@ -53,6 +53,6 @@ AT_DATA([number.scm], + (display (evaluator-evaluate-x f 0)) + ]]) + +-AT_CHECK([matheval.sh number.scm], [ignore], [0.644394014977254], [ignore]) ++AT_CHECK([matheval.sh number.scm], [ignore], [0.6443940149772542], [ignore]) + + AT_CLEANUP diff --git a/easybuild/easyconfigs/l/libmatheval/libmatheval-1.1.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libmatheval/libmatheval-1.1.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b8bf07966b1 --- /dev/null +++ b/easybuild/easyconfigs/l/libmatheval/libmatheval-1.1.11-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'libmatheval' +version = '1.1.11' # still the latest version available on the ftp mirror + +homepage = 'https://www.gnu.org/software/libmatheval/' +description = """GNU libmatheval is a library (callable from C and Fortran) to parse + and evaluate symbolic expressions input as text. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '003-guile2.0.patch', + 'libmatheval-1.1.11_fix-matheval-test.patch' +] +checksums = [ + {'libmatheval-1.1.11.tar.gz': '474852d6715ddc3b6969e28de5e1a5fbaff9e8ece6aebb9dc1cc63e9e88e89ab'}, + {'003-guile2.0.patch': 'd0ad39d54800153cbaa26c01448f040d405f09e9fd57e1357eab170a274a9b5c'}, + {'libmatheval-1.1.11_fix-matheval-test.patch': '2888ee1ba32bb864b655e53e13b06eafc23b598faed80b90585d41c98e2ae073'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('byacc', '2.0.20240109'), + # guile 2.2.X, 3.0.7 removed scm_num2dbl (among others), which are needed for libmatheval (at least for 1.1.11) + ('Guile', '2.0.14') +] + +configopts = '--with-pic ' + +# fix for guile-config being broken because shebang line contains full path to bin/guile +configopts += 'GUILE_CONFIG="$EBROOTGUILE/bin/guile -e main -s $EBROOTGUILE/bin/guile-config"' + +sanity_check_paths = { + 'files': ['lib/libmatheval.a', 'include/matheval.h'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb new file mode 100644 index 00000000000..e0e689460f9 --- /dev/null +++ b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2022a.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'libmbd' +version = '0.12.6' + +homepage = 'https://libmbd.github.io/index.html' +description = """ +Libmbd implements the many-body dispersion (MBD) method in several programming languages and frameworks: + + - The Fortran implementation is the reference, most advanced implementation, with support for analytical + gradients and distributed parallelism, and additional functionality beyond the MBD method itself. + It provides a low-level and a high-level Fortran API, as well as a C API. Furthermore, Python bindings + to the C API are provided. + - The Python/Numpy implementation is intended for prototyping, and as a high-level language reference. + - The Python/Tensorflow implementation is an experiment that should enable rapid prototyping of machine + learning applications with MBD. + +The Python-based implementations as well as Python bindings to the Libmbd C API are accessible from the +Python package called Pymbd. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'libmbd' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['9f8154b6b2f57e78a8e33d3b315a244185e8e5ecb03661a469808af7512e761e'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('ELSI', '2.9.1', '-PEXSI'), +] + +# build scripts expect either a git repo or a defined version string in a file +_versiontag_file = '%(builddir)s/%(name)s-%(version)s/cmake/LibmbdVersionTag.cmake' +preconfigopts = "echo 'set(VERSION_TAG \"%%(version)s\")' > %s && " % _versiontag_file + +configopts = "-DENABLE_SCALAPACK_MPI=ON -DENABLE_ELSI=ON " +configopts += "-DMPIEXEC_MAX_NUMPROCS=1 " # number of procs in the tests + +# make sure that built libraries (libmbd.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': ['lib/libmbd.%s' % SHLIB_EXT, 'include/mbd/mbd.h', 'include/mbd/mbd.mod'], + 'dirs': ['lib/cmake/mbd'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb new file mode 100644 index 00000000000..260ecb98ddb --- /dev/null +++ b/easybuild/easyconfigs/l/libmbd/libmbd-0.12.6-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'libmbd' +version = '0.12.6' + +homepage = 'https://libmbd.github.io/index.html' +description = """ +Libmbd implements the many-body dispersion (MBD) method in several programming languages and frameworks: + + - The Fortran implementation is the reference, most advanced implementation, with support for analytical + gradients and distributed parallelism, and additional functionality beyond the MBD method itself. + It provides a low-level and a high-level Fortran API, as well as a C API. Furthermore, Python bindings + to the C API are provided. + - The Python/Numpy implementation is intended for prototyping, and as a high-level language reference. + - The Python/Tensorflow implementation is an experiment that should enable rapid prototyping of machine + learning applications with MBD. + +The Python-based implementations as well as Python bindings to the Libmbd C API are accessible from the +Python package called Pymbd. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'libmbd' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['9f8154b6b2f57e78a8e33d3b315a244185e8e5ecb03661a469808af7512e761e'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ELSI', '2.11.0', '-PEXSI'), +] + +# build scripts expect either a git repo or a defined version string in a file +_versiontag_file = '%(builddir)s/%(name)s-%(version)s/cmake/LibmbdVersionTag.cmake' +preconfigopts = "echo 'set(VERSION_TAG \"%%(version)s\")' > %s && " % _versiontag_file + +configopts = "-DENABLE_SCALAPACK_MPI=ON -DENABLE_ELSI=ON " +configopts += "-DMPIEXEC_MAX_NUMPROCS=1 " # number of procs in the tests + +# make sure that built libraries (libmbd.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': ['lib/libmbd.%s' % SHLIB_EXT, 'include/mbd/mbd.h', 'include/mbd/mbd.mod'], + 'dirs': ['lib/cmake/mbd'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..818f1687a15 --- /dev/null +++ b/easybuild/easyconfigs/l/libnsl/libnsl-2.0.1-GCCcore-13.3.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.3.0'} + +source_urls = ['https://github.com/thkukuk/%(name)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['5c9e470b232a7acd3433491ac5221b4832f0c71318618dc6aa04dd05ffcd8fd9'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('libtirpc', '1.3.5'), +] + +# 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/libogg/libogg-1.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libogg/libogg-1.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..810ddbe1169 --- /dev/null +++ b/easybuild/easyconfigs/l/libogg/libogg-1.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'libogg' +version = '1.3.5' + +homepage = 'https://xiph.org/ogg/' +description = """Ogg is a multimedia container format, and the native file and stream format for the Xiph.org +multimedia codecs.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.osuosl.org/pub/xiph/releases/ogg/'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705'] + +builddependencies = [('binutils', '2.42')] + +configopts = '--enable-static --enable-shared' + +sanity_check_paths = { + 'files': ['lib/libogg.a', 'lib/libogg.%s' % SHLIB_EXT], + 'dirs': ['include/ogg'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libopus/libopus-1.5.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libopus/libopus-1.5.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..c09615c86f8 --- /dev/null +++ b/easybuild/easyconfigs/l/libopus/libopus-1.5.2-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'libopus' +version = '1.5.2' + +homepage = 'https://www.opus-codec.org/' +description = """Opus is a totally open, royalty-free, highly versatile audio codec. Opus is unmatched for interactive + speech and music transmission over the Internet, but is also intended for storage and streaming applications. It is + standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which incorporated technology from Skype’s + SILK codec and Xiph.Org’s CELT codec.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://downloads.xiph.org/releases/opus/'] +sources = ['opus-%(version)s.tar.gz'] +checksums = ['65c1d2f78b9f2fb20082c38cbe47c951ad5839345876e46941612ee87f9a7ce1'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +configopts = '--enable-static --enable-shared' + +sanity_check_paths = { + 'files': ['lib/libopus.a', 'lib/libopus.%s' % SHLIB_EXT], + 'dirs': ['include/opus'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb b/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb index 444e2ba800d..c26fed6c2e3 100644 --- a/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb +++ b/easybuild/easyconfigs/l/librosa/librosa-0.10.1-foss-2023a.eb @@ -27,7 +27,6 @@ use_pip = True exts_list = [ ('soxr', '0.3.7', { - 'preinstallopts': 'python -m build && ', 'checksums': ['436ddff00c6eb2c75b79c19cfdca7527b1e31b5fad738652f044045ba6258593'], }), ('audioread', '3.0.1', { 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/libsndfile/libsndfile-1.2.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libsndfile/libsndfile-1.2.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e60ad09d1a1 --- /dev/null +++ b/easybuild/easyconfigs/l/libsndfile/libsndfile-1.2.2-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'libsndfile' +version = '1.2.2' + +homepage = 'http://www.mega-nerd.com/libsndfile' +description = """Libsndfile is a C library for reading and writing files containing sampled sound + (such as MS Windows WAV and the Apple/SGI AIFF format) through one standard library interface.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['3799ca9924d3125038880367bf1468e53a1b7e3686a934f098b7e1d286cdb80e'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('CMake', '3.29.3'), +] +dependencies = [ + ('FLAC', '1.4.3'), + ('libvorbis', '1.3.7'), + ('libopus', '1.5.2'), + ('LAME', '3.100'), +] + +configopts = [ + '', + '-DBUILD_SHARED_LIBS=ON', +] + + +sanity_check_paths = { + 'files': ['include/sndfile.h', 'include/sndfile.hh', 'lib/%(name)s.a', 'lib/%(name)s.so'], + 'dirs': ['bin'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libsodium/libsodium-1.0.20-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libsodium/libsodium-1.0.20-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e98d28304a8 --- /dev/null +++ b/easybuild/easyconfigs/l/libsodium/libsodium-1.0.20-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'libsodium' +version = '1.0.20' + +homepage = 'https://doc.libsodium.org/' +description = """ + Sodium is a modern, easy-to-use software library for encryption, decryption, + signatures, password hashing and more. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://download.%(name)s.org/%(name)s/releases/', + 'https://download.%(name)s.org/%(name)s/releases/old/', + 'https://download.%(name)s.org/%(name)s/releases/old/unsupported/', +] +sources = [SOURCE_TAR_GZ] +checksums = ['ebb65ef6ca439333c2bb41a0c1990587288da07f6c7fd07cb3a18cc18d30ce19'] + +builddependencies = [ + ('binutils', '2.42'), +] + + +sanity_check_paths = { + 'files': ['include/sodium.h', 'lib/%%(name)s.%s' % SHLIB_EXT, 'lib/%(name)s.a'], + 'dirs': ['include/sodium', 'lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libspatialindex/libspatialindex-2.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libspatialindex/libspatialindex-2.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1752b337b05 --- /dev/null +++ b/easybuild/easyconfigs/l/libspatialindex/libspatialindex-2.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'CMakeMake' + +name = 'libspatialindex' +version = '2.0.0' + +homepage = 'https://libspatialindex.org' +description = "C++ implementation of R*-tree, an MVR-tree and a TPR-tree with C API" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/%(version)s/'] +sources = ['spatialindex-src-%(version)s.tar.gz'] +checksums = ['f1d5a369681fa6ac3301a54db412ccf3180fc17163ebc3252f32c752f77345de'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['lib/%s.%s' % (name, SHLIB_EXT)], + 'dirs': ['include/spatialindex'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a9fc2a5d749 --- /dev/null +++ b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'libtirpc' +version = '1.3.5' + +homepage = 'https://sourceforge.net/projects/libtirpc/' +description = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_BZ2] +checksums = ['9b31370e5a38d3391bf37edfa22498e28fe2142467ae6be7a17c9068ec0bf12f'] + +configopts = '--enable-static --enable-shared --disable-gssapi' + +builddependencies = [ + ('binutils', '2.42') +] + +sanity_check_paths = { + 'files': ['lib/libtirpc.%s' % (x,) for x in ['a', SHLIB_EXT]], + 'dirs': ['include/tirpc', 'lib'], +} + +modextrapaths = {'CPATH': 'include/tirpc'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.3.2-foss-2018b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.3.2-foss-2018b.eb index df2d4d407fe..411ee1867d8 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.3.2-foss-2018b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.3.2-foss-2018b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.3.2' -homepage = 'http://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-2019a.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019a.eb index 99914532433..b750b9a414f 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019a.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'libvdwxc' version = '0.4.0' -homepage = 'http://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-2019b.eb b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019b.eb index c9f93a8ff91..a04a99002a9 100644 --- a/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019b.eb +++ b/easybuild/easyconfigs/l/libvdwxc/libvdwxc-0.4.0-foss-2019b.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-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/libvips/libvips-8.15.2-GCC-12.3.0.eb b/easybuild/easyconfigs/l/libvips/libvips-8.15.2-GCC-12.3.0.eb new file mode 100644 index 00000000000..088bc0e8299 --- /dev/null +++ b/easybuild/easyconfigs/l/libvips/libvips-8.15.2-GCC-12.3.0.eb @@ -0,0 +1,49 @@ +easyblock = 'MesonNinja' + +name = 'libvips' +version = '8.15.2' + +homepage = 'https://github.com/libvips/libvips' +description = 'libvips is a demand-driven, horizontally threaded image processing library.' + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'libvips' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['8c3ece7be367636fd676573a8ff22170c07e95e81fd94f2d1eb9966800522e1f'] + +builddependencies = [ + ('Meson', '1.1.1'), + ('Ninja', '1.11.1'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('GLib', '2.77.1'), + ('expat', '2.5.0'), + ('libjpeg-turbo', '2.1.5.1'), + ('FFTW', '3.3.10'), + ('libarchive', '3.6.2'), + ('libpng', '1.6.39'), + ('ImageMagick', '7.1.1-15'), + ('Highway', '1.0.4'), + ('MATIO', '1.5.26'), + ('libwebp', '1.3.1'), + ('CFITSIO', '4.3.0'), + ('OpenEXR', '3.1.7'), + ('OpenJPEG', '2.5.0'), + ('OpenSlide', '3.4.1', '-largefiles', ('GCCcore', '12.3.0')), +] + +runtest = 'meson test' +testopts = '' + +sanity_check_paths = { + 'files': ['bin/vips', 'include/vips/vips.h'], + 'dirs': ['share'], +} + +sanity_check_commands = ['vips --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libvorbis/libvorbis-1.3.7-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libvorbis/libvorbis-1.3.7-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..7e32c5c3a99 --- /dev/null +++ b/easybuild/easyconfigs/l/libvorbis/libvorbis-1.3.7-GCCcore-13.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'libvorbis' +version = '1.3.7' + +homepage = 'https://xiph.org/vorbis/' +description = """Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed +audio format""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://ftp.osuosl.org/pub/xiph/releases/vorbis/'] +sources = [SOURCE_TAR_XZ] +checksums = ['b33cc4934322bcbf6efcbacf49e3ca01aadbea4114ec9589d1b1e9d20f72954b'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [('libogg', '1.3.5')] + +configopts = '--enable-static --enable-shared' + +sanity_check_paths = { + 'files': ['lib/libvorbis.a', 'lib/libvorbis.%s' % SHLIB_EXT], + 'dirs': ['include/vorbis'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libwebp/libwebp-1.4.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libwebp/libwebp-1.4.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..70084689c61 --- /dev/null +++ b/easybuild/easyconfigs/l/libwebp/libwebp-1.4.0-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'libwebp' +version = '1.4.0' + +homepage = 'https://developers.google.com/speed/webp/' +description = """WebP is a modern image format that provides superior +lossless and lossy compression for images on the web. Using WebP, +webmasters and web developers can create smaller, richer images that +make the web faster.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://storage.googleapis.com/downloads.webmproject.org/releases/webp'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['61f873ec69e3be1b99535634340d5bde750b2e4447caa1db9f61be3fd49ab1e5'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), + ('giflib', '5.2.1'), +] + +configopts = '--enable-libwebpmux' + +local_headers, local_libs = ( + ['decode.h', 'demux.h', 'encode.h', 'mux.h', 'mux_types.h', 'types.h'], + ['webp', 'webpdemux', 'webpmux'] +) + +sanity_check_paths = { + 'files': ( + ['include/webp/%s' % h for h in local_headers] + + ['lib/lib%s.a' % s for s in local_libs] + + ['lib/lib%s.%s' % (s, SHLIB_EXT) for s in local_libs] + ), + 'dirs': ['lib/'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb new file mode 100644 index 00000000000..709703f2949 --- /dev/null +++ b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb @@ -0,0 +1,53 @@ +easyblock = 'CMakeMake' + +name = 'libxc' +version = '6.2.2' +versionsuffix = '-nofhc' + +homepage = 'https://libxc.gitlab.io' +description = """Libxc is a library of exchange-correlation functionals for density-functional theory. + The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://gitlab.com/libxc/libxc/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = [('a0f6f1bba7ba5c0c85b2bfe65aca1591025f509a7f11471b4cd651a79491b045', + '3b0523924579cf494cafc6fea92945257f35692b004217d3dfd3ea7ca780e8dc')] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Perl', '5.38.0'), +] + +local_common_configopts = "-DENABLE_FORTRAN=ON -DENABLE_XHOST=OFF " + +# don't disable building of third and fourth derivates, since it's required by some software that depends on libxc +# (like ABINIT, which requires "3rd derivatives of energy") +# see also https://github.com/pyscf/pyscf/issues/1103 +local_common_configopts += "-DDISABLE_KXC=OFF -DDISABLE_LXC=OFF" + +# Disable fhc, this needs to support codes (like VASP) relying on the projector augmented wave (PAW) approach +local_common_configopts += ' -DDISABLE_FHC=ON' + +# perform iterative build to get both static and shared libraries +configopts = [ + local_common_configopts + ' -DBUILD_SHARED_LIBS=OFF', + local_common_configopts + ' -DBUILD_SHARED_LIBS=ON', +] + +# make sure that built libraries (libxc*.so*) in build directory are picked when running tests +# this is required when RPATH linking is used +pretestopts = "export LD_LIBRARY_PATH=%(builddir)s/easybuild_obj:$LD_LIBRARY_PATH && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/xc-info'] + + ['lib/libxc%s.%s' % (x, y) for x in ['', 'f03', 'f90'] for y in ['a', SHLIB_EXT]], + 'dirs': ['include', 'lib/pkgconfig', 'lib/cmake/Libxc'], +} + +sanity_check_commands = ['xc-info 1'] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/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/libxml2/libxml2-2.13.4-GCCcore-14.2.0.eb b/easybuild/easyconfigs/l/libxml2/libxml2-2.13.4-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..5b194eb5a3b --- /dev/null +++ b/easybuild/easyconfigs/l/libxml2/libxml2-2.13.4-GCCcore-14.2.0.eb @@ -0,0 +1,27 @@ +name = 'libxml2' +version = '2.13.4' + +homepage = 'http://xmlsoft.org/' + +description = """ + Libxml2 is the XML C parser and toolchain developed for the Gnome project + (but usable outside of the Gnome platform). +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://download.gnome.org/sources/libxml2/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['65d042e1c8010243e617efb02afda20b85c2160acdbfbcb5b26b80cec6515650'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('XZ', '5.6.3'), + ('zlib', '1.3.1'), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxslt/libxslt-1.1.42-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.42-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a38c53ef841 --- /dev/null +++ b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.42-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'libxslt' +version = '1.1.42' + +homepage = 'http://xmlsoft.org/' +description = """Libxslt is the XSLT C library developed for the GNOME project + (but usable outside of the Gnome platform).""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://download.gnome.org/sources/libxslt/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['85ca62cac0d41fc77d3f6033da9df6fd73d20ea2fc18b0a3609ffb4110e1baeb'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('libxml2', '2.12.7'), +] + +# Make sure it doesn't pick up OS installed libgcrypt or Python +# enable building static libs +configopts = '--with-crypto=no --with-python=no --enable-static=yes ' + +sanity_check_paths = { + 'files': ['bin/xsltproc', 'include/libxslt/xslt.h', 'lib/%%(name)s.%s' % SHLIB_EXT, 'lib/%(name)s.a', + 'lib/libexslt.%s' % SHLIB_EXT, 'lib/libexslt.a'], + 'dirs': ['include/libxslt', 'include/libexslt'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/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/longread_umi/longread_umi-0.3.2-foss-2023a.eb b/easybuild/easyconfigs/l/longread_umi/longread_umi-0.3.2-foss-2023a.eb new file mode 100644 index 00000000000..03393fb1618 --- /dev/null +++ b/easybuild/easyconfigs/l/longread_umi/longread_umi-0.3.2-foss-2023a.eb @@ -0,0 +1,84 @@ +easyblock = 'Bundle' + +name = 'longread_umi' +version = '0.3.2' + +homepage = 'https://github.com/SorenKarst/longread_umi' +description = "A collection of scripts for processing longread UMI data." +github_account = 'SorenKarst' + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('cutadapt', '4.9'), + ('BCFtools', '1.18'), + ('BWA', '0.7.17'), + ('Filtlong', '0.2.1'), + ('gawk', '5.3.0'), + ('medaka', '1.11.3'), + ('minimap2', '2.26'), + ('parallel', '20230722'), + ('Pysam', '0.22.0'), + ('Racon', '1.5.0'), + ('SAMtools', '1.18'), + ('seqtk', '1.4'), + ('VSEARCH', '2.25.0'), +] + +components = [ + (name, version, { + 'easyblock': 'Tarball', + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['62b8e156c00c0ec10fa8eae1cde5430922462f167fc537417ce0b47cd50a20cb'], + 'start_dir': '%(name)s-%(version)s', + }), + # PythonPackage executes Bundle-level postinstallcmds for some reason, + # which rely on both components being installed, so Porechop is installed second + ('Porechop', '0.2.4', { + 'easyblock': 'PythonPackage', + 'source_urls': ['https://github.com/rrwick/Porechop/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['44b499157d933be43f702cec198d1d693dcb9276e3c545669be63c2612493299'], + 'start_dir': '%(name)s-%(version)s', + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, + }), +] + +# Adapt the built-in tool check but make it fail on error, replace usearch with vsearch and use our version +local_deps_patch = ( + "sed -i " + "-e '2s;^;set -e ;' " + "-e 's/USEARCH=usearch/USEARCH=vsearch/' " + "-e 's;$(git --git-dir ${LONGREAD_UMI_PATH}/.git describe --tag);%(version)s;' " + "%(installdir)s/scripts/dependencies.sh" +) + +postinstallcmds = [ + 'find %(installdir)s -name "*.sh" -exec chmod +x {} \\;', + 'ln -s %(installdir)s/longread_umi.sh %(installdir)s/bin/longread_umi', + # Part of the installation process; longread uses porechop with custom adapters + 'cp %(installdir)s/scripts/adapters.py %(installdir)s/lib/python%(pyshortver)s/site-packages/porechop/', + local_deps_patch, + # -minsize option not supported by 'vsearch -cluster_fast', and probably not needed + "sed -i 's/-minsize 1//g' %(installdir)s/scripts/umi_binning.sh", +] + +sanity_check_paths = { + 'files': ['bin/longread_umi'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} +sanity_check_commands = [ + 'longread_umi -h | grep qc_pipeline', + 'longread_umi nanopore_pipeline -h | grep rrna_operon', + 'source %(installdir)s/scripts/dependencies.sh && longread_umi_version_dump', +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-12.3.0.eb b/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-12.3.0.eb new file mode 100644 index 00000000000..7681d5bf0a9 --- /dev/null +++ b/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-12.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CmdCp' + +name = 'lpsolve' +version = '5.5.2.11' + +homepage = 'https://sourceforge.net/projects/lpsolve/' +description = "Mixed Integer Linear Programming (MILP) solver" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['lp_solve_%(version)s_source.tar.gz'] +checksums = ['6d4abff5cc6aaa933ae8e6c17a226df0fc0b671c438f69715d41d09fe81f902f'] + +local_lpsolve_ver = '%(version_major)s%(version_minor)s' +start_dir = 'lpsolve%s' % local_lpsolve_ver + +local_comp_cmd = 'sed -i "s/^c=.*/c=\'$CC\'/g" ccc && sed -i "s/^opts=.*/opts=\'$CFLAGS\'/g" ccc && ' +local_comp_cmd += "sh ccc" +cmds_map = [('.*', local_comp_cmd)] + +local_lpsolve_libname = 'liblpsolve%s' % local_lpsolve_ver +files_to_copy = [ + (['bin/ux64/%s.a' % local_lpsolve_libname, 'bin/ux64/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)], 'lib'), + (['../lp*.h'], 'include'), +] + +sanity_check_paths = { + 'files': ['lib/%s.a' % local_lpsolve_libname, 'lib/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)], + 'dirs': ['include'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-13.2.0.eb b/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-13.2.0.eb new file mode 100644 index 00000000000..03ed0716827 --- /dev/null +++ b/easybuild/easyconfigs/l/lpsolve/lpsolve-5.5.2.11-GCC-13.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CmdCp' + +name = 'lpsolve' +version = '5.5.2.11' + +homepage = 'https://sourceforge.net/projects/lpsolve/' +description = "Mixed Integer Linear Programming (MILP) solver" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['lp_solve_%(version)s_source.tar.gz'] +checksums = ['6d4abff5cc6aaa933ae8e6c17a226df0fc0b671c438f69715d41d09fe81f902f'] + +local_lpsolve_ver = '%(version_major)s%(version_minor)s' +start_dir = 'lpsolve%s' % local_lpsolve_ver + +local_comp_cmd = 'sed -i "s/^c=.*/c=\'$CC\'/g" ccc && sed -i "s/^opts=.*/opts=\'$CFLAGS\'/g" ccc && ' +local_comp_cmd += "sh ccc" +cmds_map = [('.*', local_comp_cmd)] + +local_lpsolve_libname = 'liblpsolve%s' % local_lpsolve_ver +files_to_copy = [ + (['bin/ux64/%s.a' % local_lpsolve_libname, 'bin/ux64/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)], 'lib'), + (['../lp*.h'], 'include'), +] + +sanity_check_paths = { + 'files': ['lib/%s.a' % local_lpsolve_libname, 'lib/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)], + 'dirs': ['include'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/lrcalc/lrcalc-2.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/lrcalc/lrcalc-2.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..aa14572bef6 --- /dev/null +++ b/easybuild/easyconfigs/l/lrcalc/lrcalc-2.1-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'lrcalc' +version = '2.1' + +homepage = 'https://sites.math.rutgers.edu/~asbuch/lrcalc/' +description = """The Littlewood-Richardson Calculator is a program + designed to compute Littlewood-Richardson coefficients.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://math.rutgers.edu/~asbuch/lrcalc/'] +sources = [SOURCE_TAR_GZ] +checksums = ['996ac00e6ea8321ef09b34478f5379f613933c3254aeba624b6419b8afa5df57'] + +builddependencies = [ + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': [ + 'bin/lrcalc', + 'lib/liblrcalc.%s' % SHLIB_EXT, + 'include/lrcalc/ivector.h', + ], + 'dirs': [] +} + +sanity_check_commands = ["lrcalc 2>&1 | grep '^Usage:'"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/lwgrp/lwgrp-1.0.6-gompi-2024a.eb b/easybuild/easyconfigs/l/lwgrp/lwgrp-1.0.6-gompi-2024a.eb new file mode 100644 index 00000000000..c36ee58b273 --- /dev/null +++ b/easybuild/easyconfigs/l/lwgrp/lwgrp-1.0.6-gompi-2024a.eb @@ -0,0 +1,36 @@ +# +# Author: Robert Mijakovic +# +easyblock = 'ConfigureMake' + +name = 'lwgrp' +version = '1.0.6' + +homepage = 'https://github.com/LLNL/lwgrp' +description = """The light-weight group library defines data structures and collective operations to +group MPI processes as an ordered set. Such groups are useful as substitutes for MPI communicators +when the overhead of communicator creation is too costly. For example, certain sorting algorithms +recursively divide processes into subgroups as the sort algorithm progresses. These groups may be +different with each invocation, so that it is inefficient to create and destroy communicators during +the sort routine.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +github_account = 'LLNL' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['108e622441028b7f88223244c9117d5de18a91fd7c246bfa48802b5c585557d0'] + +builddependencies = [ + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] + +preconfigopts = './autogen.sh && ' + +sanity_check_paths = { + 'files': ['include/%(name)s.h', 'lib/lib%%(name)s.%s' % SHLIB_EXT], + 'dirs': ['share/%(name)s'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/lxml/lxml-5.3.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/lxml/lxml-5.3.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..0af2dcbed3f --- /dev/null +++ b/easybuild/easyconfigs/l/lxml/lxml-5.3.0-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'lxml' +version = '5.3.0' + +homepage = 'https://lxml.de/' +description = """The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['4e109ca30d1edec1ac60cdbe341905dc3b8f55b16855e03a54aaf59e51ec8c6f'] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('libxml2', '2.12.7'), + ('libxslt', '1.1.42'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' 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.2-20240813-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.2-20240813-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..dbba96ddf2f --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.2-20240813-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,58 @@ +easyblock = 'PythonBundle' + +name = 'MATES' +version = '0.1.2-20240813' +local_commit = 'd5ee15b' +versionsuffix = '-CUDA-%(cudaver)s' + +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': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('CUDA', '12.1.1', '', SYSTEM), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('anndata', '0.10.5.post1'), + ('SAMtools', '1.18'), + ('pybedtools', '0.9.1'), + ('PyTorch-bundle', '2.1.2', versionsuffix), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + (name, version, { + 'modulename': 'MATES', + # unpin exact versions of dependencies + 'preinstallopts': r"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': ['aca36b2b99ebed975fdf61670a9b551c1ab7882ff2b9d4ed3f25f2e13805652c'], + }), +] + +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.2-20240813-foss-2023a.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.2-20240813-foss-2023a.eb new file mode 100644 index 00000000000..e7e73a89e80 --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.2-20240813-foss-2023a.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'MATES' +version = '0.1.2-20240813' +local_commit = 'd5ee15b' + +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': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('anndata', '0.10.5.post1'), + ('SAMtools', '1.18'), + ('pybedtools', '0.9.1'), + ('PyTorch-bundle', '2.1.2'), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + (name, version, { + 'modulename': 'MATES', + # unpin exact versions of dependencies + 'preinstallopts': r"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': ['aca36b2b99ebed975fdf61670a9b551c1ab7882ff2b9d4ed3f25f2e13805652c'], + }), +] + +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-20241121-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb new file mode 100644 index 00000000000..2c87d3d09bf --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb @@ -0,0 +1,53 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/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-R2022b.10.eb b/easybuild/easyconfigs/m/MCR/MCR-R2022b.10.eb new file mode 100644 index 00000000000..43dcfb25294 --- /dev/null +++ b/easybuild/easyconfigs/m/MCR/MCR-R2022b.10.eb @@ -0,0 +1,18 @@ +name = 'MCR' +version = 'R2022b' # runtime version 9.13 +local_update = '10' +versionsuffix = '.%s' % local_update + +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_Update_%s_glnxa64.zip' % local_update] +checksums = ['5bcee3f2be7a4ccb6ed0b7d8938eca7b33e4a0d81ec5351d6eb06150a89245eb'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MCR/MCR-R2023b.9.eb b/easybuild/easyconfigs/m/MCR/MCR-R2023b.9.eb new file mode 100644 index 00000000000..b6832290ecb --- /dev/null +++ b/easybuild/easyconfigs/m/MCR/MCR-R2023b.9.eb @@ -0,0 +1,18 @@ +name = 'MCR' +version = 'R2023b' # runtime version 23.2 +local_update = '9' +versionsuffix = '.%s' % local_update + +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_Update_%s_glnxa64.zip' % local_update] +checksums = ['ef69a624806aa3864d692a88a67d969e3b641ae296b4a091969185ef056f13bd'] + +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/MDI/MDI-1.4.29-gompi-2023b.eb b/easybuild/easyconfigs/m/MDI/MDI-1.4.29-gompi-2023b.eb new file mode 100644 index 00000000000..0ff18b44f79 --- /dev/null +++ b/easybuild/easyconfigs/m/MDI/MDI-1.4.29-gompi-2023b.eb @@ -0,0 +1,54 @@ +# MDI package for LAMMPS +# Author: J. Saßmannshausen (Imperial College London) + +easyblock = 'CMakeMake' +name = 'MDI' +version = '1.4.29' + +homepage = 'https://github.com/MolSSI-MDI/MDI_Library' +description = """The MolSSI Driver Interface (MDI) project provides a +standardized API for fast, on-the-fly communication between computational +chemistry codes. This greatly simplifies the process of implementing +methods that require the cooperation of multiple software packages and +enables developers to write a single implementation that works across +many different codes. The API is sufficiently general to support a wide +variety of techniques, including QM/MM, ab initio MD, machine learning, +advanced sampling, and path integral MD, while also being straightforwardly +extensible. Communication between codes is handled by the MDI Library, which +enables tight coupling between codes using either the MPI or TCP/IP methods. +""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +source_urls = ['https://github.com/MolSSI-MDI/MDI_Library/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['6fb9ab2cf01c1a88a183bb481313f3131f0afd041ddea7aeacabe857fbdcb6ad'] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +# perform iterative build to get both static and shared libraries +local_common_configopts = '-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DPython_EXECUTABLE=$EBROOTPYTHON/bin/python ' +configopts = [ + local_common_configopts + ' -Dlibtype=STATIC', + local_common_configopts + ' -DBUILD_SHARED_LIBS=ON', +] + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/mdi', + 'LIBRARY_PATH': 'lib/mdi', +} + +sanity_check_paths = { + 'files': ['lib/mdi/libmdi.a', 'lib/mdi/libmdi.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +bin_lib_subdirs = ['lib/mdi'] + +moduleclass = 'chem' 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/METIS/METIS-5.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..417e4750ef9 --- /dev/null +++ b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +name = 'METIS' +version = '5.1.0' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/metis/overview' + +description = """ + METIS is a set of serial programs for partitioning graphs, partitioning + finite element meshes, and producing fill reducing orderings for sparse + matrices. The algorithms implemented in METIS are based on the multilevel + recursive-bisection, multilevel k-way, and multi-constraint partitioning + schemes. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD', +] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s-use-doubles.patch'] +checksums = [ + {'metis-5.1.0.tar.gz': '76faebe03f6c963127dbb73c13eab58c9a3faeae48779f049066a21c087c5db2'}, + {'METIS-5.1.0-use-doubles.patch': '7e38a3ec8f2b8e3d189239bade5b28c0dd1c564485050109164fa71a6a767c67'}, +] + +# We use 32bit for indices and 64bit for content +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +configopts = ['', 'shared=1'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb b/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb new file mode 100644 index 00000000000..5b4aedbdadb --- /dev/null +++ b/easybuild/easyconfigs/m/MOKIT/MOKIT-1.2.6_20240830-gfbf-2023a.eb @@ -0,0 +1,64 @@ +easyblock = 'Bundle' + +name = 'MOKIT' +version = '1.2.6_20240830' +_commit = 'd66560a6a7926e5e21b45cbcc9213aaa26bd997d' + +homepage = 'https://github.com/1234zou/MOKIT' +description = """ +MOKIT offers various utilities and modules to transfer MOs among various quantum chemistry software packages.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} +toolchainopts = {'openmp': True} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +_makefile = 'Makefile.gnu_openblas_conda' +maxparallel = 1 + +default_component_specs = { + 'source_urls': ['https://github.com/1234zou/MOKIT/archive'], + 'checksums': ['b4e7224ac5b56e6d0116f7759a3017c57d527b1d35c32e3b2733904f7f7c4de5'], + 'sources': [{ + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }], +} + +components = [ + (name, version, { + 'easyblock': 'MakeCp', + 'start_dir': 'MOKIT-%s/src' % _commit, + 'prebuildopts': 'sed -i -e "s/^MKL_FLAGS.*/MKL_FLAGS = $LIBBLAS/" %s && ' % _makefile, + 'buildopts': 'all -f %s' % _makefile, + 'files_to_copy': ['../bin'], + }), + ('mokit', version, { + 'easyblock': 'PythonPackage', + 'start_dir': 'MOKIT-%s' % _commit, + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'options': {'modulename': 'mokit'}, + }), +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = [ + 'fch2inp | grep Example', + 'geom_opt | grep Example', + "python -s -c 'from mokit.lib.gaussian import load_mol_from_fch'", +] + +sanity_check_paths = { + 'files': ['bin/geom_opt', 'bin/fch2inp'], + 'dirs': ['lib/python3.11/site-packages/mokit'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/MOLGW/MOLGW-3.3-foss-2023a.eb b/easybuild/easyconfigs/m/MOLGW/MOLGW-3.3-foss-2023a.eb new file mode 100644 index 00000000000..9a4730345d8 --- /dev/null +++ b/easybuild/easyconfigs/m/MOLGW/MOLGW-3.3-foss-2023a.eb @@ -0,0 +1,73 @@ +easyblock = 'MakeCp' + +name = 'MOLGW' +version = '3.3' + +homepage = 'https://www.molgw.org' +description = """MOLGW is a code that implements the many-body perturbation theory (MBPT) to +describe the excited electronic states in finite systems (atoms, molecules, +clusters). It most importantly implements the approximation for the self-energy +and the Bethe-Salpeter equation for the optical excitations. + +MOLGW comes with a fully functional density-functional theory (DFT) code to +prepare the subsequent MBPT runs. Standard local and semi-local approximations +to DFT are available, as well as several hybrid functionals and range-separated +hybrid functionals. MOLGW uses a Gaussian-type orbitals basis set so to reuse +all the standard quantum-chemistry tools.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +github_account = 'molgw' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['ff1c8eb736049e52608d4554a2d435ee9d15e47c4a9934d41712962748929e81'] + +dependencies = [ + ('libxc', '6.2.2'), + ('libcint', '5.4.0', '-pypzpx'), + # Python utilities + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('PyYAML', '6.0'), +] + +_config_arch_params = { + 'FCFLAGS': '-cpp $FFLAGS', + 'CXXFLAGS': '-cpp $CXXFLAGS', + 'LAPACK': '$LIBLAPACK', + 'SCALAPACK': '$LIBSCALAPACK', + 'LIBXC_ROOT': '$EBROOTLIBXC', +} +_config_arch_sed = ';'.join(["s|^%s=.*|%s=%s|" % (k, k, v) for (k, v) in _config_arch_params.items()]) + +prebuildopts = 'cp config/my_machine_gfortran_mpi.arch src/my_machine.arch && ' +prebuildopts += 'sed "%s" -i src/my_machine.arch && ' % _config_arch_sed + +buildopts = 'molgw' + +runtest = 'test' + +files_to_copy = [ + (['molgw'], 'bin'), + (['basis', 'utils'], ''), +] + +fix_python_shebang_for = ['utils/*.py', 'utils/molgw/*.py'] + +postinstallcmds = ["cd %(installdir)s/bin && for pyfile in ../utils/*.py; do ln -s $pyfile; done"] + +sanity_check_paths = { + 'files': ['bin/molgw', 'bin/run_molgw.py'], + 'dirs': ['basis', 'utils'] +} + +sanity_check_commands = ["python -s -c 'import molgw'"] + +modextrapaths = { + 'PYTHONPATH': 'utils', + 'MOLGW_BASIS_PATH': 'basis', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb b/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb new file mode 100644 index 00000000000..2b2b2185ecc --- /dev/null +++ b/easybuild/easyconfigs/m/MPICH/MPICH-4.2.2-GCC-13.3.0.eb @@ -0,0 +1,21 @@ +name = 'MPICH' +version = '4.2.2' + +homepage = 'https://www.mpich.org/' +description = """MPICH is a high-performance and widely portable implementation +of the Message Passing Interface (MPI) standard (MPI-1, MPI-2 and MPI-3).""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://www.mpich.org/static/downloads/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['883f5bb3aeabf627cb8492ca02a03b191d09836bbe0f599d8508351179781d41'] + +dependencies = [ + ('UCX', '1.16.0'), +] + +configopts = 'FFLAGS="-w -fallow-argument-mismatch -O2" --with-devices=ch4:ucx --with-ucx=$EBROOTUCX' + + +moduleclass = 'mpi' 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/Markdown/Markdown-3.7-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/Markdown/Markdown-3.7-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..04b5629d6bf --- /dev/null +++ b/easybuild/easyconfigs/m/Markdown/Markdown-3.7-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'Markdown' +version = '3.7' + +homepage = 'https://python-markdown.github.io/' +description = """This is a Python implementation of John Gruber's Markdown. +It is almost completely compliant with the reference implementation, though there are a few known issues. +Additional features are supported by the Available Extensions. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2ae2471477cfd02dbbf038d5d9bc226d40def84b4fe2986e49b59b6b472bbed2'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/Mercurial/Mercurial-6.8.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/m/Mercurial/Mercurial-6.8.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a733004f29a --- /dev/null +++ b/easybuild/easyconfigs/m/Mercurial/Mercurial-6.8.1-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +# # +# Author: Robert Mijakovic +# # +easyblock = 'PythonPackage' + +name = 'Mercurial' +version = '6.8.1' + +homepage = 'https://www.mercurial-scm.org' +description = """Mercurial is a free, distributed source control management tool. It efficiently handles projects +of any size and offers an easy and intuitive interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.%(namelower)s-scm.org/release/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['030e8a7a6d590e4eaeb403ee25675615cd80d236f3ab8a0b56dcc84181158b05'] + +dependencies = [ + ('binutils', '2.42'), + ('Python', '3.12.3'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +sanity_check_commands = ['hg --help'] + +moduleclass = 'tools' 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/ModelTest-NG/ModelTest-NG-0.2.0-dev_20220721-GCC-12.3.0.eb b/easybuild/easyconfigs/m/ModelTest-NG/ModelTest-NG-0.2.0-dev_20220721-GCC-12.3.0.eb new file mode 100644 index 00000000000..6973ef50246 --- /dev/null +++ b/easybuild/easyconfigs/m/ModelTest-NG/ModelTest-NG-0.2.0-dev_20220721-GCC-12.3.0.eb @@ -0,0 +1,60 @@ +easyblock = 'CMakeMakeCp' + +name = 'ModelTest-NG' +version = '0.2.0-dev_20220721' +_commit = '1066356' + +homepage = 'https://github.com/ddarriba/modeltest' +description = """ +ModelTest-NG is a tool for selecting the best-fit model of evolution for DNA and protein alignments. +ModelTest-NG supersedes jModelTest and ProtTest in one single tool, with graphical and command console interfaces. +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +# use exact commits of pll-modules and libpll-2 as specified in CMakeLists.txt +sources = [ + { + 'source_urls': ['https://github.com/ddarriba/modeltest/archive'], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }, + { + 'source_urls': ['https://github.com/ddarriba/pll-modules/archive'], + 'download_filename': '182ae28.tar.gz', + 'filename': 'pll-modules-182ae28.tar.gz', + 'extract_cmd': "tar -xzf %s -C %(builddir)s/modeltest*/libs/pll-modules/ --strip-components 1", + }, + { + 'source_urls': ['https://github.com/xflouris/libpll-2/archive'], + 'download_filename': 'a3146f3.tar.gz', + 'filename': 'libpll-a3146f3.tar.gz', + 'extract_cmd': "tar -xzf %s -C %(builddir)s/modeltest*/libs/pll-modules/libs/libpll/ --strip-components 1", + }, +] +checksums = [ + {'ModelTest-NG-0.2.0-dev_20220721.tar.gz': '1010630a9e0aff7ec125e2ab3dccd76625b935d535793b2d01b35a3a1e3021ae'}, + {'pll-modules-182ae28.tar.gz': 'd3bd1382e7bd5ef0a8f227bc1d47596bb806342113bb5fb2ad879e536e7873dd'}, + {'libpll-a3146f3.tar.gz': 'd4a36b30074e1f93530cab48744117f1b7e7c9c78ca7665f92624ca6a25f9b85'}, +] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2', '', SYSTEM), +] + +files_to_copy = ['bin'] + +sanity_check_paths = { + 'files': ["bin/modeltest-ng"], + 'dirs': [] +} + +sanity_check_commands = [ + "modeltest-ng --help", + "modeltest-ng -i %(builddir)s/*/example-data/dna/tiny.fas -t ml", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MoloVol/MoloVol-1.1.1-GCC-12.3.0.eb b/easybuild/easyconfigs/m/MoloVol/MoloVol-1.1.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..45fc3443de9 --- /dev/null +++ b/easybuild/easyconfigs/m/MoloVol/MoloVol-1.1.1-GCC-12.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'MoloVol' +version = '1.1.1' + +homepage = 'https://molovol.com/' +description = """ +MoloVol is a free, cross-plattform, scientific software for volume and surface computations of +single molecules and crystallographic unit cells. +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/molovol/MoloVol/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b41ddd9d98156f602700504ec67bb2002c8621eb4a0b43b7d3d60b4a5d0e15bd'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('wxWidgets', '3.2.2.1'), + ('Xvfb', '21.1.8'), +] + +sanity_check_paths = { + 'files': ['bin/molovol'], + 'dirs': [], +} + +sanity_check_commands = ['xvfb-run molovol -h'] + +moduleclass = 'chem' 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..214d5af84bf --- /dev/null +++ b/easybuild/easyconfigs/m/Mustache/Mustache-1.3.3-foss-2023b.eb @@ -0,0 +1,39 @@ +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 && " + +sanity_pip_check = True +use_pip = True +download_dep_fail = True + +options = {'modulename': 'mustache'} + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/m/maeparser/maeparser-1.3.1-gompi-2024a.eb b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.1-gompi-2024a.eb new file mode 100644 index 00000000000..a757e81653a --- /dev/null +++ b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.1-gompi-2024a.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'maeparser' +version = '1.3.1' + +homepage = 'https://github.com/schrodinger/maeparser' +description = "maeparser is a parser for Schrodinger Maestro files." + +toolchain = {'name': 'gompi', 'version': '2024a'} + +source_urls = ['https://github.com/schrodinger/maeparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['a8d80f67d1b9be6e23b9651cb747f4a3200132e7d878a285119c86bf44568e36'] + +builddependencies = [ + ('CMake', '3.29.3'), +] + +dependencies = [('Boost', '1.85.0')] + +sanity_check_paths = { + 'files': ['lib/libmaeparser.%s' % SHLIB_EXT], + 'dirs': ['include/maeparser', 'lib/cmake'], +} + +moduleclass = 'tools' 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/mallard-ducktype/mallard-ducktype-1.0.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/m/mallard-ducktype/mallard-ducktype-1.0.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..65102800699 --- /dev/null +++ b/easybuild/easyconfigs/m/mallard-ducktype/mallard-ducktype-1.0.2-GCCcore-12.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'mallard-ducktype' +version = '1.0.2' + +homepage = 'https://github.com/projectmallard/mallard-ducktype' +description = """Parser for the lightweight Ducktype syntax for Mallard""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = ['mallard_ducktype-%(version)s-py3-none-any.whl'] +checksums = ['90c2d9e40934c634f3e83e0758285e2803f62c2c5db405702af2f5884e1a2918'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), +] + +options = {'modulename': 'mallard.ducktype'} + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb index 4587e8e91df..ff224b45ba2 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-GCC-10.2.0-Python-2.7.18.eb @@ -62,9 +62,7 @@ sanity_check_paths = { 'dirs': ['libexec'], } -sanity_check_commands = [ - 'python %(installdir)s/bin/runMantaWorkflowDemo.py' -] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb index 8e5943d0213..2d6c80a9b71 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2019b-Python-2.7.16.eb @@ -41,7 +41,7 @@ sanity_check_paths = { 'dirs': ['lib/python', 'share'], } -sanity_check_commands = ['runMantaWorkflowDemo.py'] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb index 0b2b3af8477..7633e9131e0 100644 --- a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb @@ -41,7 +41,7 @@ sanity_check_paths = { 'dirs': ['lib/python', 'share'], } -sanity_check_commands = ['runMantaWorkflowDemo.py'] +sanity_check_commands = ['cd "$(mktemp -d)" && runMantaWorkflowDemo.py'] modextrapaths = { 'PATH': 'libexec', diff --git a/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-contourpy-fix-pybind-module.patch b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-contourpy-fix-pybind-module.patch new file mode 100644 index 00000000000..9a34eb1cdae --- /dev/null +++ b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-contourpy-fix-pybind-module.patch @@ -0,0 +1,14 @@ +Fixes: error: macro "PYBIND11_MODULE" passed 3 arguments, but takes just 2 +Author: Anke Kreuzer (JSC) +diff -ruN src/wrap.cpp.orig src/wrap.cpp +--- src/wrap.cpp.orig 2024-09-02 21:07:13.893013182 +0200 ++++ src/wrap.cpp 2024-09-02 21:07:39.973005828 +0200 +@@ -18,7 +18,7 @@ + static contourpy::LineType mpl20xx_line_type = contourpy::LineType::SeparateCode; + static contourpy::FillType mpl20xx_fill_type = contourpy::FillType::OuterCode; + +-PYBIND11_MODULE(_contourpy, m, py::mod_gil_not_used()) { ++PYBIND11_MODULE(_contourpy, m) { + m.doc() = + "C++11 extension module wrapped using `pybind11`_.\n\n" + "It should not be necessary to access classes and functions in this extension module " diff --git a/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-gfbf-2024a.eb b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-gfbf-2024a.eb new file mode 100644 index 00000000000..33ddf00eb93 --- /dev/null +++ b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.9.2-gfbf-2024a.eb @@ -0,0 +1,79 @@ +easyblock = 'PythonBundle' + +name = 'matplotlib' +version = '3.9.2' + +homepage = 'https://matplotlib.org' +description = """matplotlib is a python 2D plotting library which produces publication quality figures in a variety of + hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python + and ipython shell, web application servers, and six graphical user interface toolkits.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('cppy', '1.2.1'), + ('meson-python', '0.16.0'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('libpng', '1.6.43'), + ('freetype', '2.13.2'), + ('Tkinter', '%(pyver)s'), + ('Pillow-SIMD', '10.4.0'), + ('Qhull', '2020.2'), +] + +use_pip = True +sanity_pip_check = True + +_include_path = "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && " + +local_configopts = "--config-settings=setup-args='-Dsystem-qhull=true' && " +local_configopts += " --config-settings=setup-args='-Dsystem-freetype=true' && " +local_configopts += "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && " + +exts_list = [ + ('fonttools', '4.53.1', { + 'modulename': 'fontTools', + 'source_tmpl': '%(name)s-%(version)s.tar.gz', + 'checksums': ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'], + }), + ('Cycler', '0.12.1', { + 'modulename': 'cycler', + 'source_tmpl': 'cycler-%(version)s.tar.gz', + 'checksums': ['88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c'], + }), + ('kiwisolver', '1.4.5', { + 'patches': ['kiwisolver-1.4.4-fix_version.patch'], + 'checksums': [ + {'kiwisolver-1.4.5.tar.gz': 'e57e563a57fb22a142da34f38acc2fc1a5c864bc29ca1517a88abc963e60d6ec'}, + {'kiwisolver-1.4.4-fix_version.patch': '6753afbb3a88856493fcfa0b33989f35742f57bfd41ff3b7f71a98797e1bfbd0'}, + ], + }), + ('contourpy', '1.3.0', { + 'patches': ['matplotlib-3.9.2-contourpy-fix-pybind-module.patch'], + 'checksums': [ + {'contourpy-1.3.0.tar.gz': '7ffa0db17717a8ffb127efd0c95a4362d996b892c2904db72428d5b52e1938a4'}, + {'matplotlib-3.9.2-contourpy-fix-pybind-module.patch': + 'a998438a1048524a550bf3bb607197658b13dce56e8e54169e24ce7c3c022a8f'}, + ], + }), + (name, version, { + 'configopts': "%(local_configopts)s", + 'checksums': ['96ab43906269ca64a6366934106fa01534454a69e471b7bf3d79083981aaab92'], + }), +] + +sanity_check_commands = [ + """python -c 'import matplotlib; matplotlib.use("Agg"); import matplotlib.pyplot' """, + "python -c 'from mpl_toolkits.mplot3d import Axes3D'", +] + +# use non-interactive plotting backend as default +# see https://matplotlib.org/tutorials/introductory/usage.html#what-is-a-backend +modextravars = {'MPLBACKEND': 'Agg'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/m/mcqd/mcqd-1.0.0-GCC-13.2.0.eb b/easybuild/easyconfigs/m/mcqd/mcqd-1.0.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..87f92553548 --- /dev/null +++ b/easybuild/easyconfigs/m/mcqd/mcqd-1.0.0-GCC-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CmdCp' + +name = 'mcqd' +version = '1.0.0' + +homepage = 'https://gitlab.com/janezkonc/mcqd' +description = """MaxCliqueDyn is a fast exact algorithm for finding a maximum clique in an undirected graph.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://gitlab.com/janezkonc/mcqd/-/archive/v%(version)s/'] +sources = ['mcqd-v%(version)s.tar.gz'] +checksums = ['37ff68ff88e047c929990d4c12ce474753f6f9c49324661a3aa1cfe77c26ad9d'] + +cmds_map = [('.*', '$CXX $CXXFLAGS $LDFLAGS mcqd.cpp -o mcqd')] + +files_to_copy = [ + (['mcqd'], 'bin'), + (['mcqd.h'], 'include'), +] + +sanity_check_paths = { + 'files': [ + 'bin/mcqd', + 'include/mcqd.h', + ], + 'dirs': [], +} + +sanity_check_commands = ["command -v mcqd"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..e8ec2b8435d --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'mctc-lib' +version = '0.3.1' + +homepage = 'https://grimme-lab.github.io/mctc-lib' +description = """Common tool chain for working with molecular structure data in various +applications. This library provides a unified way to perform operations on +molecular structure data, like reading and writing to common geometry file +formats.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('json-fortran', '9.0.2'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/mctc-convert', 'lib/libmctc-lib.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mctc-convert --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-13.2.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-13.2.0.eb new file mode 100644 index 00000000000..781662c3dc2 --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-13.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'mctc-lib' +version = '0.3.1' + +homepage = 'https://grimme-lab.github.io/mctc-lib' +description = """Common tool chain for working with molecular structure data in various +applications. This library provides a unified way to perform operations on +molecular structure data, like reading and writing to common geometry file +formats.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +dependencies = [ + ('json-fortran', '9.0.2'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/mctc-convert', 'lib/libmctc-lib.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mctc-convert --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb index 85c733711d1..1be61af126b 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 @@ -57,6 +57,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 dffdad4341f..b38484c3cd8 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 @@ -57,6 +57,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/medaka/medaka-1.12.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/medaka/medaka-1.12.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..c9ac4870bf5 --- /dev/null +++ b/easybuild/easyconfigs/m/medaka/medaka-1.12.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,85 @@ +# This is a contribution from HPCNow! (http://hpcnow.com) +# Copyright:: HPCNow! +# Authors:: Danilo Gonzalez +# License:: GPL-v3.0 +# Updated to foss-2020b to use with artic tool +# J. Sassmannshausen (GSTT/NHS UK) +# Updated to 1.5.0 +# Jasper Grimm (UoY) +# Updated: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'medaka' +version = '1.12.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/medaka' +description = "medaka is a tool to create a consensus sequence from nanopore sequencing data." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +builddependencies = [('Autotools', '20220317')] + +_minimap_ver = '2.26' +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), # includes cffi + ('TensorFlow', '2.15.1', versionsuffix), + ('Pysam', '0.22.0'), + ('SAMtools', '1.18'), + ('minimap2', _minimap_ver), + ('HTSlib', '1.18'), # for tabix, bgzip + ('Racon', '1.5.0'), + ('edlib', '1.3.9'), + ('pyspoa', '0.2.1'), + ('python-parasail', '1.3.4'), + ('ont-fast5-api', '4.1.2'), + ('WhatsHap', '2.2'), + ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.18'), +] + +use_pip = True +sanity_pip_check = True + +local_sed_commands = [ + "sed -i 's/tensorflow.*/tensorflow/g;s/cffi==1.15.0/cffi/g' requirements.txt pyproject.toml", + # Python 3.11 support + "sed -i 's/8, 9, 10/8, 9, 10, 11/g;s/,<3.11//g' setup.py", +] + +exts_list = [ + ('mappy', _minimap_ver, { + 'checksums': ['e53fbe9a3ea8762a64b8103f4f779c9fb16d418eaa0a731f45cebc83867a9b71'], + }), + ('wurlitzer', '3.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0b2749c2cde3ef640bf314a9f94b24d929fe1ca476974719a6909dfc568c3aac'], + }), + ('h5py', '3.10.0', { + 'checksums': ['d93adc48ceeb33347eb24a634fb787efc7ae4644e6ea4ba733d099605045c049'], + }), + ('pyabpoa', '1.5.1', { + 'checksums': ['878f981e890a421d92a0d7606705d0ad9813ae6086239460dfe4b0cfc7476174'], + }), + (name, version, { + 'checksums': ['039219204111a8114b1f72d87d0d3463e43473790cff4520c8afbd79cc8784d6'], + # Some requirements are too strict. + 'preinstallopts': " && ".join(local_sed_commands) + " && ", + }), +] + +sanity_check_paths = { + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3e055e5d8dd --- /dev/null +++ b/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,88 @@ +# This is a contribution from HPCNow! (http://hpcnow.com) +# Copyright:: HPCNow! +# Authors:: Danilo Gonzalez +# License:: GPL-v3.0 +# Updated to foss-2020b to use with artic tool +# J. Sassmannshausen (GSTT/NHS UK) +# Updated to 1.5.0 +# Jasper Grimm (UoY) +# Updated: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'medaka' +version = '1.12.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/medaka' +description = "medaka is a tool to create a consensus sequence from nanopore sequencing data." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +builddependencies = [('Autotools', '20220317')] + +_minimap_ver = '2.26' +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), # includes cffi + ('TensorFlow', '2.15.1', versionsuffix), + ('Pysam', '0.22.0'), + ('SAMtools', '1.18'), + ('minimap2', _minimap_ver), + ('HTSlib', '1.18'), # for tabix, bgzip + ('Racon', '1.5.0'), + ('edlib', '1.3.9'), + ('pyspoa', '0.2.1'), + ('python-parasail', '1.3.4'), + ('ont-fast5-api', '4.1.2'), + ('WhatsHap', '2.2'), + ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.18'), +] + +use_pip = True +sanity_pip_check = True + +local_sed_commands = [ + "sed -i 's/tensorflow.*/tensorflow/g;s/cffi==1.15.0/cffi/g' requirements.txt pyproject.toml", + # Python 3.11 support + "sed -i 's/8, 9, 10/8, 9, 10, 11/g;s/,<3.11//g' setup.py", + # ont-parasail on PyPI is just pre-built wheels for (python-)parasail + "sed -i 's/ont-parasail/parasail/g' requirements.txt", +] + +exts_list = [ + ('mappy', _minimap_ver, { + 'checksums': ['e53fbe9a3ea8762a64b8103f4f779c9fb16d418eaa0a731f45cebc83867a9b71'], + }), + ('wurlitzer', '3.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0b2749c2cde3ef640bf314a9f94b24d929fe1ca476974719a6909dfc568c3aac'], + }), + # medaka 1.12.0 requires h5py ~=3.10.0 + ('h5py', '3.10.0', { + 'checksums': ['d93adc48ceeb33347eb24a634fb787efc7ae4644e6ea4ba733d099605045c049'], + }), + ('pyabpoa', '1.5.2', { + 'checksums': ['be39c83b12e923c9e47073cb8f0abc4c42f609fa2c0ec13d6f6a4f5a0537ee06'], + }), + (name, version, { + 'checksums': ['df4baf7d1e9154de85229aef237919619ff6ae7f7d103abb0828e449ff977adf'], + # Some requirements are too strict. + 'preinstallopts': " && ".join(local_sed_commands) + " && ", + }), +] + +sanity_check_paths = { + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a.eb new file mode 100644 index 00000000000..f95d01c89d9 --- /dev/null +++ b/easybuild/easyconfigs/m/medaka/medaka-1.12.1-foss-2023a.eb @@ -0,0 +1,86 @@ +# This is a contribution from HPCNow! (http://hpcnow.com) +# Copyright:: HPCNow! +# Authors:: Danilo Gonzalez +# License:: GPL-v3.0 +# Updated to foss-2020b to use with artic tool +# J. Sassmannshausen (GSTT/NHS UK) +# Updated to 1.5.0 +# Jasper Grimm (UoY) +# Updated: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'medaka' +version = '1.12.1' + +homepage = 'https://github.com/nanoporetech/medaka' +description = "medaka is a tool to create a consensus sequence from nanopore sequencing data." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +builddependencies = [('Autotools', '20220317')] + +_minimap_ver = '2.26' +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), # includes cffi + ('TensorFlow', '2.13.0'), + ('Pysam', '0.22.0'), + ('SAMtools', '1.18'), + ('minimap2', _minimap_ver), + ('HTSlib', '1.18'), # for tabix, bgzip + ('Racon', '1.5.0'), + ('edlib', '1.3.9'), + ('pyspoa', '0.2.1'), + ('python-parasail', '1.3.4'), + ('ont-fast5-api', '4.1.2'), + ('WhatsHap', '2.2'), + ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.18'), +] + +use_pip = True +sanity_pip_check = True + +local_sed_commands = [ + "sed -i 's/tensorflow.*/tensorflow/g;s/cffi==1.15.0/cffi/g' requirements.txt pyproject.toml", + # Python 3.11 support + "sed -i 's/8, 9, 10/8, 9, 10, 11/g;s/,<3.11//g' setup.py", + # ont-parasail on PyPI is just pre-built wheels for (python-)parasail + "sed -i 's/ont-parasail/parasail/g' requirements.txt", +] + +exts_list = [ + ('mappy', _minimap_ver, { + 'checksums': ['e53fbe9a3ea8762a64b8103f4f779c9fb16d418eaa0a731f45cebc83867a9b71'], + }), + ('wurlitzer', '3.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0b2749c2cde3ef640bf314a9f94b24d929fe1ca476974719a6909dfc568c3aac'], + }), + # medaka 1.12.0 requires h5py ~=3.10.0 + ('h5py', '3.10.0', { + 'checksums': ['d93adc48ceeb33347eb24a634fb787efc7ae4644e6ea4ba733d099605045c049'], + }), + ('pyabpoa', '1.5.2', { + 'checksums': ['be39c83b12e923c9e47073cb8f0abc4c42f609fa2c0ec13d6f6a4f5a0537ee06'], + }), + (name, version, { + 'checksums': ['df4baf7d1e9154de85229aef237919619ff6ae7f7d103abb0828e449ff977adf'], + # Some requirements are too strict. + 'preinstallopts': " && ".join(local_sed_commands) + " && ", + }), +] + +sanity_check_paths = { + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.28-GCCcore-13.2.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.28-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..94f332d290b --- /dev/null +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.28-GCCcore-13.2.0.eb @@ -0,0 +1,54 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Adam Huffman +# DeepThought, Flinders University +# Updated to 2.22 +# R.QIAO + +# Update Petr Král (INUITS) +easyblock = 'MakeCp' + +name = 'minimap2' +version = '2.28' + +homepage = 'https://github.com/lh3/minimap2' +description = """Minimap2 is a fast sequence mapping and alignment +program that can find overlaps between long noisy reads, or map long +reads or their assemblies to a reference genome optionally with detailed +alignment (i.e. CIGAR). At present, it works efficiently with query +sequences from a few kilobases to ~100 megabases in length at an error +rate ~15%. Minimap2 outputs in the PAF or the SAM format. On limited +test data sets, minimap2 is over 20 times faster than most other +long-read aligners. It will replace BWA-MEM for long reads and contig +alignment.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/lh3/%(name)s/releases/download/v%(version)s/'] +sources = ['%(name)s-%(version)s.tar.bz2'] +checksums = ['ffa5712735d229119f8c05722a0638ae0cc15aeb8938e29a3e52d5da5c92a0b4'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('zlib', '1.2.13')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + +files_to_copy = [ + (['%(name)s'], 'bin'), + (['lib%(name)s.a'], 'lib'), + (['*.h'], 'include'), + 'LICENSE.txt', 'NEWS.md', 'README.md', + (['%(name)s.1'], 'share/man/man1') +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'lib/lib%(name)s.a'], + 'dirs': ['include'] +} + +sanity_check_commands = [ + "minimap2 --help", + "cd %(builddir)s/minimap2-%(version)s && minimap2 -a test/MT-human.fa test/MT-orang.fa > test.sam", +] + +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..3d6ce8d2958 --- /dev/null +++ b/easybuild/easyconfigs/m/modin/modin-0.32.0-foss-2024a.eb @@ -0,0 +1,57 @@ +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'), +] + +use_pip = True + +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'}, + ], + }), +] + +sanity_pip_check = True + +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..c3fc1a06dae --- /dev/null +++ b/easybuild/easyconfigs/m/mpi4py/mpi4py-4.0.1-gompi-2024a.eb @@ -0,0 +1,29 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['f3174b245775d556f4fddb32519a2066ef0592edc810c5b5a59238f9a0a40c89'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/mpifileutils/mpifileutils-0.11.1-gompi-2024a.eb b/easybuild/easyconfigs/m/mpifileutils/mpifileutils-0.11.1-gompi-2024a.eb new file mode 100644 index 00000000000..f486ed4effd --- /dev/null +++ b/easybuild/easyconfigs/m/mpifileutils/mpifileutils-0.11.1-gompi-2024a.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'mpifileutils' +version = "0.11.1" + +homepage = 'https://hpc.github.io/mpifileutils/' + +description = """ + MPI-Based File Utilities For Distributed Systems +""" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +github_account = 'hpc' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['e2cba53309b5b3ee581b6ff82e4e66f54628370cce694c34224ed947fece32d4'] + +builddependencies = [ + ('CMake', '3.29.3'), +] + +dependencies = [ + ('attr', '2.5.2'), + ('bzip2', '1.0.8'), + ('lwgrp', '1.0.6'), + ('dtcmp', '1.1.5'), + ('libarchive', '3.7.4'), + ('libcircle', '0.3'), +] + +_binaries = [ + 'dbcast', 'dbz2', 'dchmod', 'dcmp', 'dcp', 'ddup', 'dfind', + 'dreln', 'drm', 'dstripe', 'dsync', 'dtar', 'dwalk' +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries] + + ['include/mfu.h', 'lib/libmfu.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ['%s --help 2>&1 | grep Usage' % x for x in _binaries] + +moduleclass = 'tools' 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..8381b52dd43 --- /dev/null +++ b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023a.eb @@ -0,0 +1,29 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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..f17a99eb068 --- /dev/null +++ b/easybuild/easyconfigs/m/mpl-ascii/mpl-ascii-0.10.0-gfbf-2023b.eb @@ -0,0 +1,29 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/mstore/mstore-0.3.0-GCC-12.3.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..a609b4e373b --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-12.3.0.eb @@ -0,0 +1,37 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'mstore' +version = '0.3.0' + +homepage = 'https://github.com/grimme-lab/mstore' +description = """Molecular structure store for testing""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['56b3d778629eb74b8a515cd53c727d04609f858a07f8d3555fd5fd392a206dcc'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/mstore-fortranize', 'bin/mstore-info', 'lib/libmstore.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mstore-info --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-13.2.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..639fb84a91b --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.3.0-GCC-13.2.0.eb @@ -0,0 +1,37 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'mstore' +version = '0.3.0' + +homepage = 'https://github.com/grimme-lab/mstore' +description = """Molecular structure store for testing""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['56b3d778629eb74b8a515cd53c727d04609f858a07f8d3555fd5fd392a206dcc'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/mstore-fortranize', 'bin/mstore-info', 'lib/libmstore.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mstore-info --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/muParser/muParser-2.3.4-GCCcore-12.3.0.eb b/easybuild/easyconfigs/m/muParser/muParser-2.3.4-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..506baa51977 --- /dev/null +++ b/easybuild/easyconfigs/m/muParser/muParser-2.3.4-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'muParser' +version = '2.3.4' + +homepage = 'https://beltoforion.de/article.php?a=muparser' +description = """ + muParser is an extensible high performance math expression parser library + written in C++. It works by transforming a mathematical expression into + bytecode and precalculating constant parts of the expression. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/beltoforion/muparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['0c3fa54a3ebf36dda0ed3e7cd5451c964afbb15102bdbcba08aafb359a290121'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +configopts = "-DENABLE_SAMPLES=OFF -DBUILD_SHARED_LIBS=ON" + +sanity_check_paths = { + 'files': ['include/%(name)s.h', 'lib/libmuparser.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.eb new file mode 100644 index 00000000000..b4ccfa2544f --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023a.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': 'gfbf', 'version': '2023a'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['2fcc1f80871f404f005e9db458ffaec95bb28a19516a0245278cd3175b63a6b2'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('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/multicharge/multicharge-0.3.0-gfbf-2023b.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-2023b.eb new file mode 100644 index 00000000000..b6f9aad8442 --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gfbf-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': 'gfbf', '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/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..956b6c8610d --- /dev/null +++ b/easybuild/easyconfigs/m/multiprocess/multiprocess-0.70.16-gfbf-2023b.eb @@ -0,0 +1,24 @@ +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'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +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.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb index c85b7a97e48..569d09f9859 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb @@ -11,11 +11,15 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -patches = ['NCCL-2.16.2_fix-cpuid.patch'] +patches = [ + 'NCCL-2.16.2_fix-cpuid.patch', + 'NCCL-2.18.3_fix-cudaMemcpyAsync.patch', +] checksums = [ ('6477d83c9edbb34a0ebce6d751a1b32962bc6415d75d04972b676c6894ceaef9', 'b4f5d7d9eea2c12e32e7a06fe138b2cfc75969c6d5c473aa6f819a792db2fc96'), {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, + {'NCCL-2.18.3_fix-cudaMemcpyAsync.patch': '7dc8d0d1b78e4f8acefbc400860f47432ef67c225b50d73c732999c23483de90'}, ] builddependencies = [('binutils', '2.40')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3_fix-cudaMemcpyAsync.patch b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3_fix-cudaMemcpyAsync.patch new file mode 100644 index 00000000000..68542656733 --- /dev/null +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3_fix-cudaMemcpyAsync.patch @@ -0,0 +1,174 @@ +Backported from (original message attached below): +https://github.com/NVIDIA/nccl/commit/4365458757e4107ecbf629b2fd6e0e19a5d237c2 + +From: Kaiming Ouyang +Date: Wed, 20 Sep 2023 05:51:14 -0700 +Subject: [PATCH] Fix cudaMemcpyAsync bug + +We are trying to use the copy result of first cudaMemcpyAsync in the +second cudaMemcpyAsync without sync in between. This patch fixes it +by allocating a CPU side array to cache device side addr so that we +can avoid this consecutive cuda mem copy. + +Fixes #957 +--- + src/channel.cc | 12 ++++++++++++ + src/include/comm.h | 2 ++ + src/init.cc | 2 +- + src/transport.cc | 8 ++------ + src/transport/nvls.cc | 10 ++++------ + 5 files changed, 21 insertions(+), 13 deletions(-) + +diff --git a/src/channel.cc b/src/channel.cc +index 3edcc2f..245dfd5 100644 +--- a/src/channel.cc ++++ b/src/channel.cc +@@ -42,9 +42,11 @@ ncclResult_t initChannel(struct ncclComm* comm, int channelId) { + /* channel->devPeers is not shared, so just free it when calling commFree() */ + NCCLCHECK(ncclCudaCallocAsync(&channel->devPeers, nPeers, sharedRes->deviceStream.cudaStream)); + ncclCommPushCudaFree(comm, channel->devPeers); ++ NCCLCHECK(ncclCalloc(&channel->devPeersHostPtr, nPeers)); + for (int r = 0; r < nRanks; r++) { + uintptr_t addr = (uintptr_t)(comm->sharedRes->devPeers[channelId] + comm->topParentRanks[r]); + NCCLCHECK(ncclCudaMemcpyAsync((uintptr_t*)(channel->devPeers + r), (uintptr_t*)&addr, 1, sharedRes->deviceStream.cudaStream)); ++ channel->devPeersHostPtr[r] = (struct ncclDevChannelPeer*)addr; + } + } + +@@ -52,6 +54,8 @@ ncclResult_t initChannel(struct ncclComm* comm, int channelId) { + NCCLCHECK(ncclCudaCallocAsync(&channel->devRingUserRanks, nRanks, sharedRes->deviceStream.cudaStream)); + ncclCommPushCudaFree(comm, channel->devRingUserRanks); + ++ /* guarantee addr has been copied into channel->devPeers */ ++ NCCLCHECK(ncclStrongStreamSynchronize(&sharedRes->deviceStream)); + NCCLCHECK(ncclStrongStreamRelease(ncclCudaGraphNone(), &sharedRes->deviceStream)); + + return ncclSuccess; +@@ -77,6 +81,7 @@ ncclResult_t initNvlsChannel(struct ncclComm* comm, int channelId, struct ncclCo + uintptr_t addr = (uintptr_t)(parent->channels[channelId].nvlsDevPeers + tr); + channel->peers[comm->nRanks + 1 + r] = parent->channels[channelId].nvlsPeers + tr; + NCCLCHECK(ncclCudaMemcpyAsync((uintptr_t*)(channel->devPeers + comm->nRanks + 1 + r), (uintptr_t*)&addr, 1, sharedRes->deviceStream.cudaStream)); ++ channel->devPeersHostPtr[comm->nRanks + 1 + r] = (struct ncclDevChannelPeer*)addr; + ncclAtomicRefCountIncrement(&parent->channels[channelId].nvlsPeers[tr].refCount); + } + } else { +@@ -86,10 +91,12 @@ ncclResult_t initNvlsChannel(struct ncclComm* comm, int channelId, struct ncclCo + uintptr_t addr = (uintptr_t)(channel->nvlsDevPeers + r); + channel->peers[comm->nRanks + 1 + r] = channel->nvlsPeers + r; + NCCLCHECK(ncclCudaMemcpyAsync((uintptr_t*)(channel->devPeers + comm->nRanks + 1 + r), (uintptr_t*)&addr, 1, sharedRes->deviceStream.cudaStream)); ++ channel->devPeersHostPtr[comm->nRanks + 1 + r] = (struct ncclDevChannelPeer*)addr; + ncclAtomicRefCountIncrement(&channel->nvlsPeers[r].refCount); + } + } + ++ NCCLCHECK(ncclStrongStreamSynchronize(&sharedRes->deviceStream)); + NCCLCHECK(ncclStrongStreamRelease(ncclCudaGraphNone(), &sharedRes->deviceStream)); + + return ncclSuccess; +@@ -114,6 +121,7 @@ ncclResult_t initCollnetChannel(struct ncclComm* comm, int channelId, struct ncc + addr = (uintptr_t)parent->channels[channelId].collnetDevPeers; + channel->peers[comm->nRanks] = parent->channels[channelId].collnetPeers; + NCCLCHECK(ncclCudaMemcpyAsync((uintptr_t*)(channel->devPeers + comm->nRanks), (uintptr_t*)&addr, 1, sharedRes->deviceStream.cudaStream)); ++ channel->devPeersHostPtr[comm->nRanks] = (struct ncclDevChannelPeer*)addr; + ncclAtomicRefCountIncrement(&parent->channels[channelId].collnetPeers->refCount); + } else { + NCCLCHECK(ncclCalloc(&channel->collnetPeers, 1)); +@@ -121,9 +129,11 @@ ncclResult_t initCollnetChannel(struct ncclComm* comm, int channelId, struct ncc + addr = (uintptr_t)channel->collnetDevPeers; + channel->peers[comm->nRanks] = channel->collnetPeers; + NCCLCHECK(ncclCudaMemcpyAsync((uintptr_t*)(channel->devPeers + comm->nRanks), (uintptr_t*)&addr, 1, sharedRes->deviceStream.cudaStream)); ++ channel->devPeersHostPtr[comm->nRanks] = (struct ncclDevChannelPeer*)addr; + ncclAtomicRefCountIncrement(&channel->collnetPeers->refCount); + } + ++ NCCLCHECK(ncclStrongStreamSynchronize(&sharedRes->deviceStream)); + NCCLCHECK(ncclStrongStreamRelease(ncclCudaGraphNone(), &sharedRes->deviceStream)); + + return ncclSuccess; +@@ -156,5 +166,7 @@ ncclResult_t freeChannel(struct ncclChannel* channel, int nRanks, int collnetNRa + } + } + } ++ ++ free(channel->devPeersHostPtr); + return ncclSuccess; + } +diff --git a/src/include/comm.h b/src/include/comm.h +index e79bf54..8986f93 100644 +--- a/src/include/comm.h ++++ b/src/include/comm.h +@@ -124,6 +124,8 @@ struct ncclSharedResources { + struct ncclChannel { + struct ncclChannelPeer** peers; + struct ncclDevChannelPeer** devPeers; ++ /* devPeer pointer array used for host side access */ ++ struct ncclDevChannelPeer** devPeersHostPtr; + struct ncclRing ring; + int* devRingUserRanks; + struct ncclTree tree; +diff --git a/src/init.cc b/src/init.cc +index 1ea1d7e..309ce10 100644 +--- a/src/init.cc ++++ b/src/init.cc +@@ -437,7 +437,7 @@ static ncclResult_t devCommSetup(ncclComm_t comm) { + + NCCLCHECKGOTO(ncclCudaMemcpyAsync(devCommAndChans, &tmpCommAndChans, 1, comm->sharedRes->deviceStream.cudaStream), ret, fail); + exit: +- CUDACHECK(cudaStreamSynchronize(comm->sharedRes->deviceStream.cudaStream)); ++ NCCLCHECK(ncclStrongStreamSynchronize(&comm->sharedRes->deviceStream)); + NCCLCHECK(ncclStrongStreamRelease(ncclCudaGraphNone(), &comm->sharedRes->deviceStream)); + return ret; + fail: +diff --git a/src/transport.cc b/src/transport.cc +index f4b8a2a..9817beb 100644 +--- a/src/transport.cc ++++ b/src/transport.cc +@@ -147,11 +147,9 @@ ncclResult_t ncclTransportP2pSetup(struct ncclComm* comm, struct ncclTopoGraph* + if (conn->connected == 0) { + NCCLCHECKGOTO(conn->transportComm->connect(comm, sendData[i] + sendDataOffset++, 1, comm->rank, conn), ret, fail); + if (ret == ncclSuccess) { +- struct ncclDevChannelPeer* addr; + conn->connected = 1; + /* comm->channels[c].devPeers[sendPeer]->send[connIndex] is a device memory access. */ +- CUDACHECKGOTO(cudaMemcpyAsync(&addr, &comm->channels[c].devPeers[sendPeer], sizeof(struct ncclDevChannelPeer*), cudaMemcpyDeviceToHost, comm->sharedRes->hostStream.cudaStream), ret, fail); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->send[connIndex], &conn->conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), ret, fail); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[sendPeer]->send[connIndex], &conn->conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), ret, fail); + } else if (ret == ncclInProgress) { + allChannelsConnected = false; + } +@@ -167,11 +165,9 @@ ncclResult_t ncclTransportP2pSetup(struct ncclComm* comm, struct ncclTopoGraph* + if (conn->connected == 0) { + NCCLCHECKGOTO(conn->transportComm->connect(comm, recvData[i] + recvDataOffset++, 1, comm->rank, conn), ret, fail); + if (ret == ncclSuccess) { +- struct ncclDevChannelPeer* addr; + conn->connected = 1; + /* comm->channels[c].devPeers[recvPeer]->recv[connIndex] is a device memory access. */ +- CUDACHECKGOTO(cudaMemcpyAsync(&addr, &comm->channels[c].devPeers[recvPeer], sizeof(struct ncclDevChannelPeer*), cudaMemcpyDeviceToHost, comm->sharedRes->hostStream.cudaStream), ret, fail); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->recv[connIndex], &conn->conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), ret, fail); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[recvPeer]->recv[connIndex], &conn->conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), ret, fail); + } else if (ret == ncclInProgress) { + allChannelsConnected = false; + } +diff --git a/src/transport/nvls.cc b/src/transport/nvls.cc +index 633cb04..07be99d 100644 +--- a/src/transport/nvls.cc ++++ b/src/transport/nvls.cc +@@ -359,12 +359,10 @@ ncclResult_t ncclNvlsSetup(struct ncclComm* comm, struct ncclComm* parent) { + peer->send[0].conn.tail = (uint64_t*)(mem + buffSize + memSize / 2); + peer->send[0].conn.flags |= NCCL_NVLS_MIN_POLL; + +- struct ncclDevChannelPeer* addr; +- CUDACHECKGOTO(cudaMemcpyAsync(&addr, comm->channels[c].devPeers + nvlsPeer, sizeof(struct ncclDevChannelPeer*), cudaMemcpyDeviceToHost, comm->sharedRes->hostStream.cudaStream), res, cleanup); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->send[0], &peer->send[0].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->recv[0], &peer->recv[0].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->send[1], &peer->send[1].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); +- CUDACHECKGOTO(cudaMemcpyAsync(&addr->recv[1], &peer->recv[1].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[nvlsPeer]->send[0], &peer->send[0].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[nvlsPeer]->recv[0], &peer->recv[0].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[nvlsPeer]->send[1], &peer->send[1].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); ++ CUDACHECKGOTO(cudaMemcpyAsync(&comm->channels[c].devPeersHostPtr[nvlsPeer]->recv[1], &peer->recv[1].conn, sizeof(struct ncclConnInfo), cudaMemcpyHostToDevice, comm->sharedRes->hostStream.cudaStream), res, cleanup); + + /*INFO(NCCL_INIT|NCCL_NVLS, "Peer %d Channel %d MC buff %p/%p UC Buff %p/%p", + nvlsPeer, c, +-- +2.45.2 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/NCIPLOT/NCIPLOT-4.2-20221021-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/n/NCIPLOT/NCIPLOT-4.2-20221021-intel-compilers-2022.1.0.eb new file mode 100644 index 00000000000..e5656e89aff --- /dev/null +++ b/easybuild/easyconfigs/n/NCIPLOT/NCIPLOT-4.2-20221021-intel-compilers-2022.1.0.eb @@ -0,0 +1,50 @@ +easyblock = 'MakeCp' + +name = 'NCIPLOT' +_formal_version = '4.2' +version = '%s-20221021' % _formal_version +_commit = '800f1647a2a46c82dbdb5e1ae58086cdbbd90dc3' + +homepage = 'https://www.lct.jussieu.fr/pagesperso/contrera/index-nci.html' +description = """ NCIPLOT is a program for revealing non covalent interactions + based on the reduced density gradient. """ + +toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'} +toolchainopts = {'openmp': True} + +github_account = 'juliacontrerasgarcia' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%s.tar.gz' % _commit] +checksums = ['087ec61988d53e472542b91a5237680b65f2c4f85633d7db12298fb770802082'] + +start_dir = 'src_%%(namelower)s_%s' % _formal_version + +prebuildopts = "sed -i 's/include Makefile.inc//;s/nciplot: $(OBJS) $(LIBS)/nciplot: $(OBJS)/g' Makefile && " +prebuildopts += "make clean && " +buildopts = 'LIBS="$LIBS"' + +# test scripts are still hardcoded for old version 4.0 +pretestopts = "cd %(builddir)s/%(namelower)s-*/tests && " +pretestopts += r"find . -name runtests.sh -exec sed -i 's/nciplot_4.0/nciplot_%s/g' {} \; && " % _formal_version +pretestopts += "export OMP_NUM_THREADS=%(parallel)s && " +test_cmd = "bash" +runtest = "alltests.sh" + +files_to_copy = [ + 'dat', + (['nciplot'], 'bin'), + (['LICENSE', 'README', 'NCIPLOT_MANUAL.pdf'], 'share'), +] + +sanity_check_paths = { + 'files': ['bin/nciplot'], + 'dirs': ['dat', 'share'], +} + +modextrapaths = {'NCIPLOT_HOME': ''} + +modloadmsg = """ +Set environment variable OMP_NUM_THREADS equal to the number of available cores before running this program. +""" + +moduleclass = 'chem' 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..cf83d365785 --- /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/NECAT/NECAT-0.0.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..15c35f4e31a --- /dev/null +++ b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-GCCcore-12.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'MakeCp' + +name = 'NECAT' +version = '0.0.1' +_update = '20200803' + +homepage = 'https://github.com/xiaochuanle/NECAT' +description = "NECAT is an error correction and de-novo assembly tool for Nanopore long noisy reads." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/xiaochuanle/NECAT/archive/'] +sources = ['v%%(version)s_update%s.tar.gz' % _update] +checksums = ['5ddd147b5be6b1fac2f6c10b18c9b587838f2304d2584087c4ed6f628eced06c'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Perl', '5.36.1'), +] + +start_dir = 'src' + +files_to_copy = [ + (['Linux-amd64/bin'], ''), +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['necat.sh', 'oc2cns', 'oc2elr', 'oc2etr', + 'oc2lcr', 'pigz', 'pm4']], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s.pl --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a245da7c6bc --- /dev/null +++ b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-GCCcore-13.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'MakeCp' + +name = 'NECAT' +version = '0.0.1' +_update = '20200803' + +homepage = 'https://github.com/xiaochuanle/NECAT' +description = "NECAT is an error correction and de-novo assembly tool for Nanopore long noisy reads." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/xiaochuanle/NECAT/archive/'] +sources = ['v%%(version)s_update%s.tar.gz' % _update] +patches = ['%(name)s-0.0.1_add-cstdint-include.patch'] +checksums = [ + {'v0.0.1_update20200803.tar.gz': '5ddd147b5be6b1fac2f6c10b18c9b587838f2304d2584087c4ed6f628eced06c'}, + {'NECAT-0.0.1_add-cstdint-include.patch': 'a50d4e39e6df580d0f5e67d81c9b1569315b564bfd0f74eda7d228c2f4890171'}, +] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Perl', '5.38.0'), +] + +start_dir = 'src' + +files_to_copy = [ + (['Linux-amd64/bin'], ''), +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['necat.sh', 'oc2cns', 'oc2elr', 'oc2etr', + 'oc2lcr', 'pigz', 'pm4']], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s.pl --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-foss-2023a.eb b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-foss-2023a.eb new file mode 100644 index 00000000000..dbc35f62054 --- /dev/null +++ b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'MakeCp' + +name = 'NECAT' +version = '0.0.1' + +homepage = 'https://github.com/xiaochuanle/NECAT' +description = """NECAT is an error correction and de-novo assembly tool for Nanopore long noisy reads.).""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/xiaochuanle/NECAT/archive/'] +sources = ['v%(version)s_update20200803.tar.gz'] +checksums = ['5ddd147b5be6b1fac2f6c10b18c9b587838f2304d2584087c4ed6f628eced06c'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('Perl', '5.36.1')] + +start_dir = 'src' + +files_to_copy = [ + (['../Linux-amd64/bin/*'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s.pl'], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s.pl --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1_add-cstdint-include.patch b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1_add-cstdint-include.patch new file mode 100644 index 00000000000..a845baae899 --- /dev/null +++ b/easybuild/easyconfigs/n/NECAT/NECAT-0.0.1_add-cstdint-include.patch @@ -0,0 +1,14 @@ +Author: Jasper Grimm +Add include for gcc >= 13 support + +diff -Nru NECAT-0.0.1_update20200803.orig/src/fsa/simple_align.hpp NECAT-0.0.1_update20200803/src/fsa/simple_align.hpp +--- NECAT-0.0.1_update20200803.orig/src/fsa/simple_align.hpp 2024-10-09 15:51:42.877779089 +0100 ++++ NECAT-0.0.1_update20200803/src/fsa/simple_align.hpp 2024-10-09 15:52:17.356716279 +0100 +@@ -2,6 +2,7 @@ + #define FSA_ALIGN_SIMPLE_ALIGN_HPP + + #include ++#include + #include + #include + #include 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/NLopt/NLopt-2.7.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/NLopt/NLopt-2.7.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b9bb438dc94 --- /dev/null +++ b/easybuild/easyconfigs/n/NLopt/NLopt-2.7.1-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'NLopt' +version = '2.7.1' + +homepage = 'http://ab-initio.mit.edu/wiki/index.php/NLopt' +description = """ NLopt is a free/open-source library for nonlinear optimization, + providing a common interface for a number of different free optimization routines + available online as well as original implementations of various other algorithms. """ + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/stevengj/nlopt/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['db88232fa5cef0ff6e39943fc63ab6074208831dc0031cf1545f6ecd31ae2a1a'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +configopts = [ + '-DBUILD_SHARED_LIBS=ON', + '-DBUILD_SHARED_LIBS=OFF' +] + +sanity_check_paths = { + 'files': ['lib/libnlopt.a', 'lib/libnlopt.%s' % SHLIB_EXT, 'include/nlopt.h'], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'numlib' 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..fb301be49d5 --- /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 +parallel = 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/NTPoly/NTPoly-2.7.1-foss-2022a.eb b/easybuild/easyconfigs/n/NTPoly/NTPoly-2.7.1-foss-2022a.eb new file mode 100644 index 00000000000..e6ef7ccfb3e --- /dev/null +++ b/easybuild/easyconfigs/n/NTPoly/NTPoly-2.7.1-foss-2022a.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'NTPoly' +version = '2.7.1' + +homepage = 'https://github.com/william-dawson/NTPoly' +description = """is a massively parallel library for computing the functions of sparse, symmetric matrices based on +polynomial expansions. For sufficiently sparse matrices, most of the matrix functions +in NTPoly can be computed in linear time.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': False, 'usempi': True} + +source_urls = ['https://github.com/william-dawson/NTPoly/archive/ntpoly-v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c15d9f51ac054b4ef0565ce5c4c8589c10bdbab4dc3442ebd109691e2bbfc7e2'] + +builddependencies = [('CMake', '3.23.1')] + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['include/%s.mod' % x for x in ['datatypesmodule', 'densitymatrixsolversmodule']] + + ['lib64/libNTPoly.%s' % SHLIB_EXT, 'lib/libNTPoly.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb b/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb new file mode 100644 index 00000000000..8f7a531ce0e --- /dev/null +++ b/easybuild/easyconfigs/n/NTPoly/NTPoly-3.1.0-foss-2023a.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'NTPoly' +version = '3.1.0' + +homepage = 'https://github.com/william-dawson/NTPoly' +description = """is a massively parallel library for computing the functions of sparse, symmetric matrices based on +polynomial expansions. For sufficiently sparse matrices, most of the matrix functions +in NTPoly can be computed in linear time.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': False, 'usempi': True} + +source_urls = ['https://github.com/william-dawson/NTPoly/archive/ntpoly-v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['71cd6827f20c68e384555dbcfc85422d0690e21d21d7b5d4f7375544a2755271'] + +builddependencies = [('CMake', '3.26.3')] + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['include/%s.mod' % x for x in ['datatypesmodule', 'densitymatrixsolversmodule']] + + ['lib64/libNTPoly.%s' % SHLIB_EXT, 'lib/libNTPoly.%s' % SHLIB_EXT], + 'dirs': [] +} + +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/NVHPC/NVHPC-24.9-CUDA-12.6.0.eb b/easybuild/easyconfigs/n/NVHPC/NVHPC-24.9-CUDA-12.6.0.eb new file mode 100644 index 00000000000..d164eabc04d --- /dev/null +++ b/easybuild/easyconfigs/n/NVHPC/NVHPC-24.9-CUDA-12.6.0.eb @@ -0,0 +1,73 @@ +name = 'NVHPC' +version = '24.9' +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': + '8d900f798ef806c64993fd4fedf2c2c812dd1ccdbac2a0d33fabcd0cd36f19cf', + local_tarball_tmpl % 'x86_64': + '30c493350cf67481e84cea60a3a869e01fa0bcb71df8e898266273fbdf0a7f26', + } +] + +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/NanoComp/NanoComp-1.24.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoComp/NanoComp-1.24.0-foss-2023a.eb new file mode 100644 index 00000000000..94de23b83da --- /dev/null +++ b/easybuild/easyconfigs/n/NanoComp/NanoComp-1.24.0-foss-2023a.eb @@ -0,0 +1,42 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'NanoComp' +version = '1.24.0' + +homepage = 'https://github.com/wdecoster/NanoComp' +description = "Comparing runs of Oxford Nanopore sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2ce02bb38c76137ee00ebcc68b6b2654a4a459993e901aebde436c4d54287b09'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), + ('nanoget', '1.19.3'), + ('NanoPlot', '1.43.0'), + ('plotly.py', '5.16.0'), + ('plotly-orca', '1.3.1'), + ('joypy', '0.2.6'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/NanoComp'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoComp --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb new file mode 100644 index 00000000000..fed069c1e75 --- /dev/null +++ b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'NanoFilt' +version = '2.8.0' + +homepage = 'https://github.com/wdecoster/nanofilt' +description = """Filtering and trimming of long read sequencing data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['47f4f4f8be834f011570a8d76d07cc12abe0686c8917607316a8ccfb3e20758c'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_commands = ["NanoFilt --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023b.eb b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023b.eb new file mode 100644 index 00000000000..1aef705dc4e --- /dev/null +++ b/easybuild/easyconfigs/n/NanoFilt/NanoFilt-2.8.0-foss-2023b.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'NanoFilt' +version = '2.8.0' + +homepage = 'https://github.com/wdecoster/nanofilt' +description = """Filtering and trimming of long read sequencing data.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['47f4f4f8be834f011570a8d76d07cc12abe0686c8917607316a8ccfb3e20758c'] + +dependencies = [ + ('Python', '3.11.5'), + ('Biopython', '1.84'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_commands = ["NanoFilt --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb b/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb new file mode 100644 index 00000000000..1b21ec42201 --- /dev/null +++ b/easybuild/easyconfigs/n/NanoLyse/NanoLyse-1.2.1-foss-2023a.eb @@ -0,0 +1,48 @@ +## +# This is a contribution from SIB Swiss Institute of Bioinformatics +# Homepage: https://www.sib.swiss/research-infrastructure/competence-centers/vital-it +# +# Authors:: Sebastien Moretti +# +# Update: Petr Král (INUITS) +## + +easyblock = 'PythonBundle' + +name = 'NanoLyse' +version = '1.2.1' + +homepage = 'https://github.com/wdecoster/nanolyse' +description = """Remove reads mapping to the lambda phage genome from a fastq file.""" +software_license = 'LicenseGPLv3' + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('minimap2', '2.26'), +] + +use_pip = True + +# Fetch the tar.gz, not the whl files! +exts_list = [ + ('mappy', '2.28', { + 'checksums': ['0ebf7a5d62bd668f5456028215e26176e180ca68161ac18d4f7b48045484cebb'], + }), + (name, version, { + 'checksums': ['933ee668da805fc9ec9fa86c9fca81a073438d45b5f64e23cf606c01e715b1d5'], + }), +] + +sanity_check_paths = { + 'files': ['bin/NanoLyse'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoLyse --version"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoPack/NanoPack-20230602-foss-2023a.eb b/easybuild/easyconfigs/n/NanoPack/NanoPack-20230602-foss-2023a.eb new file mode 100644 index 00000000000..00ae2ecf8e2 --- /dev/null +++ b/easybuild/easyconfigs/n/NanoPack/NanoPack-20230602-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'NanoPack' +version = '20230602' +local_commit = '4059a0a' + +homepage = 'https://daler.github.io/pybedtools' +description = "Collection of long read processing and analysis tools." + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/wdecoster/nanopack/archive/'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['b533dd54bf9688a24faf9cb724050ace87bba18b2f469e1116ae47c9ae26cdc1'] + +dependencies = [ + ('Python', '3.11.3'), + ('nanomath', '1.4.0'), + ('nanoget', '1.19.3'), + ('NanoStat', '1.6.0'), + ('NanoFilt', '2.8.0'), + ('NanoLyse', '1.2.1'), + ('NanoPlot', '1.43.0'), + ('NanoComp', '1.24.0'), + ('nanoQC', '0.9.4'), + ('kyber', '0.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb new file mode 100644 index 00000000000..4e547b9963b --- /dev/null +++ b/easybuild/easyconfigs/n/NanoPlot/NanoPlot-1.43.0-foss-2023a.eb @@ -0,0 +1,43 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'NanoPlot' +version = '1.43.0' + +homepage = 'https://github.com/wdecoster/NanoPlot' +description = "Plotting suite for long read sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['0f94096d689b552c32fd7246ad87cb6d5e5e2499dad5acc551091e0ff67f48df'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), + ('nanoget', '1.19.3'), + ('plotly.py', '5.16.0'), + ('statsmodels', '0.14.1'), + ('Arrow', '14.0.1'), # for pyarrow + ('Kaleido', '0.2.1'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/NanoPlot'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NanoPlot --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb new file mode 100644 index 00000000000..8f0fa5a053c --- /dev/null +++ b/easybuild/easyconfigs/n/NanoStat/NanoStat-1.6.0-foss-2023a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'NanoStat' +version = '1.6.0' + +homepage = 'https://github.com/wdecoster/nanostat' +description = """Calculate various statistics from a long read sequencing dataset in fastq, + bam or albacore sequencing summary format.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e45fa8d1ab49bdaed17596c26c0af148b44e4af46238391a8bb7a1b4cc940079'] + +dependencies = [ + ('Python', '3.11.3'), + ('nanoget', '1.19.3'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/NanoStat'], + 'dirs': [], +} + +sanity_check_commands = ["NanoStat --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/NextDenovo/NextDenovo-2.5.2-20240510-GCCcore-12.3.0.eb b/easybuild/easyconfigs/n/NextDenovo/NextDenovo-2.5.2-20240510-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..84f6960102e --- /dev/null +++ b/easybuild/easyconfigs/n/NextDenovo/NextDenovo-2.5.2-20240510-GCCcore-12.3.0.eb @@ -0,0 +1,54 @@ +easyblock = 'MakeCp' + +name = 'NextDenovo' +version = '2.5.2-20240510' +local_commit = '0e5fa5d' + +homepage = 'https://github.com/Nextomics/NextDenovo' +description = 'NextDenovo is a string graph-based de novo assembler for long reads.' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/Nextomics/NextDenovo/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['bbe43124e7d63cbe33179c2abf2de60797bb7361a7f7a2b5fc33bf62a4479726'] + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('cURL', '8.0.1'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, + 'preinstallopts': '', + 'installopts': '', +} + +exts_list = [ + ('Paralleltask', '0.2.3', { + 'modulename': 'paralleltask', + 'checksums': ['8015a8311d5021bc44edbfbf45ff2557a529999e235d25190bac62993fdf7b66'], + }), +] + +files_to_copy = ['bin', 'lib', 'test_data', 'LICENSE', 'nextDenovo'] + +sanity_check_paths = { + 'files': ['nextDenovo', 'bin/minimap2-nd', 'bin/paralleltask', 'bin/nextgraph'], + 'dirs': ['bin', 'test_data', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['nextDenovo --help'] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'PATH': '', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NextGenMap/NextGenMap-0.5.5-GCC-12.3.0.eb b/easybuild/easyconfigs/n/NextGenMap/NextGenMap-0.5.5-GCC-12.3.0.eb new file mode 100644 index 00000000000..1792c3ecdfa --- /dev/null +++ b/easybuild/easyconfigs/n/NextGenMap/NextGenMap-0.5.5-GCC-12.3.0.eb @@ -0,0 +1,55 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'CMakeMake' + +name = 'NextGenMap' +version = '0.5.5' + +homepage = 'http://cibiv.github.io/%(name)s/' +description = """NextGenMap is a flexible highly sensitive short read mapping tool that + handles much higher mismatch rates than comparable algorithms while still outperforming + them in terms of runtime.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Cibiv/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['c205e6cb312d2f495106435f10fb446e6fb073dd1474f4f74ab5980ba9803661'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('BamTools', '2.5.2'), + ('zlib', '1.2.13'), +] + +skipsteps = ['install'] + +preconfigopts = r"sed -i '/add_subdirectory.*\(bamtools\|zlib\).*/d' ../NextGenMap-%(version)s/CMakeLists.txt && " +preconfigopts += "sed -i 's/BamTools-static/bamtools/g' ../NextGenMap-%(version)s/{src,utils}/CMakeLists.txt && " +preconfigopts += "sed -i 's/zlibstatic/z/g' ../NextGenMap-%(version)s/{src,utils}/CMakeLists.txt && " + +buildopts = ' && cp -r ../%(name)s-%(version)s/bin/ngm-%(version)s/. %(installdir)s/bin/' + +postinstallcmds = [ + # avoid hard overwriting of $LD_LIBRARY_PATH in ngm wrapper script + r"sed -i 's/\(LD_LIBRARY_PATH=[^ ]*\)\"/\1:$LD_LIBRARY_PATH\"/g' %(installdir)s/bin/ngm", + # fix execution permissions for ngm* binaries/scripts + "chmod a+x %(installdir)s/bin/ngm*", + # link `libOpenCL.so.1` to the `lib` directory (required when using RPATH linking) + 'cd %(installdir)s && mkdir -p lib && ln -rfs bin/opencl/lib/libOpenCL.so.1 lib/libOpenCL.so.1', +] + +sanity_check_paths = { + 'files': ['lib/libOpenCL.so.1'] + ['bin/%s' % x for x in ['ngm', 'ngm-core', 'ngm-log', 'ngm-utils', 'oclTool']], + 'dirs': ['bin/opencl'] +} + +sanity_check_commands = [ + "ngm --help 2>&1 | grep 'Usage:[ ]*ngm'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb b/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..51a31669463 --- /dev/null +++ b/easybuild/easyconfigs/n/NextPolish/NextPolish-1.4.1-GCC-12.3.0.eb @@ -0,0 +1,94 @@ +easyblock = 'MakeCp' + +name = 'NextPolish' +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': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/Nextomics/NextPolish/releases/download/'] +sources = [{ + 'download_filename': 'v%(version)s/%(name)s.tgz', + 'filename': SOURCE_TAR_GZ, +}] +checksums = ['2a5f66f3db7f76e583a6b6e28f9c1f3c392258b8d755050d7abe129a2fbb48c4'] + +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' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, + 'preinstallopts': '', + 'installopts': '', +} + +exts_list = [ + ('Paralleltask', '0.2.3', { + 'modulename': 'paralleltask', + 'checksums': ['8015a8311d5021bc44edbfbf45ff2557a529999e235d25190bac62993fdf7b66'], + }), +] + +# fix make -C util - warning: jobserver unavailable +parallel = 1 + +# fix bwa bug - https://github.com/Nextomics/NextPolish/issues/83 +# + 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_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 = [ + # 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', 'bin/samtools'], + 'dirs': ['test_data', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'nextPolish --help', + 'nextPolish %(installdir)s/test_data/run.cfg' +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'PATH': '', +} + +moduleclass = 'bio' 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/nano/nano-8.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/nano/nano-8.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..64684d1ff42 --- /dev/null +++ b/easybuild/easyconfigs/n/nano/nano-8.1-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'nano' +version = '8.1' + +homepage = 'https://www.nano-editor.org/' +docurls = 'https://www.nano-editor.org/docs.php' +description = """a simple editor, inspired by Pico""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.nano-editor.org/dist/v%(version_major)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['6508bfbcfe38153ecbdc1b7d3479323564353f134acc8c501910220371390675'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('ncurses', '6.5')] + +sanity_check_paths = { + 'files': ['bin/nano'], + 'dirs': ['bin', 'share'], +} + +sanity_check_commands = ['nano --version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb new file mode 100644 index 00000000000..264a822a3ca --- /dev/null +++ b/easybuild/easyconfigs/n/nanoQC/nanoQC-0.9.4-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'nanoQC' +version = '0.9.4' + +homepage = 'https://github.com/wdecoster/nanoQC' +description = """Quality control tools for long read sequencing + data aiming to replicate some of the plots made by fastQC.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['05685656138cbaf099b18831d1ceeaca93faf3399881cc2efda44c04d3b316e3'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('SciPy-bundle', '2023.07'), + ('bokeh', '3.2.2'), +] + +download_dep_fail = True +use_pip = True + +options = {'modulename': 'nanoQC'} + +sanity_check_commands = ["nanoQC --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb new file mode 100644 index 00000000000..2aeb2ceaf26 --- /dev/null +++ b/easybuild/easyconfigs/n/nanoget/nanoget-1.19.3-foss-2023a.eb @@ -0,0 +1,30 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonPackage' + +name = 'nanoget' +version = '1.19.3' + +homepage = 'https://github.com/wdecoster/nanoget' +description = "Functions to extract information from Oxford Nanopore sequencing data and alignments" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['da981810edb1cbe42cbbfbe5fcf753f29bf5555204cd51256b28a284a036a71b'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Pysam', '0.22.0'), + ('nanomath', '1.4.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb new file mode 100644 index 00000000000..2a2f56955cc --- /dev/null +++ b/easybuild/easyconfigs/n/nanomath/nanomath-1.4.0-foss-2023a.eb @@ -0,0 +1,33 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'nanomath' +version = '1.4.0' + +homepage = 'https://github.com/wdecoster/nanomath' +description = "A few simple math functions for other Oxford Nanopore processing scripts" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('Python-Deprecated', '1.1.0', { + 'modulename': 'deprecated', + 'checksums': ['a242b3c1721f97912330b12cd5529abfa5b3876084a6c60a2c683a87d4b0dd6f'], + }), + (name, version, { + 'checksums': ['ed7a38fbb156d9a68a95c2570fe3c2035321d0a3e234580496750afca4927ced'], + }), +] + +moduleclass = 'math' 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/ncurses/ncurses-6.5-GCCcore-14.2.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..a7ad6d943b2 --- /dev/null +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb @@ -0,0 +1,53 @@ +easyblock = 'ConfigureMake' + +name = 'ncurses' +version = '6.5' + +homepage = 'https://www.gnu.org/software/ncurses/' +description = """ + The Ncurses (new curses) library is a free software emulation of curses in + System V Release 4.0, and more. It uses Terminfo format, supports pads and + color and multiple highlights and forms characters and function-key mapping, + and has all the other SYSV-curses enhancements over BSD Curses. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.3.0'), +] + +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms " +local_common_configopts += "--enable-pc-files --with-pkg-config-libdir=%(installdir)s/lib/pkgconfig " +configopts = [ + # build ncurses: serial build in default paths with shared libraries + local_common_configopts + "--disable-widec", + # build ncursesw: serial with UTF-8 + local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", +] + +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] +_pc_names = ['form', 'menu', 'ncurses++', 'ncurses', 'panel'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", + "reset", "tabs", "tic", "toe", "tput", "tset"]] + + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix] + + ['lib/pkgconfig/%s%s.pc' % (x, y) for x in _pc_names for y in _target_suffix], + 'dirs': ['include', 'include/ncursesw'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..35d0c5778dd --- /dev/null +++ b/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'nellie' +version = '0.3.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/aelefebv/nellie/' +description = """ +Napari plugin for automated organelle segmentation, +tracking, and hierarchical feature extraction in 2D/3D live-cell microscopy. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('CUDA', '12.1.1', '', SYSTEM), + ('SciPy-bundle', '2023.07'), + ('napari', '0.4.18'), + ('scikit-image', '0.22.0'), + ('imagecodecs', '2024.1.1'), + ('matplotlib', '3.7.2'), + ('ome-types', '0.5.1.post1'), + ('CuPy', '13.0.0', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +local_preinstallopts = ( + "sed -i" + " -e 's/numpy==1.26.4/numpy/'" + " -e 's/scipy==1.12.0/scipy/'" + " -e 's/nd2==0.9.0/nd2/'" + " -e 's/pandas==2.2.1/pandas/'" + " -e 's/matplotlib==3.8.3/matplotlib/'" + " -e 's/napari[all]/napari/'" + " setup.cfg && " +) + +exts_list = [ + ('resource_backed_dask_array', '0.1.0', { + 'checksums': ['8fabcccf5c7e29059b5badd6786dd7675a258a203c58babf10077d9c90ada54f'], + }), + ('nd2', '0.10.1', { + 'checksums': ['88ee60f6ba39392722a162da58fb81bf0cdb8ed6c772772e4db91e90f97e490a'], + }), + (name, version, { + 'preinstallopts': local_preinstallopts, + 'checksums': ['3fd85bd1c7df5a8f24bff2118805cd7c82140b08871d520b2131d4d9a8c00d94'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a.eb b/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a.eb new file mode 100644 index 00000000000..34b3ce6299a --- /dev/null +++ b/easybuild/easyconfigs/n/nellie/nellie-0.3.1-foss-2023a.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'nellie' +version = '0.3.1' + +homepage = 'https://github.com/aelefebv/nellie/' +description = """ +Napari plugin for automated organelle segmentation, +tracking, and hierarchical feature extraction in 2D/3D live-cell microscopy. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('napari', '0.4.18'), + ('scikit-image', '0.22.0'), + ('imagecodecs', '2024.1.1'), + ('matplotlib', '3.7.2'), + ('ome-types', '0.5.1.post1'), +] + +use_pip = True +sanity_pip_check = True + +local_preinstallopts = ( + "sed -i" + " -e 's/numpy==1.26.4/numpy/'" + " -e 's/scipy==1.12.0/scipy/'" + " -e 's/nd2==0.9.0/nd2/'" + " -e 's/pandas==2.2.1/pandas/'" + " -e 's/matplotlib==3.8.3/matplotlib/'" + " -e 's/napari[all]/napari/'" + " setup.cfg && " +) + +exts_list = [ + ('resource_backed_dask_array', '0.1.0', { + 'checksums': ['8fabcccf5c7e29059b5badd6786dd7675a258a203c58babf10077d9c90ada54f'], + }), + ('nd2', '0.10.1', { + 'checksums': ['88ee60f6ba39392722a162da58fb81bf0cdb8ed6c772772e4db91e90f97e490a'], + }), + (name, version, { + 'preinstallopts': local_preinstallopts, + 'checksums': ['3fd85bd1c7df5a8f24bff2118805cd7c82140b08871d520b2131d4d9a8c00d94'], + }), +] + +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..2bc6e207794 --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.1-gompi-2024a.eb @@ -0,0 +1,28 @@ +name = 'netCDF-Fortran' +version = '4.6.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['40b534e0c81b853081c67ccde095367bd8a5eead2ee883431331674e7aa9509f'] + +builddependencies = [ + ('M4', '1.4.19'), +] +dependencies = [ + ('netCDF', '4.9.2'), + ('bzip2', '1.0.8'), +] + +# (too) parallel build fails, but single-core build is fairly quick anyway (~1min) +parallel = 1 + + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb new file mode 100644 index 00000000000..95e48775eeb --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb @@ -0,0 +1,54 @@ +name = 'netCDF' +version = '4.9.2' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/%(namelower)s-c/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version_major_minor)s.0_skip-nasa-test.patch'] +checksums = [ + {'v4.9.2.tar.gz': 'bc104d101278c68b303359b3dc4192f81592ae8640f1aee486921138f7f88cb7'}, + {'%(name)s-%(version_major_minor)s.0_skip-nasa-test.patch': + '19d99e03c048b037dc01f03f5b8ddc910ebaceb076d0f050540d348f26dfcd2a'}, +] + +builddependencies = [ + ('Autotools', '20231222'), + ('CMake', '3.29.3'), + ('Doxygen', '1.11.0'), +] +dependencies = [ + ('HDF5', '1.14.5'), + ('cURL', '8.7.1'), + ('Szip', '2.1.1'), + ('zstd', '1.5.6'), + ('bzip2', '1.0.8'), + ('libxml2', '2.12.7'), +] + +# disable Szip, zlib parallel I/O tests, since these can hang on some systems, e.g. generoso +# see: https://github.com/easybuilders/easybuild-easyconfigs/pull/16834 +# and https://github.com/easybuilders/easybuild-easyconfigs/pull/17107#issuecomment-1432947172 +preconfigopts = ("sed -i -e 's|@MPIEXEC@ -n 4 ./tst_parallel5|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_zlib|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_compress|echo \"skipped by EasyBuild\"|g'" + " %(builddir)s/%(namelower)s-c-%(version)s/nc_test4/run_par_test.sh.in &&") + +# make sure both static and shared libs are built +# and disable "remote" tests that access a unreliable external test server over internet +configopts = [ + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=OFF", + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=ON", +] + +# some tests try to start 16 MPI ranks, so we need to allow oversubscription to avoid failing tests +pretestopts = "PRTE_MCA_rmaps_default_mapping_policy=:oversubscribe " +runtest = 'test' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb new file mode 100644 index 00000000000..912e23a55b7 --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb @@ -0,0 +1,58 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.7.1.post2' + + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = "Python/numpy interface to netCDF." + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True} + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('netCDF', '4.9.2'), + ('cURL', '8.7.1'), + ('mpi4py', '4.0.1'), +] + +fix_python_shebang_for = ['bin/*'] +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('cftime', '1.6.4', { + 'checksums': ['e325406193758a7ed67308deb52e727782a19e384e183378e7ff62098be0aedc'], + }), + (name, version, { + 'patches': [ + 'netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch', + ], + 'source_tmpl': 'netcdf4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + {'netcdf4-1.7.1.post2.tar.gz': '37d557e36654889d7020192bfb56f9d5f93894cb32997eb837ae586c538fd7b6'}, + {'netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch': + '7faa7e839ad1e816ffd0153e4b76b43ebce3e14d35f0534f812168dfaa78316c'}, + ], + }), +] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch new file mode 100644 index 00000000000..be4deb77f96 --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch @@ -0,0 +1,15 @@ +# Relax tolerance in the compression_szip test to avoid fails on some systems. +# author: maxim-masterov (SURF) +# +diff -Nru netcdf4-1.7.1.post2.orig/test/test_compression_szip.py netcdf4-1.7.1.post2/test/test_compression_szip.py +--- netcdf4-1.7.1.post2.orig/test/test_compression_szip.py 2024-10-07 16:01:21.276893761 +0200 ++++ netcdf4-1.7.1.post2/test/test_compression_szip.py 2024-10-07 16:27:47.424436617 +0200 +@@ -35,7 +35,7 @@ + assert_almost_equal(datarr,f.variables['data'][:]) + assert f.variables['data'].filters() ==\ + {'zlib':False,'szip':False,'zstd':False,'bzip2':False,'blosc':False,'shuffle':False,'complevel':0,'fletcher32':False} +- assert_almost_equal(datarr,f.variables['data_szip'][:]) ++ assert_almost_equal(datarr,f.variables['data_szip'][:], 6) + dtest = {'zlib': False, 'szip': {'coding': 'ec', 'pixels_per_block': 32}, 'zstd': False, 'bzip2': False, 'blosc': False, 'shuffle': False, 'complevel': 0, 'fletcher32': False} + assert f.variables['data_szip'].filters() == dtest + f.close() diff --git a/easybuild/easyconfigs/n/nettle/nettle-3.10-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/nettle/nettle-3.10-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ef91cf135fe --- /dev/null +++ b/easybuild/easyconfigs/n/nettle/nettle-3.10-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'nettle' +version = '3.10' + +homepage = 'https://www.lysator.liu.se/~nisse/nettle/' +description = """Nettle is a cryptographic library that is designed to fit easily + in more or less any context: In crypto toolkits for object-oriented + languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, + or even in kernel space.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['b4c518adb174e484cb4acea54118f02380c7133771e7e9beb98a0787194ee47c'] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +configopts = '--disable-openssl ' # openssl is just used for the nettle-openssl example and requires openssl 1.1 + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['nettle-hash', 'nettle-lfib-stream', 'pkcs1-conv', 'sexp-conv']] + + [('lib/libhogweed.a', 'lib64/libhogweed.a'), + ('lib/libhogweed.%s' % SHLIB_EXT, 'lib64/libhogweed.%s' % SHLIB_EXT), + ('lib/libnettle.a', 'lib64/libnettle.a'), + ('lib/libnettle.%s' % SHLIB_EXT, 'lib64/libnettle.%s' % SHLIB_EXT)], + 'dirs': ['include/nettle'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/networkx/networkx-3.1-gfbf-2023a.eb b/easybuild/easyconfigs/n/networkx/networkx-3.1-gfbf-2023a.eb index 2cef5135036..03fe29675fd 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..9adfd4d5246 --- /dev/null +++ b/easybuild/easyconfigs/n/networkx/networkx-3.4.2-gfbf-2024a.eb @@ -0,0 +1,24 @@ +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, ... +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/nf-core/nf-core-2.14.1-foss-2024a.eb b/easybuild/easyconfigs/n/nf-core/nf-core-2.14.1-foss-2024a.eb new file mode 100644 index 00000000000..5b64c454d51 --- /dev/null +++ b/easybuild/easyconfigs/n/nf-core/nf-core-2.14.1-foss-2024a.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'nf-core' +version = '2.14.1' + +homepage = 'https://github.com/nf-core/tools' +description = "Python package with helper tools for the nf-core community." + +toolchain = {'name': 'foss', 'version': '2024a'} + +builddependencies = [ + ('poetry', '1.8.3'), + ('PDM', '2.18.2'), +] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), + ('GitPython', '3.1.43'), + ('Markdown', '3.7'), + ('Pillow', '10.4.0'), + ('prompt-toolkit', '3.0.36'), + ('pydantic', '2.9.1'), + ('pyfaidx', '0.8.1.2'), + ('pytest-workflow', '2.1.0'), + ('PyYAML', '6.0.2'), + ('tqdm', '4.66.5'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('humanfriendly', '10.0', {'checksums': ['6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc']}), + ('coloredlogs', '15.0.1', {'checksums': ['7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0']}), + ('typer', '0.12.5', {'checksums': ['f592f089bedcc8ec1b974125d64851029c3b1af145f04aca64d69410f0c9b722']}), + ('pephubclient', '0.4.4', {'checksums': ['0723b84f165024a08885057b80daa314987474ac6be04cb34e4b0611e7b91561']}), + ('peppy', '0.40.6', {'checksums': ['a872bf22da2ac9d2e60ea01fdac5a092618957e937d5620f8ba8cd8e552509fb']}), + ('eido', '0.2.3', {'checksums': ['c4e5cb2c8c4d7ae1812afbeafde0737c24cfdee21b22d45af5967c7b6848b565']}), + ('attmap', '0.13.2', {'checksums': ['fdffa45f8671c13428eb8c3a1702bfdd1123badb99f7af14d72ad53cc7e770de']}), + ('oyaml', '1.0', {'checksums': ['ed8fc096811f4763e1907dce29c35895d6d5936c4d0400fe843a91133d4744ed']}), + ('cattrs', '24.1.1', {'checksums': ['16e94a13f9aaf6438bd5be5df521e072b1b00481b4cf807bcb1acbd49f814c08']}), + ('yacman', '0.9.3', {'checksums': ['91f29ecad7abf32425be034619bd5b00a50fe2be23447b1827c34e1fd68c055d']}), + ('pipestat', '0.10.2', {'checksums': ['274cd7ddf44b1750fce854953c4b8d5cde36a23cb73597136442d05bc5a9acaa']}), + ('ubiquerg', '0.8.0', {'checksums': ['3dd8e817c736e45c563bbf9e0d9b252e2a0456729c5644203376a447ffc7e04f']}), + ('cfgv', '3.4.0', {'checksums': ['e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560']}), + ('nodeenv', '1.9.1', {'checksums': ['6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f']}), + ('logmuse', '0.2.8', {'checksums': ['a639d795f33d6876766033dea3c4ceb51617029e5f6e0aa390e7c4bc3012624d']}), + ('textual', '0.79.1', {'checksums': ['2aaa9778beac5e56957794ee492bd8d281d39516ccb0e507e726484a1327d8b2']}), + ('refgenconf', '0.12.2', {'checksums': ['6c9f9ecd8b91b4f75a535cfbdbdfb136f2dc9e9864142d07aa0352c61cf0cf78']}), + ('piper', '0.14.2', { + 'modulename': 'pypiper', + 'checksums': ['fff74a6e7cbf188a3ce023913a9ce63098e7c3acfa73833fd9e4c4096a578035'], + }), + ('url-normalize', '1.4.3', {'checksums': ['d23d3a070ac52a67b83a1c59a0e68f8608d1cd538783b401bc9de2c0fac999b2']}), + ('identify', '2.6.0', {'checksums': ['cb171c685bdc31bcc4c1734698736a7d5b6c8bf2e0c15117f4d469c8640ae5cf']}), + ('questionary', '2.0.1', {'checksums': ['bcce898bf3dbb446ff62830c86c5c6fb9a22a54146f0f5597d3da43b10d8fc8b']}), + ('pdiff', '1.1.4', {'checksums': ['9d8f6f8e7ed2ee61aa2f2526106c0047a2bd80eab7d1237f7086139a6e921c45']}), + ('filetype', '1.2.0', {'checksums': ['66b56cd6474bf41d8c54660347d37afcc3f7d1970648de365c102ef77548aadb']}), + ('requests-cache', '1.2.1', { + 'source_tmpl': 'requests_cache-%(version)s.tar.gz', + 'checksums': ['68abc986fdc5b8d0911318fbb5f7c80eebcd4d01bfacc6685ecf8876052511d1'], + }), + ('trogon', '0.5.0', {'checksums': ['61a57f0f1a38227d90601cd020f46960be8e36947b5e56c6932c2e01ecc5042a']}), + ('pre-commit', '3.8.0', { + 'source_tmpl': 'pre_commit-%(version)s.tar.gz', + 'checksums': ['8bb6494d4a20423842e198980c9ecf9f96607a07ea29549e180eef9ae80fe7af'], + }), + ('refgenie', '0.12.1', {'checksums': ['cfd007ed0981e00d019deb49aaea896952341096494165cb8378488850eec451']}), + (name, version, { + 'source_tmpl': 'nf_core-%(version)s.tar.gz', + 'checksums': ['35bd8d73ecca4eb87443fada31bc7b2562429de3a4bfbf7261db348d14bf54bb'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/ngmlr/ngmlr-0.2.7-foss-2023a.eb b/easybuild/easyconfigs/n/ngmlr/ngmlr-0.2.7-foss-2023a.eb new file mode 100644 index 00000000000..ca0401d69c7 --- /dev/null +++ b/easybuild/easyconfigs/n/ngmlr/ngmlr-0.2.7-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'ngmlr' +version = '0.2.7' + +homepage = 'https://github.com/philres/ngmlr' +description = """Ngmlr is a long-read mapper designed to align PacBilo or Oxford Nanopore to a + reference genome with a focus on reads that span structural variations.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/philres/ngmlr/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['5126a6b3e726cac0da0713883daac688f38587f118428247a9a3ace5a55b29aa'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['bin/ngmlr'], + 'dirs': [''] +} + +sanity_check_commands = ['%(name)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nlohmann_json/nlohmann_json-3.11.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/nlohmann_json/nlohmann_json-3.11.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8be75746afa --- /dev/null +++ b/easybuild/easyconfigs/n/nlohmann_json/nlohmann_json-3.11.3-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'CMakeMake' + +name = 'nlohmann_json' +version = '3.11.3' + +homepage = 'https://github.com/nlohmann/json' +description = """JSON for Modern C++""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/nlohmann/json/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['include/nlohmann/json.hpp'], + 'dirs': ['share/cmake', 'share/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/nsync/nsync-1.29.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/n/nsync/nsync-1.29.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e7c2035444b --- /dev/null +++ b/easybuild/easyconfigs/n/nsync/nsync-1.29.2-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeNinja' + +name = 'nsync' +version = '1.29.2' + +homepage = 'https://github.com/google/nsync' +description = """nsync is a C library that exports various synchronization primitives, such as mutexes""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/google/nsync/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1d63e967973733d2c97e841e3c05fac4d3fa299f01d14c86f2695594c7a4a2ec'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), +] + +sanity_check_paths = { + 'files': ['include/nsync.h', 'lib/libnsync.a', 'lib/libnsync_cpp.a'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/n/numexpr/numexpr-2.9.0-foss-2023a.eb b/easybuild/easyconfigs/n/numexpr/numexpr-2.9.0-foss-2023a.eb new file mode 100644 index 00000000000..74e99150d4b --- /dev/null +++ b/easybuild/easyconfigs/n/numexpr/numexpr-2.9.0-foss-2023a.eb @@ -0,0 +1,21 @@ +name = 'numexpr' +version = '2.9.0' + +homepage = 'https://numexpr.readthedocs.io/en/latest/' +description = """The numexpr package evaluates multiple-operator array expressions many times faster than NumPy can. + It accepts the expression as a string, analyzes it, rewrites it more efficiently, and compiles it on the fly into + code for its internal virtual machine (VM). Due to its integrated just-in-time (JIT) compiler, it does not require a + compiler at runtime.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/pydata/numexpr/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4df4163fcab20030137e8f2aa23e88e1e42e6fe702387cfd95d7675e1d84645e'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/numpy/numpy-1.16.2_relax-long-complex-test.patch b/easybuild/easyconfigs/n/numpy/numpy-1.16.2_relax-long-complex-test.patch new file mode 100644 index 00000000000..5649a5c63d2 --- /dev/null +++ b/easybuild/easyconfigs/n/numpy/numpy-1.16.2_relax-long-complex-test.patch @@ -0,0 +1,17 @@ +Relax test condition for test failing on PPC +See https://github.com/numpy/numpy/issues/15763 + +Author: Alexander Grund (TU Dresden) + +diff -aur numpy-1.16.2/numpy/core/tests/test_umath.py numpy-1.16.2-new/numpy/core/tests/test_umath.py +--- numpy-1.16.2/numpy/core/tests/test_umath.py 2021-03-29 12:29:48.950135026 +0200 ++++ numpy-1.16.2-new/numpy/core/tests/test_umath.py 2021-03-29 12:28:09.000000000 +0200 +@@ -2593,7 +2593,7 @@ + # are accurate down to a few epsilons. (Eg. on Linux 64-bit) + # So, give more leeway for long complex tests here: + # Can use 2.1 for > Ubuntu LTS Trusty (2014), glibc = 2.19. +- check(x_series, 50.0*eps) ++ check(x_series, 5e-19) + else: + check(x_series, 2.1*eps) + check(x_basic, 2.0*eps/1e-3) diff --git a/easybuild/easyconfigs/n/numpy/numpy-1.16.6-foss-2023a-Python-2.7.18.eb b/easybuild/easyconfigs/n/numpy/numpy-1.16.6-foss-2023a-Python-2.7.18.eb new file mode 100644 index 00000000000..a3367b39bd9 --- /dev/null +++ b/easybuild/easyconfigs/n/numpy/numpy-1.16.6-foss-2023a-Python-2.7.18.eb @@ -0,0 +1,37 @@ +name = 'numpy' +version = '1.16.6' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://www.numpy.org' +description = """NumPy is the fundamental package for scientific computing with Python. It contains among other things: + a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran + code, useful linear algebra, Fourier transform, and random number capabilities. Besides its obvious scientific uses, + NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be + defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +sources = [SOURCE_ZIP] +patches = [ # patches copied from SciPy-bundle-2021.10-foss-2021b-Python-2.7.18.eb + 'numpy-1.16.2_relax-long-complex-test.patch', + 'numpy-1.16.6_add_flexiblas_detection.patch', + 'numpy-1.16.6_handle_failing_linalg_test.patch', + 'numpy-1.20.3_fix-fortran-compiler-error.patch', +] +checksums = [ + {'numpy-1.16.6.zip': 'e5cf3fdf13401885e8eea8170624ec96225e2174eb0c611c6f26dd33b489e3ff'}, + {'numpy-1.16.2_relax-long-complex-test.patch': '647dd4099c2968489e5103b50bcd1b3d970b5b536af25ec75efe86127dda07bb'}, + {'numpy-1.16.6_add_flexiblas_detection.patch': '32ca32dd7ee8d6fcdce5875067acd50970c731cbb2603c6d1ad84ff81ff8c6d5'}, + {'numpy-1.16.6_handle_failing_linalg_test.patch': + 'be9dce98649626b7322ed8d1241b74a4e28c1d1de070a8072dc912cad3eb143d'}, + {'numpy-1.20.3_fix-fortran-compiler-error.patch': + '016e0d02ffabe013248c4fd203a4456edee76839f747c05daf92ac1fe9925189'}, +] + +dependencies = [ + ('Python', '2.7.18'), + ('pytest', '4.6.11', versionsuffix), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/numpy/numpy-1.16.6_add_flexiblas_detection.patch b/easybuild/easyconfigs/n/numpy/numpy-1.16.6_add_flexiblas_detection.patch new file mode 100644 index 00000000000..02528b44bc3 --- /dev/null +++ b/easybuild/easyconfigs/n/numpy/numpy-1.16.6_add_flexiblas_detection.patch @@ -0,0 +1,181 @@ +Add flexiblas detection to numpy. +This is just a copy of the openblas detection with name changed. + +Åke Sandgren, 2022-01-13 +diff -ru numpy-1.16.6.orig/numpy/distutils/system_info.py numpy-1.16.6/numpy/distutils/system_info.py +--- numpy-1.16.6.orig/numpy/distutils/system_info.py 2019-12-27 17:24:44.000000000 +0100 ++++ numpy-1.16.6/numpy/distutils/system_info.py 2022-01-13 16:48:14.754235308 +0100 +@@ -20,6 +20,7 @@ + blas_info + lapack_info + openblas_info ++ flexiblas_info + blis_info + blas_opt_info # usage recommended + lapack_opt_info # usage recommended +@@ -395,6 +396,9 @@ + # openblas with embedded lapack + 'openblas_lapack': openblas_lapack_info, # use blas_opt instead + 'openblas_clapack': openblas_clapack_info, # use blas_opt instead ++ 'flexiblas': flexiblas_info, # use blas_opt instead ++ 'flexiblas_lapack': flexiblas_lapack_info, # use blas_opt instead ++ 'flexiblas_clapack': flexiblas_clapack_info, # use blas_opt instead + 'blis': blis_info, # use blas_opt instead + 'lapack_mkl': lapack_mkl_info, # use lapack_opt instead + 'blas_mkl': blas_mkl_info, # use blas_opt instead +@@ -1549,6 +1553,16 @@ + self.set_info(**lapack_mkl_info) + return + ++ flexiblas_info = get_info('flexiblas_lapack') ++ if flexiblas_info: ++ self.set_info(**flexiblas_info) ++ return ++ ++ flexiblas_info = get_info('flexiblas_clapack') ++ if flexiblas_info: ++ self.set_info(**flexiblas_info) ++ return ++ + openblas_info = get_info('openblas_lapack') + if openblas_info: + self.set_info(**openblas_info) +@@ -1633,6 +1647,11 @@ + self.set_info(**blis_info) + return + ++ flexiblas_info = get_info('flexiblas') ++ if flexiblas_info: ++ self.set_info(**flexiblas_info) ++ return ++ + openblas_info = get_info('openblas') + if openblas_info: + self.set_info(**openblas_info) +@@ -1749,6 +1768,126 @@ + return res + + ++class flexiblas_info(blas_info): ++ section = 'flexiblas' ++ dir_env_var = 'FLEXIBLAS' ++ _lib_names = ['flexiblas'] ++ notfounderror = BlasNotFoundError ++ ++ def check_embedded_lapack(self, info): ++ return True ++ ++ def calc_info(self): ++ c = customized_ccompiler() ++ ++ lib_dirs = self.get_lib_dirs() ++ ++ flexiblas_libs = self.get_libs('libraries', self._lib_names) ++ if flexiblas_libs == self._lib_names: # backward compat with 1.8.0 ++ flexiblas_libs = self.get_libs('flexiblas_libs', self._lib_names) ++ ++ info = self.check_libs(lib_dirs, flexiblas_libs, []) ++ ++ if c.compiler_type == "msvc" and info is None: ++ from numpy.distutils.fcompiler import new_fcompiler ++ f = new_fcompiler(c_compiler=c) ++ if f and f.compiler_type == 'gnu95': ++ # Try gfortran-compatible library files ++ info = self.check_msvc_gfortran_libs(lib_dirs, flexiblas_libs) ++ # Skip lapack check, we'd need build_ext to do it ++ assume_lapack = True ++ elif info: ++ assume_lapack = False ++ info['language'] = 'c' ++ ++ if info is None: ++ return ++ ++ # Add extra info for OpenBLAS ++ extra_info = self.calc_extra_info() ++ dict_append(info, **extra_info) ++ ++ if not (assume_lapack or self.check_embedded_lapack(info)): ++ return ++ ++ info['define_macros'] = [('HAVE_CBLAS', None)] ++ self.set_info(**info) ++ ++ def check_msvc_gfortran_libs(self, library_dirs, libraries): ++ # First, find the full path to each library directory ++ library_paths = [] ++ for library in libraries: ++ for library_dir in library_dirs: ++ # MinGW static ext will be .a ++ fullpath = os.path.join(library_dir, library + '.a') ++ if os.path.isfile(fullpath): ++ library_paths.append(fullpath) ++ break ++ else: ++ return None ++ ++ # Generate numpy.distutils virtual static library file ++ tmpdir = os.path.join(os.getcwd(), 'build', 'flexiblas') ++ if not os.path.isdir(tmpdir): ++ os.makedirs(tmpdir) ++ ++ info = {'library_dirs': [tmpdir], ++ 'libraries': ['flexiblas'], ++ 'language': 'f77'} ++ ++ fake_lib_file = os.path.join(tmpdir, 'flexiblas.fobjects') ++ fake_clib_file = os.path.join(tmpdir, 'flexiblas.cobjects') ++ with open(fake_lib_file, 'w') as f: ++ f.write("\n".join(library_paths)) ++ with open(fake_clib_file, 'w') as f: ++ pass ++ ++ return info ++ ++class flexiblas_lapack_info(flexiblas_info): ++ section = 'flexiblas' ++ dir_env_var = 'FLEXIBLAS' ++ _lib_names = ['flexiblas'] ++ notfounderror = BlasNotFoundError ++ ++ def check_embedded_lapack(self, info): ++ res = False ++ c = customized_ccompiler() ++ ++ tmpdir = tempfile.mkdtemp() ++ s = """void zungqr_(); ++ int main(int argc, const char *argv[]) ++ { ++ zungqr_(); ++ return 0; ++ }""" ++ src = os.path.join(tmpdir, 'source.c') ++ out = os.path.join(tmpdir, 'a.out') ++ # Add the additional "extra" arguments ++ try: ++ extra_args = info['extra_link_args'] ++ except Exception: ++ extra_args = [] ++ if sys.version_info < (3, 5) and sys.version_info > (3, 0) and c.compiler_type == "msvc": ++ extra_args.append("/MANIFEST") ++ try: ++ with open(src, 'wt') as f: ++ f.write(s) ++ obj = c.compile([src], output_dir=tmpdir) ++ try: ++ c.link_executable(obj, out, libraries=info['libraries'], ++ library_dirs=info['library_dirs'], ++ extra_postargs=extra_args) ++ res = True ++ except distutils.ccompiler.LinkError: ++ res = False ++ finally: ++ shutil.rmtree(tmpdir) ++ return res ++ ++class flexiblas_clapack_info(flexiblas_lapack_info): ++ _lib_names = ['flexiblas', 'lapack'] ++ + class openblas_info(blas_info): + section = 'openblas' + dir_env_var = 'OPENBLAS' diff --git a/easybuild/easyconfigs/n/numpy/numpy-1.16.6_handle_failing_linalg_test.patch b/easybuild/easyconfigs/n/numpy/numpy-1.16.6_handle_failing_linalg_test.patch new file mode 100644 index 00000000000..d85fb475809 --- /dev/null +++ b/easybuild/easyconfigs/n/numpy/numpy-1.16.6_handle_failing_linalg_test.patch @@ -0,0 +1,17 @@ +linalg/test_nan is marked xfail in at least 1.21.3 +Do so here too since it fails with newer openblas/compiler versions. + +Åke sandgren, 2022-01-13 +diff -ru numpy-1.16.6.orig/numpy/linalg/tests/test_linalg.py numpy-1.16.6/numpy/linalg/tests/test_linalg.py +--- numpy-1.16.6.orig/numpy/linalg/tests/test_linalg.py 2019-12-27 17:24:44.000000000 +0100 ++++ numpy-1.16.6/numpy/linalg/tests/test_linalg.py 2022-01-13 17:21:36.658857878 +0100 +@@ -740,6 +740,9 @@ + for A, p in itertools.product(As, p_neg): + linalg.cond(A, p) + ++ @pytest.mark.xfail(True, run=False, ++ reason="Platform/LAPACK-dependent failure, " ++ "see gh-18914") + def test_nan(self): + # nans should be passed through, not converted to infs + ps = [None, 1, -1, 2, -2, 'fro'] diff --git a/easybuild/easyconfigs/n/numpy/numpy-1.20.3_fix-fortran-compiler-error.patch b/easybuild/easyconfigs/n/numpy/numpy-1.20.3_fix-fortran-compiler-error.patch new file mode 100644 index 00000000000..32b41061f06 --- /dev/null +++ b/easybuild/easyconfigs/n/numpy/numpy-1.20.3_fix-fortran-compiler-error.patch @@ -0,0 +1,43 @@ +Using Fortran compilers which differ "too much" from GCC fails building NumPy with something like +> A valid Fortran version was not found in this string: [...] + +See https://github.com/easybuilders/easybuild-easyblocks/issues/2518 and https://github.com/numpy/numpy/pull/26502 + +Fix by converting the hard error into a warning as the issue would be handled later if required. +E.g. for building NumPy we don't need a Fortran compiler at all. + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/distutils/fcompiler/gnu.py b/numpy/distutils/fcompiler/gnu.py +index eac4cbb477..8a1043fe26 100644 +--- a/numpy/distutils/fcompiler/gnu.py ++++ b/numpy/distutils/fcompiler/gnu.py +@@ -8,6 +8,7 @@ import hashlib + import base64 + import subprocess + from subprocess import Popen, PIPE, STDOUT ++from distutils import log + from numpy.distutils.exec_command import filepath_from_subprocess_output + from numpy.distutils.fcompiler import FCompiler + from distutils.version import LooseVersion +@@ -69,9 +70,9 @@ class GnuFCompiler(FCompiler): + # from the version string + return ('gfortran', v) + +- # If still nothing, raise an error to make the problem easy to find. +- err = 'A valid Fortran version was not found in this string:\n' +- raise ValueError(err + version_string) ++ # If still nothing, warn to make the problem easy to find. ++ log.warn('A valid Fortran version was not found in this string:\n' ++ + version_string) + + def version_match(self, version_string): + v = self.gnu_version_match(version_string) +@@ -539,7 +540,6 @@ def _can_target(cmd, arch): + + + if __name__ == '__main__': +- from distutils import log + from numpy.distutils import customized_fcompiler + log.set_verbosity(2) + diff --git a/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..91b8598722a --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,67 @@ +easyblock = 'PythonBundle' + +name = 'ONNX-Runtime' +version = '1.19.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://onnxruntime.ai' +description = """ONNX Runtime inference can enable faster customer experiences and lower costs, +supporting models from deep learning frameworks such as PyTorch and +TensorFlow/Keras as well as classical machine learning libraries such as +scikit-learn, LightGBM, XGBoost, etc. ONNX Runtime is compatible with different +hardware, drivers, and operating systems, and provides optimal performance by +leveraging hardware accelerators where applicable alongside graph optimizations +and transforms.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('ONNX', '1.15.0'), + ('flatbuffers-python', '23.5.26'), + ('sympy', '1.12'), +] + +use_pip = True + +local_whl_tmpl = 'onnxruntime_gpu-%%(version)s-cp311-cp311-manylinux_2_27_%s.manylinux_2_28_%s.whl' + +exts_list = [ + ('humanfriendly', '10.0', { + 'checksums': ['6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc'], + }), + ('coloredlogs', '15.0.1', { + 'checksums': ['7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0'], + }), + (name, version, { + 'source_urls': ['http://pypi.python.org/packages/source/o/onnxruntime-gpu'], + 'sources': [local_whl_tmpl % ('%(arch)s', '%(arch)s')], + 'checksums': [{ + local_whl_tmpl % ('x86_64', 'x86_64'): + '562fc7c755393eaad9751e56149339dd201ffbfdb3ef5f43ff21d0619ba9045f', + }], + 'modulename': 'onnxruntime', + }), +] + +# Due to its name 'onnxruntime-gpu', this package does not fullfil requirements on 'onnxruntime' although it provides +# the 'onnxruntime' python module. Fix this dependency issue in pip by creating a stub 'onnxruntime' dist-info folder +_py_sitepkgs = '%(installdir)s/lib/python%(pyshortver)s/site-packages' +postinstallcmds = [ + "cp -r %s/onnxruntime{_gpu,}-%%(version)s.dist-info" % _py_sitepkgs, + "sed -i 's/onnxruntime.gpu/onnxruntime/g' %s/onnxruntime-%%(version)s.dist-info/{METADATA,RECORD}" % _py_sitepkgs, +] + +sanity_pip_check = True + +_py_sitepkgs_dirs = ['onnxruntime', 'onnxruntime-%(version)s.dist-info', 'onnxruntime_gpu-%(version)s.dist-info'] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%%(pyshortver)s/site-packages/%s' % x for x in _py_sitepkgs_dirs], +} + +options = {'modulename': 'onnxruntime'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb new file mode 100644 index 00000000000..440ae5d93e7 --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'ONNX-Runtime' +version = '1.19.2' + +homepage = 'https://onnxruntime.ai' +description = """ONNX Runtime inference can enable faster customer experiences and lower costs, +supporting models from deep learning frameworks such as PyTorch and +TensorFlow/Keras as well as classical machine learning libraries such as +scikit-learn, LightGBM, XGBoost, etc. ONNX Runtime is compatible with different +hardware, drivers, and operating systems, and provides optimal performance by +leveraging hardware accelerators where applicable alongside graph optimizations +and transforms.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('ONNX', '1.15.0'), + ('flatbuffers-python', '23.5.26'), + ('sympy', '1.12'), +] + +use_pip = True + +local_whl_tmpl = 'onnxruntime-%%(version)s-cp311-cp311-manylinux_2_27_%s.manylinux_2_28_%s.whl' + +exts_list = [ + ('humanfriendly', '10.0', { + 'checksums': ['6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc'], + }), + ('coloredlogs', '15.0.1', { + 'checksums': ['7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0'], + }), + (name, version, { + 'source_urls': ['http://pypi.python.org/packages/source/o/onnxruntime'], + 'sources': [local_whl_tmpl % ('%(arch)s', '%(arch)s')], + 'checksums': [{ + local_whl_tmpl % ('x86_64', 'x86_64'): + 'a36511dc07c5c964b916697e42e366fa43c48cdb3d3503578d78cef30417cb84', + local_whl_tmpl % ('aarch64', 'aarch64'): + 'c1dfe4f660a71b31caa81fc298a25f9612815215a47b286236e61d540350d7b6', + }], + 'modulename': 'onnxruntime', + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/o/OPARI2/OPARI2-2.0.8-GCCcore-13.3.0.eb b/easybuild/easyconfigs/o/OPARI2/OPARI2-2.0.8-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..503a56951d0 --- /dev/null +++ b/easybuild/easyconfigs/o/OPARI2/OPARI2-2.0.8-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2024 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr +# Markus Geimer +# Jan André Reuter +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +# # + +easyblock = 'ConfigureMake' + +name = 'OPARI2' +version = '2.0.8' + +homepage = 'https://www.score-p.org' +description = """ + OPARI2, the successor of Forschungszentrum Juelich's OPARI, is a + source-to-source instrumentation tool for OpenMP and hybrid codes. + It surrounds OpenMP directives and runtime library calls with calls + to the POMP2 measurement interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/%(namelower)s/tags/%(namelower)s-%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['196e59a2a625e6c795a6124c61e784bad142f9f38df0b4fa4d435ba9b9c19721'] + +builddependencies = [ + ('binutils', '2.42'), +] + + +sanity_check_paths = { + 'files': ['bin/opari2', 'include/opari2/pomp2_lib.h'], + 'dirs': [], +} + +sanity_check_commands = ['opari2-config --help'] + +moduleclass = 'perf' 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.0-foss-2023b-avx2.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-foss-2023b-avx2.eb new file mode 100644 index 00000000000..ff3112bb084 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-foss-2023b-avx2.eb @@ -0,0 +1,37 @@ +name = 'ORCA' +version = '6.0.0' +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': 'foss', '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_avx2_shared_openmpi416.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_0_linux_x86-64_avx2_shared_openmpi416.tar.xz + '02c21294efe7b1b721e26cb90f98ee15ad682d02807201b7d217dfe67905a2fd', +] + +# optional dependency for ORCA, +# see also https://xtb-docs.readthedocs.io/en/latest/setup.html#using-xtb-with-orca +dependencies = [('xtb', '6.7.1')] + +postinstallcmds = ["cd %(installdir)s/bin && ln -s $EBROOTXTB/bin/xtb otool_xtb"] + +enhance_sanity_check = True + +sanity_check_paths = { + 'files': ['bin/orca', 'bin/otool_xtb'], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-foss-2023b.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-foss-2023b.eb new file mode 100644 index 00000000000..f28a5a3ff99 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-foss-2023b.eb @@ -0,0 +1,36 @@ +name = 'ORCA' +version = '6.0.0' + +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': 'foss', '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.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_0_linux_x86-64_shared_openmpi416.tar.xz + '219bd1deb6d64a63cb72471926cb81665cbbcdec19f9c9549761be67d49a29c6', +] + +# optional dependency for ORCA, +# see also https://xtb-docs.readthedocs.io/en/latest/setup.html#using-xtb-with-orca +dependencies = [('xtb', '6.7.1')] + +postinstallcmds = ["cd %(installdir)s/bin && ln -s $EBROOTXTB/bin/xtb otool_xtb"] + +enhance_sanity_check = True + +sanity_check_paths = { + 'files': ['bin/orca', 'bin/otool_xtb'], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a-avx2.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a-avx2.eb new file mode 100644 index 00000000000..cdc92c16f64 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a-avx2.eb @@ -0,0 +1,24 @@ +name = 'ORCA' +version = '6.0.0' +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_avx2_shared_openmpi416.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_0_linux_x86-64_avx2_shared_openmpi416.tar.xz + '02c21294efe7b1b721e26cb90f98ee15ad682d02807201b7d217dfe67905a2fd', +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a.eb new file mode 100644 index 00000000000..8bf88fa8129 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.0-gompi-2023a.eb @@ -0,0 +1,23 @@ +name = 'ORCA' +version = '6.0.0' + +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.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_0_linux_x86-64_shared_openmpi416.tar.xz + '219bd1deb6d64a63cb72471926cb81665cbbcdec19f9c9549761be67d49a29c6', +] + +moduleclass = 'chem' 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/OTF2/OTF2-3.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb index 6e982449e9e..fe8a5244c12 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,21 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.10.4'), ] +local_pyshortver = '3.10' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } - -sanity_check_commands = ['%(namelower)s-config --help'] +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.2.0.eb index 7c4d60f0514..488b8e0de0d 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.2.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,22 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.9.6'), ] +local_pyshortver = '3.9' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] -sanity_check_commands = ['%(namelower)s-config --help'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.3.0.eb index 61eba75f5f0..6756aa72eac 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.3.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,21 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.10.4'), ] +local_pyshortver = '3.10' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } - -sanity_check_commands = ['%(namelower)s-config --help'] +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.2.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.2.0.eb index 54478bf62fa..f4c842e0450 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.2.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,21 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.10.8'), ] +local_pyshortver = '3.10' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } - -sanity_check_commands = ['%(namelower)s-config --help'] +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.3.0.eb index 17595d97acb..db786b12a41 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.3.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,22 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), ] +local_pyshortver = '3.11' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } - -sanity_check_commands = ['%(namelower)s-config --help'] +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.2.0.eb index 48cbf931ec5..c5108c8daca 100644 --- a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.2.0.eb @@ -3,6 +3,7 @@ # Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer +# Jan Andre Reuter # License:: 3-clause BSD # # This work is based on experiences from the UNITE project @@ -34,17 +35,22 @@ builddependencies = [ dependencies = [ # SIONlib container support (optional): ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), ] +local_pyshortver = '3.11' configopts = '--enable-shared' +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} sanity_check_paths = { 'files': ['bin/otf2-config', 'include/otf2/otf2.h', 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], 'dirs': [], } - -sanity_check_commands = ['%(namelower)s-config --help'] +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fdf78e0772d --- /dev/null +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.3.0.eb @@ -0,0 +1,60 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# Copyright:: Copyright 2013-2024 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr +# Markus Geimer +# Jan André Reuter +# 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 = 'OTF2' +version = '3.0.3' + +homepage = 'https://www.score-p.org' +description = """ + The Open Trace Format 2 is a highly scalable, memory efficient event trace + data format plus support library. It is the new standard trace format for + Scalasca, Vampir, and TAU and is open for other tools. + +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/%(namelower)s/tags/%(namelower)s-%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['otf2-3.0.3-update-py-compile.patch'] +checksums = [ + '18a3905f7917340387e3edc8e5766f31ab1af41f4ecc5665da6c769ca21c4ee8', # otf2-3.0.3.tar.gz + '5b1dad8788642eaa97bc03003c9329380340ba10649e556a30ce541165cf8da4', # otf2-3.0.3-update-py-compile.patch +] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + # SIONlib container support (optional): + ('SIONlib', '1.7.7', '-tools'), + # OTF2 Python bindings + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +local_pyshortver = '3.12' +configopts = '--enable-shared' + +modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]} + +sanity_check_paths = { + 'files': ['bin/otf2-config', 'include/otf2/otf2.h', + 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], + 'dirs': [], +} +sanity_check_commands = ['%(namelower)s-config --help', + 'python -c "import %(namelower)s"'] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/otf2-3.0.3-update-py-compile.patch b/easybuild/easyconfigs/o/OTF2/otf2-3.0.3-update-py-compile.patch new file mode 100644 index 00000000000..539726fbf14 --- /dev/null +++ b/easybuild/easyconfigs/o/OTF2/otf2-3.0.3-update-py-compile.patch @@ -0,0 +1,252 @@ +This patch updates the py-compile file used by OTF2 during the install process +to fix the removal of the imp module in Python 3.12 which was long deprecated. +With this, OTF2 can be installed with Python 3.12, which would previously fail +with a module not found error. + +--- build-config/py-compile 2023-02-12 17:32:31.274132086 +0100 ++++ ../../otf2/build-config/py-compile 2024-08-22 17:44:59.939242651 +0200 +@@ -1,7 +1,7 @@ + #!/bin/sh + # py-compile - Compile a Python program + +-scriptversion=2011-06-08.12; # UTC ++scriptversion=2023-03-30.00; # UTC + + # Copyright (C) 2000-2013 Free Software Foundation, Inc. + +@@ -27,7 +27,7 @@ + # bugs to or send patches to + # . + +-if [ -z "$PYTHON" ]; then ++if test -z "$PYTHON"; then + PYTHON=python + fi + +@@ -79,13 +79,20 @@ + ;; + -h|--help) + cat <<\EOF +-Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] [--silent] FILES..." ++Usage: py-compile [options] FILES... + + Byte compile some python scripts FILES. Use --destdir to specify any + leading directory path to the FILES that you don't want to include in the + byte compiled file. Specify --basedir for any additional path information you + do want to be shown in the byte compiled file. + ++Options: ++ --basedir DIR Prefix all FILES with DIR, and include in error messages. ++ --destdir DIR Prefix all FILES with DIR before compiling. ++ -v, --version Display version information. ++ -h, --help This help screen. ++ --silent Operate silently. ++ + Example: + py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py + +@@ -114,87 +121,165 @@ + shift + done + +-files=$* +-if test -z "$files"; then +- usage_error "no files given" ++if test $# -eq 0; then ++ usage_error "no files given" + fi + + # if basedir was given, then it should be prepended to filenames before + # byte compilation. +-if [ -z "$basedir" ]; then +- pathtrans="path = file" ++if test -z "$basedir"; then ++ pathtrans="path = file" + else +- pathtrans="path = os.path.join('$basedir', file)" ++ pathtrans="path = os.path.join('$basedir', file)" + fi + + # if destdir was given, then it needs to be prepended to the filename to + # byte compile but not go into the compiled file. +-if [ -z "$destdir" ]; then +- filetrans="filepath = path" ++if test -z "$destdir"; then ++ filetrans="filepath = path" + else +- filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" ++ filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" ++fi ++ ++python_major=`$PYTHON -c 'import sys; print(sys.version_info[0])'` ++if test -z "$python_major"; then ++ usage_error "could not determine $PYTHON major version" + fi + ++case $python_major in ++[01]) ++ usage_error "python version 0.x and 1.x not supported" ++ ;; ++esac ++ ++python_minor=`$PYTHON -c 'import sys; print(sys.version_info[1])'` ++ ++# NB: When adding support for newer versions, prefer copying & adding new cases ++# rather than try to keep things merged with shell variables. ++ ++# First byte compile (no optimization) all the modules. ++# This works for all currently known Python versions. + $PYTHON -c " +-import sys, os, py_compile, imp ++import sys, os, py_compile ++ ++try: ++ import importlib ++except ImportError: ++ importlib = None ++ ++# importlib.util.cache_from_source was added in 3.4 ++if ( ++ hasattr(importlib, 'util') ++ and hasattr(importlib.util, 'cache_from_source') ++): ++ destpath = importlib.util.cache_from_source ++else: ++ destpath = lambda filepath: filepath + 'c' + +-files = '''$files''' + silent = $silent + blu = '''$blu''' + std = '''$std''' + + if not silent: +- sys.stdout.write('Byte-compiling python modules...') +-for file in files.split(): ++ sys.stdout.write('Byte-compiling python modules...\n') ++for file in sys.argv[1:]: + $pathtrans + $filetrans +- if not os.path.exists(filepath) or not (len(filepath) >= 3 +- and filepath[-3:] == '.py'): +- continue ++ if ( ++ not os.path.exists(filepath) ++ or not (len(filepath) >= 3 and filepath[-3:] == '.py') ++ ): ++ continue + if not silent: +- sys.stdout.write(' ' + file) ++ sys.stdout.write(file + ' ') + sys.stdout.flush() + else: +- sys.stdout.write(' PYTHON {}{}{}\n'.format(blu, filepath + 'c', std)) +- if hasattr(imp, 'get_tag'): +- py_compile.compile(filepath, imp.cache_from_source(filepath), path) +- else: +- py_compile.compile(filepath, filepath + 'c', path) ++ sys.stdout.write(' PYCACHE {}{}{}\n'.format(blu, destpath(filepath), std)) ++ py_compile.compile(filepath, destpath(filepath), path) + if not silent: +- sys.stdout.write('\n')" || exit $? ++ sys.stdout.write('\n')" "$@" || exit $? + +-# this will fail for python < 1.5, but that doesn't matter ... ++# Then byte compile w/optimization all the modules. + $PYTHON -O -c " +-import sys, os, py_compile, imp ++import sys, os, py_compile ++ ++try: ++ import importlib ++except ImportError: ++ importlib = None ++ ++# importlib.util.cache_from_source was added in 3.4 ++if ( ++ hasattr(importlib, 'util') ++ and hasattr(importlib.util, 'cache_from_source') ++): ++ destpath = importlib.util.cache_from_source ++else: ++ destpath = lambda filepath: filepath + 'o' + +-# pypy does not use .pyo optimization +-if hasattr(sys, 'pypy_translation_info'): ++# pypy2 does not use .pyo optimization ++if sys.version_info.major <= 2 and hasattr(sys, 'pypy_translation_info'): + sys.exit(0) + +-files = '''$files''' + silent = $silent + blu = '''$blu''' + std = '''$std''' + + if not silent: +- sys.stdout.write('Byte-compiling python modules (optimized versions)...') +-for file in files.split(): ++ sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') ++for file in sys.argv[1:]: + $pathtrans + $filetrans +- if not os.path.exists(filepath) or not (len(filepath) >= 3 +- and filepath[-3:] == '.py'): +- continue ++ if ( ++ not os.path.exists(filepath) ++ or not (len(filepath) >= 3 and filepath[-3:] == '.py') ++ ): ++ continue + if not silent: +- sys.stdout.write(' ' + file) ++ sys.stdout.write(file + ' ') + sys.stdout.flush() + else: +- sys.stdout.write(' PYTHON {}{}{}\n'.format(blu, filepath + 'o', std)) +- if hasattr(imp, 'get_tag'): +- py_compile.compile(filepath, imp.cache_from_source(filepath, False), path) ++ sys.stdout.write(' PYCACHE {}{}{}\n'.format(blu, destpath(filepath), std)) ++ py_compile.compile(filepath, destpath(filepath), path) ++if not silent: ++ sys.stdout.write('\n')" "$@" 2>/dev/null || exit $? ++ ++# Then byte compile w/more optimization. ++# Only do this for Python 3.5+, see https://bugs.gnu.org/38043 for background. ++case $python_major.$python_minor in ++2.*|3.[0-4]) ++ ;; ++*) ++ $PYTHON -OO -c " ++import sys, os, py_compile, importlib ++ ++destpath = importlib.util.cache_from_source ++ ++silent = $silent ++blu = '''$blu''' ++std = '''$std''' ++ ++if not silent: ++ sys.stdout.write('Byte-compiling python modules (more optimized versions)' ++ ' ...\n') ++for file in sys.argv[1:]: ++ $pathtrans ++ $filetrans ++ if ( ++ not os.path.exists(filepath) ++ or not (len(filepath) >= 3 and filepath[-3:] == '.py') ++ ): ++ continue ++ if not silent: ++ sys.stdout.write(file + ' ') ++ sys.stdout.flush() + else: +- py_compile.compile(filepath, filepath + 'o', path) ++ sys.stdout.write(' PYCACHE {}{}{}\n'.format(blu, destpath(filepath), std)) ++ py_compile.compile(filepath, destpath(filepath), path) + if not silent: +- sys.stdout.write('\n')" 2>/dev/null || : ++ sys.stdout.write('\n')" "$@" 2>/dev/null || exit $? ++ ;; ++esac + + # Local Variables: + # mode: shell-script 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/OpenEXR/OpenEXR-3.2.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/o/OpenEXR/OpenEXR-3.2.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f6e66db69ae --- /dev/null +++ b/easybuild/easyconfigs/o/OpenEXR/OpenEXR-3.2.4-GCCcore-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'CMakeMake' + +name = 'OpenEXR' +version = '3.2.4' + +homepage = 'https://www.openexr.com/' +description = """OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic + for use in computer imaging applications""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['81e6518f2c4656fdeaf18a018f135e96a96e7f66dbe1c1f05860dd94772176cc'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] +dependencies = [ + ('Imath', '3.1.11'), + ('zlib', '1.3.1') +] + +local_libs, local_bins = [ + ['Iex', 'IlmThread', 'OpenEXR', 'OpenEXRUtil'], + ['envmap', 'header', 'makepreview', 'maketiled', 'multipart', 'multiview', 'stdattr'] +] + +sanity_check_paths = { + 'files': ( + ['lib/lib%s.%s' % (s, SHLIB_EXT) for s in local_libs] + + ['bin/exr%s' % b for b in local_bins] + ), + 'dirs': ['include/%(name)s', 'share'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705-foss-2023a-Python-2.7.18.eb b/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705-foss-2023a-Python-2.7.18.eb new file mode 100644 index 00000000000..b65ce71cf76 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705-foss-2023a-Python-2.7.18.eb @@ -0,0 +1,66 @@ +easyblock = 'EB_OpenFOAM' + +name = 'OpenFOAM-Extend' +local_commit = 'aa97a0' +version = '4.1-20210705' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://www.extend-project.de/' +description = """OpenFOAM is a free, open source CFD software package. +OpenFOAM has an extensive range of features to solve anything from complex fluid flows +involving chemical reactions, turbulence and heat transfer, +to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +sources = [{ + 'filename': '%%(name)s-%%(version)s-%s.tar.gz' % local_commit, + 'git_config': { + 'url': 'https://git.code.sf.net/p/foam-extend/', + 'repo_name': 'foam-extend-4.1', + 'commit': local_commit, + }, +}] +patches = [ + 'OpenFOAM-Extend-3.2-ParMGridGen.patch', + 'OpenFOAM-Extend-3.1_build-qa.patch', + 'OpenFOAM-Extend-4.1_comp-mpi.patch', + 'OpenFOAM-Extend-3.1_skip-ThirdParty-OpenMPI.patch', + 'OpenFOAM-Extend-4.1-20210705_fix-private-PackedList.patch', +] +checksums = [ + # no checksum for OpenFOAM-Extend-4.1-20200408-f2c557.tar.gz since it's created from git repo, + # and hence resuluting tarball won't be exactly the same on all systems + None, + 'f7676a7a12ced7c74caea64c62826a28449fdb2beb8b5be2c4ae7528ffece16e', # OpenFOAM-Extend-3.2-ParMGridGen.patch + '14dcc12ea7191ba42a9c297fcb2f4fbc2c55bf57226029489aa116e2d060b4bf', # OpenFOAM-Extend-3.1_build-qa.patch + 'e71a77b6f39653f9a0d4b0ce6691433c742df74f23402782c69a8b736c98eb7a', # OpenFOAM-Extend-4.1_comp-mpi.patch + # OpenFOAM-Extend-3.1_skip-ThirdParty-OpenMPI.patch + 'c88b23cd2f5dcf3bd86e02d7ea5dc6719c2049cf4b20e39f1b3262381dee3c50', + # OpenFOAM-Extend-4.1-20210705_fix-private-PackedList.patch + '47868f35d9a899047be8da451df46e165fc813bc809b96b1c35a0cccddb1a9e6', +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('M4', '1.4.19'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('hwloc', '2.9.1'), + ('ParMETIS', '4.0.3'), + ('METIS', '5.1.0'), # order matters, METIS need to be listed after ParMETIS to get $CPATH right + ('SCOTCH', '7.0.3'), + ('Mesquite', '2.3.0'), + ('ParMGridGen', '1.0'), + ('Python', '2.7.18'), + # Libccmio v2.6.1, zoltan v3.5 +] + +# too many builds in parallel actually slows down the build +maxparallel = 4 + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705_fix-private-PackedList.patch b/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705_fix-private-PackedList.patch new file mode 100644 index 00000000000..84229fdd90a --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM-Extend/OpenFOAM-Extend-4.1-20210705_fix-private-PackedList.patch @@ -0,0 +1,14 @@ +fix for: +error: class Foam::UList Foam::UList::UList is private within this context +see also https://sourceforge.net/p/foam-extend/tickets/68/ +--- foam-extend-4.1-20210705/src/foam/containers/Lists/PackedList/PackedList.H.orig 2024-09-12 21:13:26.103914000 +0200 ++++ foam-extend-4.1-20210705/src/foam/containers/Lists/PackedList/PackedList.H 2024-09-12 21:13:53.608924991 +0200 +@@ -147,7 +147,7 @@ + class PackedList + : + public PackedListCore, +- private List ++ public List + { + protected: + diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-ThirdParty.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-ThirdParty.patch new file mode 100644 index 00000000000..e8a0b33adf7 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-ThirdParty.patch @@ -0,0 +1,397 @@ +# This patch removes all need for the ThirdParty files of OpenFOAM: +# we use EB dependencies for everything. It adjusts the paths, variables, etc +# We also let the install dir, compiler, etc be set by EB. +# Aligned hunks by Leon Kos and updated by Simon Branford (University of Birmingham). +# Based on patch for OpenFOAM 5.0 and 4.1 by Kenneth Hoste (HPC-UGent) and Ward Poelmans + +diff -ru OpenFOAM-12-version-12/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-12/applications/utilities/postProcessing/graphics/PVReaders/Allwmake +--- OpenFOAM-12-version-12/applications/utilities/postProcessing/graphics/PVReaders/Allwmake ++++ OpenFOAM-12/applications/utilities/postProcessing/graphics/PVReaders/Allwmake +@@ -11,8 +11,8 @@ + fi + + # Ensure CMake gets the correct C/C++ compilers +-[ -n "$WM_CC" ] && export CC="$WM_CC" +-[ -n "$WM_CXX" ] && export CXX="$WM_CXX" ++#[ -n "$WM_CC" ] && export CC="$WM_CC" ++#[ -n "$WM_CXX" ] && export CXX="$WM_CXX" + + wmake $targetType vtkPVblockMesh + wmake $targetType vtkPVFoam +diff -ru OpenFOAM-12-version-12/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt OpenFOAM-12/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt +--- OpenFOAM-12-version-12/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt ++++ OpenFOAM-12/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt +@@ -2,6 +2,8 @@ + + PROJECT(PVReaders) + ++FIND_PACKAGE(MPI REQUIRED) ++ + FIND_PACKAGE(ParaView REQUIRED) + + INCLUDE(GNUInstallDirs) +diff -ru OpenFOAM-12-version-12/etc/bashrc OpenFOAM-12/etc/bashrc +--- OpenFOAM-12-version-12/etc/bashrc ++++ OpenFOAM-12/etc/bashrc +@@ -43,12 +43,13 @@ + # + [ "$BASH" ] && bashrcFile=${BASH_SOURCE} + [ "$ZSH_NAME" ] && bashrcFile=$0 +-if [ -n "$bashrcFile" ] +-then +- export FOAM_INST_DIR=$(cd $(dirname $bashrcFile)/../.. && pwd -P) +-else +- export FOAM_INST_DIR=$HOME/$WM_PROJECT +-fi ++#if [ -n "$bashrcFile" ] ++#then ++# export FOAM_INST_DIR=$(cd $(dirname $bashrcFile)/../.. && pwd -P) ++#else ++# export FOAM_INST_DIR=$HOME/$WM_PROJECT ++#fi ++# For Easybuild: set by the module + unset bashrcFile + # + # Please set to the appropriate path if the above default is not correct. E.g., +diff -ru OpenFOAM-12-version-12/etc/config.sh/gperftools OpenFOAM-12/etc/config.sh/gperftools +--- OpenFOAM-12-version-12/etc/config.sh/gperftools ++++ OpenFOAM-12/etc/config.sh/gperftools +@@ -29,13 +29,7 @@ + # + #------------------------------------------------------------------------------ + +-version=svn +-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER +- +-GPERFTOOLS_VERSION=gperftools-$version +-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION +- +-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH +-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH ++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS ++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-12-version-12/etc/config.sh/metis OpenFOAM-12/etc/config.sh/metis +--- OpenFOAM-12-version-12/etc/config.sh/metis ++++ OpenFOAM-12/etc/config.sh/metis +@@ -37,32 +37,8 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the metis installation +-case "$METIS_TYPE" in +-none) +- ;; +-system) +- export METIS_VERSION=system +- export METIS_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$METIS_VERSION" ] +- then +- metisSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/metis-*) +- else +- metisSrcDir=$WM_THIRD_PARTY_DIR/metis-$METIS_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$metisSrcDir" ] +- then +- export METIS_VERSION=${metisSrcDir##*metis-} +- export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/metis-$METIS_VERSION +- fi +- # Clean up +- unset metisSrcDir +- ;; +-esac ++export METIS_VERSION=metis-$EBVERSIONMETIS ++export METIS_ARCH_PATH=$EBROOTMETIS + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -ru OpenFOAM-12-version-12/etc/config.sh/mpi OpenFOAM-12/etc/config.sh/mpi +--- OpenFOAM-12-version-12/etc/config.sh/mpi ++++ OpenFOAM-12/etc/config.sh/mpi +@@ -254,6 +254,9 @@ + _foamAddPath $MPI_ARCH_PATH/bin64 + _foamAddLib $MPI_ARCH_PATH/lib/release + ;; ++EASYBUILDMPI) ++ export FOAM_MPI=mpi ++ ;; + *) + export FOAM_MPI=dummy + ;; +diff -ru OpenFOAM-12-version-12/etc/config.sh/paraview OpenFOAM-12/etc/config.sh/paraview +--- OpenFOAM-12-version-12/etc/config.sh/paraview ++++ OpenFOAM-12/etc/config.sh/paraview +@@ -38,117 +38,13 @@ + ) \ + && PATH="$cleaned" + +-# Detect the most recent version of cmake available and add to the PATH +-cmakeDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/cmake-*) +-if [ -n "$cmakeDir" ] +-then +- export PATH=$cmakeDir/bin:$PATH +-fi +-unset cmakeDir +- +-# Set up the paraview environment +-case "$ParaView_TYPE" in +-none) +- ;; +- +-system) +- +- # Look for a paraview installation +- if pvserverExe=$(which pvserver 2> /dev/null) +- then +- paraviewBinDir=$(dirname $pvserverExe) +- paraviewBinDir=$(cd $paraviewBinDir && pwd -P) +- fi +- +- # Set the environment +- if [ -d "$paraviewBinDir" ] +- then +- export ParaView_DIR=$(dirname $paraviewBinDir) +- export ParaView_LIB_DIR=$(unset LD_LIBRARY_PATH && \ +- ldd $paraviewBinDir/paraview | \ +- grep -o "/.*/libpqCore-pv.*.so" | \ +- xargs dirname) +- export ParaView_VERSION=$(unset LD_LIBRARY_PATH && \ +- pvserver --version 2> /dev/null | \ +- awk '{print $NF}') +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the library path +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- fi +- +- unset pvserverExe paraviewBinDir +- ;; +- +-paraviewopenfoam) +- +- # Look for a paraview installation. The version should be set externally. +- if [ -n "$ParaView_VERSION" ] +- then +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- paraviewDir=/opt/paraviewopenfoam$(echo "$ParaView_MAJOR" | tr -d '.') +- fi +- +- # Set the environment +- if [ -d "$paraviewDir" ] +- then +- export ParaView_DIR=$paraviewDir +- export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') +- export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the path and the library path +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- fi +- +- unset paraviewDir +- ;; +- +-OpenFOAM | ThirdParty) +- +- # Look for a paraview installation +- if [ -z "$ParaView_VERSION" ] +- then +- paraviewDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/platforms/$WM_ARCH$WM_COMPILER/ParaView-*) +- else +- paraviewDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/ParaView-$ParaView_VERSION +- fi +- +- # Set the environment +- if [ -d "$paraviewDir" ] +- then +- export ParaView_DIR=$paraviewDir +- export ParaView_LIB_DIR=$(echo "$ParaView_DIR"/lib* | tr ' ' ':') +- export ParaView_VERSION=${paraviewDir##*ParaView-} +- export ParaView_MAJOR=${ParaView_VERSION%.*} +- export ParaView_INCLUDE_DIR=$paraviewDir/include/paraview-$ParaView_MAJOR +- export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR +- +- # Add to the path and the library path +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH +- +- # Add in python libraries if required +- paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping +- if [ -r "$paraviewPython" ] +- then +- if [ "$PYTHONPATH" ] +- then +- export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR +- else +- export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR +- fi +- fi +- unset paraviewPython +- fi +- +- unset paraviewDir +- ;; +- +-esac ++export ParaView_VERSION=$EBVERSIONPARAVIEW ++export ParaView_MAJOR=${ParaView_VERSION%.*} ++export ParaView_DIR=$EBROOTPARAVIEW ++export ParaView_LIB_DIR=$ParaView_DIR/lib ++export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR ++export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR ++export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$PV_PLUGIN_PATH:$LD_LIBRARY_PATH + + # Report + if [ "$FOAM_VERBOSE" ] && [ "$PS1" ] && [ -d "$ParaView_DIR" ] +diff -ru OpenFOAM-12-version-12/etc/config.sh/scotch OpenFOAM-12/etc/config.sh/scotch +--- OpenFOAM-12-version-12/etc/config.sh/scotch ++++ OpenFOAM-12/etc/config.sh/scotch +@@ -37,32 +37,8 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the scotch installation +-case "$SCOTCH_TYPE" in +-none) +- ;; +-system) +- export SCOTCH_VERSION=system +- export SCOTCH_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$SCOTCH_VERSION" ] +- then +- scotchSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/scotch_*) +- else +- scotchSrcDir=$WM_THIRD_PARTY_DIR/scotch_$SCOTCH_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$scotchSrcDir" ] +- then +- export SCOTCH_VERSION=${scotchSrcDir##*scotch_} +- export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/scotch_$SCOTCH_VERSION +- fi +- # Clean up +- unset scotchSrcDir +- ;; +-esac ++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH ++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -ru OpenFOAM-12-version-12/etc/config.sh/zoltan OpenFOAM-12/etc/config.sh/zoltan +--- OpenFOAM-12-version-12/etc/config.sh/zoltan ++++ OpenFOAM-12/etc/config.sh/zoltan +@@ -37,32 +37,8 @@ + # Load functions + . $WM_PROJECT_DIR/etc/config.sh/functions + +-# Find the path to the zoltan installation +-case "$ZOLTAN_TYPE" in +-none) +- ;; +-system) +- export ZOLTAN_VERSION=system +- export ZOLTAN_ARCH_PATH=/usr +- ;; +-OpenFOAM | ThirdParty) +- # Look for the source directory +- if [ -z "$ZOLTAN_VERSION" ] +- then +- zoltanSrcDir=$(_foamMostRecentDir "$WM_THIRD_PARTY_DIR"/Zoltan-*) +- else +- zoltanSrcDir=$WM_THIRD_PARTY_DIR/Zoltan-$ZOLTAN_VERSION +- fi +- # Set the version and the installation path +- if [ -d "$zoltanSrcDir" ] +- then +- export ZOLTAN_VERSION=${zoltanSrcDir##*Zoltan-} +- export ZOLTAN_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/Zoltan-$ZOLTAN_VERSION +- fi +- # Clean up +- unset zoltanSrcDir +- ;; +-esac ++export ZOLTAN_VERSION=Zoltan-$EBVERSIONZOLTAN ++export ZOLTAN_ARCH_PATH=$EBROOTZOLTAN + + # Unload functions + . $WM_PROJECT_DIR/etc/config.sh/functions +diff -ru OpenFOAM-12-version-12/etc/config.sh/settings OpenFOAM-12/etc/config.sh/settings +--- OpenFOAM-12-version-12/etc/config.sh/settings ++++ OpenFOAM-12/etc/config.sh/settings +@@ -63,11 +63,11 @@ + 64) + WM_ARCH=linux64 + export WM_COMPILER_LIB_ARCH=64 +- export WM_CC='gcc' +- export WM_CXX='g++' +- export WM_CFLAGS='-m64 -fPIC' +- export WM_CXXFLAGS='-m64 -fPIC -std=c++0x' +- export WM_LDFLAGS='-m64' ++ export WM_CC=$CC ++ export WM_CXX=$CXX ++ export WM_CFLAGS=$CFLAGS ++ export WM_CXXFLAGS=$CXXFLAGS ++ export WM_LDFLAGS=$LDFLAGS + ;; + *) + echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\ +diff -ru OpenFOAM-12-version-12/src/parallel/decompose/ptscotch/Make/options OpenFOAM-12/src/parallel/decompose/ptscotch/Make/options +--- OpenFOAM-12-version-12/src/parallel/decompose/ptscotch/Make/options ++++ OpenFOAM-12/src/parallel/decompose/ptscotch/Make/options +@@ -6,15 +6,7 @@ + $(PFLAGS) $(PINC) \ + -I$(FOAM_SRC)/Pstream/mpi/lnInclude \ + -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \ +- -I$(SCOTCH_ARCH_PATH)/include \ +- -I$(or $(PTSCOTCH_INCLUDE_DIR),/usr/include/scotch) \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ARCH_PATH)/lib \ +- $(if $(PTSCOTCH_LIB_DIR),-L$(PTSCOTCH_LIB_DIR)) \ +- -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \ +- -lptscotch \ +- -lptscotcherrexit \ +- -lscotch \ +- -lrt ++ -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt +diff -ru OpenFOAM-12-version-12/src/parallel/decompose/ptscotch/ptscotch.C OpenFOAM-12/src/parallel/decompose/ptscotch/ptscotch.C +--- OpenFOAM-12-version-12/src/parallel/decompose/ptscotch/ptscotch.C ++++ OpenFOAM-12/src/parallel/decompose/ptscotch/ptscotch.C +@@ -31,10 +31,11 @@ + #include "SubField.H" + #include "PstreamGlobals.H" + ++#include ++#include ++ + extern "C" + { + #include +- #include +- #include "ptscotch.h" + } + +diff -ru OpenFOAM-12-version-12/src/parallel/decompose/scotch/Make/options OpenFOAM-12/src/parallel/decompose/scotch/Make/options +--- OpenFOAM-12-version-12/src/parallel/decompose/scotch/Make/options ++++ OpenFOAM-12/src/parallel/decompose/scotch/Make/options +@@ -6,7 +6,6 @@ + EXE_INC = \ + $(PFLAGS) $(PINC) \ + -I$(SCOTCH_ARCH_PATH)/include \ +- -I$(or $(SCOTCH_INCLUDE_DIR),/usr/include/scotch) \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-foss-2023a.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-foss-2023a.eb new file mode 100644 index 00000000000..ed565315859 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-12-foss-2023a.eb @@ -0,0 +1,38 @@ +name = 'OpenFOAM' +version = '12' + +homepage = 'https://www.openfoam.org/' +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'vectorize': False} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = ['OpenFOAM-12-ThirdParty.patch'] +checksums = [ + {'version-12.tar.gz': 'e59fad54c62e64f1bb89dbaebe5f99a76dc0a6a91d9aad86042a7c4cef6d0744'}, + {'OpenFOAM-12-ThirdParty.patch': 'b8a9abf3b8479d32d87654d833501f54abe57ceb9f06f7d2412a3e52d20108ec'}, +] + +builddependencies = [ + ('Bison', '3.8.2'), + ('CMake', '3.26.3'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('ncurses', '6.4'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '7.0.3'), + ('CGAL', '5.6'), + ('ParaView', '5.11.2'), + ('gnuplot', '5.4.8'), + ('Zoltan', '3.901'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-cleanup.patch new file mode 100644 index 00000000000..ac5229788c5 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-cleanup.patch @@ -0,0 +1,182 @@ +# Replaces OpenFOAM third-party libraries with EASYBUILD variants. +# Uses the OpenFOAM prefs mechanism and the FOAM_CONFIG_ETC variable +# to define the preferred settings without patching the original files +# +# Authors: Mark Olesen +# +# ChangeLog: +# - v2312 - activate METIS, KaHIP and readline support in etc/config.sh/setup +# author: Jiri Furst +# - v2406 - set MPFR_ARCH_PATH and GMP_ARCH_PATH to CGAL config +# author: Jiri Furst +# +# ------------------------------------------------------------------------- +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/prefs.sh 2020-12-14 10:02:26.488430802 +0100 +@@ -0,0 +1,7 @@ ++##Easybuild## settings -*- sh -*- ++ ++export FOAM_CONFIG_ETC="etc/easybuild" ++ ++export WM_MPLIB=EASYBUILDMPI ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/CGAL 2020-12-14 10:10:55.991841204 +0100 +@@ -0,0 +1,8 @@ ++##Easybuild## settings -*- sh -*- ++ ++export MPFR_ARCH_PATH="$EBROOTMPFR" ++export GMP_ARCH_PATH="$EBROOTGMP" ++export BOOST_ARCH_PATH="$EBROOTBOOST" ++export CGAL_ARCH_PATH="$EBROOTCGAL" ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/FFTW 2020-12-14 10:10:53.735843322 +0100 +@@ -0,0 +1,5 @@ ++##Easybuild## settings -*- sh -*- ++ ++export FFTW_ARCH_PATH="$EBROOTFFTW" ++ ++##EasyBuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/metis 2020-12-11 21:23:28.774934024 +0100 +@@ -0,0 +1,6 @@ ++##Easybuild## settings -*- sh -*- ++ ++METIS_VERSION="metis-$EBVERSIONMETIS" ++[ -d "$METIS_ARCH_PATH" ] || METIS_ARCH_PATH="$EBROOTMETIS" ++ ++##Easybuild## +--- /dev/null 2022-12-01 18:21:35.103878336 +0100 ++++ OpenFOAM-v2206/etc/easybuild/config.sh/kahip 2022-12-12 20:24:07.538408981 +0100 +@@ -0,0 +1,6 @@ ++##Easybuild## settings -*- sh -*- ++ ++KAHIP_VERSION="kahip-$EBVERSIONKAHIP" ++export KAHIP_ARCH_PATH="$EBROOTKAHIP" ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/readline 2020-12-11 21:23:22.534951043 +0100 +@@ -0,0 +1,5 @@ ++##Easybuild## settings -*- sh -*- ++ ++export READLINE_ARCH_PATH="$EBROOTLIBREADLINE" ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/scotch 2020-12-11 21:23:17.586964539 +0100 +@@ -0,0 +1,7 @@ ++##Easybuild## settings -*- sh -*- ++ ++export SCOTCH_VERSION="scotch_$EBVERSIONSCOTCH" ++export SCOTCH_ARCH_PATH="$EBROOTSCOTCH" ++[ -d "$SCOTCH_ARCH_PATH" ] || SCOTCH_ARCH_PATH="$SCOTCH_ROOT" ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/vtk 2020-12-11 21:22:55.463024882 +0100 +@@ -0,0 +1,9 @@ ++##Easybuild## settings -*- sh -*- ++ ++export VTK_DIR="$EBROOTVTK" ++export MESA_ARCH_PATH="$EBROOTMESA" ++ ++# Define paraview-mesa directory as required ++unset ParaView_MESA_DIR ++ ++##Easybuild## +--- /dev/null 2020-12-14 09:05:45.272769166 +0100 ++++ OpenFOAM-v2012/etc/easybuild/config.sh/paraview 2020-12-14 10:13:53.583674383 +0100 +@@ -0,0 +1,75 @@ ++##Easybuild## settings -*- sh -*- ++# ++# Largely a knockoff of the OpenFOAM etc/config.sh/paraview-system ++# readjusted for easybuild ++# ++# Copyright (C) 2020 OpenCFD Ltd. ++# ++#------------------------------------------------------------------------------ ++# Compiler-specific location for ThirdParty installations ++archDir="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER" ++ ++# Clean path and library path of previous settings ++eval \ ++ "$($WM_PROJECT_DIR/bin/foamCleanPath -sh-env=PATH \ ++ $ParaView_DIR $archDir/ParaView- $archDir/qt-)" ++ ++eval \ ++ "$($WM_PROJECT_DIR/bin/foamCleanPath -sh-env=LD_LIBRARY_PATH \ ++ $ParaView_DIR $archDir/ParaView- $archDir/qt-)" ++ ++ ++#------------------------------------------------------------------------------ ++ ++##Easybuild## settings ++ ++ParaView_VERSION="$EBVERSIONPARAVIEW" ++export ParaView_DIR="$EBROOTPARAVIEW" ++ ++#------------------------------------------------------------------------------ ++ ++unset PV_PLUGIN_PATH ++ ++# Set API to correspond to VERSION ++# pv_api is . from ParaView_VERSION ++#- ++# Extract API from VERSION ++pv_api=$(echo "$ParaView_VERSION" | \ ++ sed -ne 's/^[^0-9]*\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/p') ++ ++pv_plugin_dir="$FOAM_LIBBIN/paraview-$pv_api" ++ ++# Set paths if binaries are present ++if [ -r "$ParaView_DIR" ] ++then ++ export PATH="$ParaView_DIR/bin:$PATH" ++ ++ # ParaView libraries ++ # - 5.5 and later: lib/, but could also be lib64/ ++ for libDir in lib64 lib ++ do ++ pvLibDir="$libDir/paraview-$pv_api" ++ if [ -d "$ParaView_DIR/$pvLibDir" ] ++ then ++ export LD_LIBRARY_PATH="$ParaView_DIR/$libDir:$LD_LIBRARY_PATH" ++ break ++ fi ++ done ++ ++ # OpenFOAM plugin directory must be the first in PV_PLUGIN_PATH ++ # and have paraview-major.minor encoded in its name ++ if [ -d "$pv_plugin_dir" ] ++ then ++ export PV_PLUGIN_PATH="$pv_plugin_dir" ++ fi ++fi ++ ++ ++#------------------------------------------------------------------------------ ++ ++unset ParaView_VERSION ++ ++unset archDir libDir ++unset pv_api pv_plugin_dir pvLibDir ++ ++#------------------------------------------------------------------------------ +--- OpenFOAM-v2312/etc/config.sh/setup.orig 2024-01-11 09:49:24.823571481 +0100 ++++ OpenFOAM-v2312/etc/config.sh/setup 2024-01-11 09:51:40.545969774 +0100 +@@ -207,7 +207,9 @@ + _foamEtc -config CGAL + _foamEtc -config scotch + _foamEtc -config FFTW +- ++_foamEtc -config metis ++_foamEtc -config kahip ++_foamEtc -config readline + + # Finalize library paths + # ~~~~~~~~~~~~~~~~~~~~~~ + diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-foss-2023a.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-foss-2023a.eb new file mode 100644 index 00000000000..0e2885c064f --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2406-foss-2023a.eb @@ -0,0 +1,55 @@ +name = 'OpenFOAM' +version = 'v2406' + +homepage = 'https://www.openfoam.com/' +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +# Users have found that vectorizion caused OpenFOAM to produce some very incorrect results. +# Disabling vectorize was confirmed to fix the the known issues. +# With no test suite, sticking to known working toolchain options until proven otherwise. +toolchainopts = {'cstd': 'c++14', 'vectorize': False} + +source_urls = ['https://sourceforge.net/projects/openfoam/files/%(version)s/'] +sources = [ + SOURCE_TGZ, + { + 'filename': '%(name)s-plugins-%(version)s.tgz', + 'extract_cmd': 'tar --strip-components=1 -C %(installdir)s/%(name)s-%(version)s/ -xzf %s' + } +] +patches = [ + ('OpenFOAM-v2406-cleanup.patch', 1), + ('OpenFOAM-v2212-wmake-OpenMPI.patch', 1), +] +checksums = [ + {'OpenFOAM-v2406.tgz': '8d1450fb89eec1e7cecc55c3bb7bc486ccbf63d069379d1d5d7518fa16a4686a'}, + {'OpenFOAM-plugins-v2406.tgz': '1d008f86fad06a4a568d194c6e3d5ab52be2b20c83a3b9b1b0230e2de2d0558b'}, + {'OpenFOAM-v2406-cleanup.patch': '3abff48a517fb63719ad57fa32af746bc379a1e80c72d3e5852aa17cd13cf03e'}, + {'OpenFOAM-v2212-wmake-OpenMPI.patch': '241dc4898c22aab0cbd10c1ea931a07a786508ee03462d45dbc1c202fee3ebe8'}, +] + +builddependencies = [ + ('Bison', '3.8.2'), + ('CMake', '3.26.3'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('libreadline', '8.2'), + ('ncurses', '6.4'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '7.0.3'), + ('KaHIP', '3.16'), + ('CGAL', '5.6'), + ('GMP', '6.2.1'), + ('MPFR', '4.2.0'), + ('ParaView', '5.11.2'), + ('gnuplot', '5.4.8'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.5.15.0-GCC-13.3.0.eb b/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.5.15.0-GCC-13.3.0.eb new file mode 100644 index 00000000000..2b2aff2aaab --- /dev/null +++ b/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.5.15.0-GCC-13.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'OpenImageIO' +version = '2.5.15.0' + +homepage = 'https://openimageio.org/' +description = """OpenImageIO is a library for reading and writing images, and a bunch of related classes, utilities, + and applications.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/OpenImageIO/oiio/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = [('7779ef2c3d03c5ed95e13ff292de85c3f8cee301cd46baad0d2dc83c93bfe85c')] + +builddependencies = [ + ('CMake', '3.29.3'), + ('git', '2.45.1'), +] +dependencies = [ + ('Boost', '1.85.0'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), + ('OpenEXR', '3.2.4'), + ('freetype', '2.13.2'), + ('zlib', '1.3.1'), +] + +separate_build_dir = True + +configopts = '-DSTOP_ON_WARNING=OFF -DUSE_PYTHON=OFF' + +sanity_check_paths = { + 'files': ['bin/oiiotool', 'lib/libOpenImageIO.%s' % SHLIB_EXT, 'lib/libOpenImageIO_Util.%s' % SHLIB_EXT], + 'dirs': ['include/OpenImageIO', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/OpenJPEG/OpenJPEG-2.5.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/o/OpenJPEG/OpenJPEG-2.5.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8ee5d1477f8 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenJPEG/OpenJPEG-2.5.2-GCCcore-13.3.0.eb @@ -0,0 +1,42 @@ +easyblock = 'CMakeMake' + +name = 'OpenJPEG' +version = '2.5.2' + +homepage = 'https://www.openjpeg.org/' +description = """OpenJPEG is an open-source JPEG 2000 codec written in + C language. It has been developed in order to promote the use of JPEG 2000, + a still-image compression standard from the Joint Photographic Experts Group + (JPEG). Since may 2015, it is officially recognized by ISO/IEC and ITU-T as + a JPEG 2000 Reference Software.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/uclouvain/%(namelower)s/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['90e3896fed910c376aaf79cdd98bdfdaf98c6472efd8e1debf0a854938cbda6a'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] +# for running the binary of openjpeg like opj_compress you need the libraries like zlib etc. +dependencies = [ + ('zlib', '1.3.1'), + ('libpng', '1.6.43'), + ('LibTIFF', '4.6.0'), +] + +sanity_check_paths = { + 'files': [ + 'bin/opj_compress', + 'bin/opj_decompress', + 'bin/opj_dump', + 'include/openjpeg-%(version_major)s.%(version_minor)s/openjpeg.h', + 'lib/libopenjp2.%s' % SHLIB_EXT + ], + 'dirs': ['bin', 'include', 'lib'], +} + +moduleclass = 'lib' 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 8926a0833fa..42b0118bbe8 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 @@ -47,8 +47,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'", ] modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} diff --git a/easybuild/easyconfigs/o/OpenMM-Torch/OpenMM-Torch-20240816-foss-2023a.eb b/easybuild/easyconfigs/o/OpenMM-Torch/OpenMM-Torch-20240816-foss-2023a.eb new file mode 100644 index 00000000000..8e40a8c95af --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM-Torch/OpenMM-Torch-20240816-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'CMakeMake' + +name = 'OpenMM-Torch' +version = '20240816' +local_commit = '8893c0f' + +homepage = 'https://openmm.org/' +description = """ +OpenMM-Torch is an OpenMM plugin to define forces with neural networks. +The OpenMM-Torch package provides an interface to the PyTorch machine learning framework. +It lets you define new types of forces through PyTorch code. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'cstd': 'c++17'} + +source_urls = ['https://github.com/openmm/%(namelower)s/archive'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['c2abf0bfce61b6e2e1f42d27a89032b4b994f7d67eb238ddf1a7d299cae551bf'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('OpenMM', '8.0.0'), +] + +configopts = '-DOPENMM_DIR="${EBROOTOPENMM}" ' +configopts += '-DPYTORCH_DIR="${EBROOTPYTORCH}/lib/python%(pyshortver)s/site-packages/torch"' + +# install Python bindings +postinstallcmds = [ + "sed -i 's|pip install |pip install --prefix=%(installdir)s |' %(start_dir)s/python/CMakeLists.txt", + "make PythonInstall", +] + +sanity_check_paths = { + 'files': ['lib/python%(pyshortver)s/site-packages/openmmtorch.py'], + 'dirs': ['lib', 'include'], +} + +sanity_check_commands = [ + "python -c 'import openmmtorch'", +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..8cf271071e7 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,70 @@ +# 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.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['OpenMM-8.0.0_add_no_tree_vectorize.patch'] +checksums = [ + 'dc63d7b47c8bb7b169c409cfd63d909ed0ce1ae114d37c627bf7a4231acf488e', # 8.0.0.tar.gz + '4bacf45443a2472e59798743f27d07481e065d784cbbea7be22aa6427af0d2bd', # OpenMM-8.0.0_add_no_tree_vectorize.patch +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Doxygen', '1.9.7'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('SWIG', '4.1.1'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +# Set the OPENMM_CUDA_COMPILER variable to make sure that all tests use the right nvcc, +# Otherwise they will use the wrong path: `/usr/local/cuda/bin/nvcc` +pretestopts = ' export OPENMM_CUDA_COMPILER=${EBROOTCUDA}/bin/nvcc && ' +pretestopts += " CTEST_OUTPUT_ON_FAILURE=1" +# Skip CudaCompiler test as it doesn't work when the OPENMM_CUDA_COMPILER variable is set +local_ignore_pattern = "(Integrator)|(Thermostat)|(Barostat)|(Rpmd)|(Amoeba)|(CudaCompiler)" +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/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/OpenMMTools/OpenMMTools-0.23.1-foss-2023a.eb b/easybuild/easyconfigs/o/OpenMMTools/OpenMMTools-0.23.1-foss-2023a.eb new file mode 100644 index 00000000000..1bec0ef4891 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMMTools/OpenMMTools-0.23.1-foss-2023a.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'OpenMMTools' +version = '0.23.1' + +homepage = 'https://github.com/choderalab/openmmtools' +description = """A batteries-included toolkit for the GPU-accelerated OpenMM molecular simulation engine. +openmmtools is a Python library layer that sits on top of OpenMM to provide access to a variety of useful tools +for building full-featured molecular simulation packages. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('OpenMM', '8.0.0'), + ('netcdf4-python', '1.6.4'), + ('MDTraj', '1.9.9'), + ('PyYAML', '6.0'), + ('numba', '0.58.1'), + ('jupyter-server', '2.7.2'), +] + +use_pip = True +exts_list = [ + ('pymbar', '3.1', { + # pymbar 3.1 is not available via PyPI, see https://github.com/choderalab/pymbar/issues/475 + 'source_urls': ['https://github.com/choderalab/pymbar/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['7a996e5d3fd8143378f9e18662483446a4a2fe7e57917511e96beb6b07fd6232'], + }), + ('mpiplus', '0.0.2', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/mpiplus/archive/'], + 'checksums': ['5f051210b8cd321fdcbfa97a6e1606b63e6d6c7214c393bc04f93a8545b6d3a8'], + }), + (name, version, { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/openmmtools/archive/'], + 'checksums': ['9281f50896a91f3f9e1ea16f0636f2aff494287a51a4ec03ae8e26f1b8edaccc'], + # import check requires use of mpirun, handled via sanity_check_commands + 'modulename': False, + }), +] + +sanity_check_paths = { + 'files': ['bin/test-openmm-platforms'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["%(mpi_cmd_prefix)s python -c 'import %(namelower)s'"] + +sanity_pip_check = True + +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/OpenPGM/OpenPGM-5.2.122-GCCcore-13.3.0.eb b/easybuild/easyconfigs/o/OpenPGM/OpenPGM-5.2.122-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..cbf6bca94d7 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenPGM/OpenPGM-5.2.122-GCCcore-13.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'OpenPGM' +version = '5.2.122' + +homepage = 'https://code.google.com/p/openpgm/' +description = """ + OpenPGM is an open source implementation of the Pragmatic General Multicast + (PGM) specification in RFC 3208 available at www.ietf.org. PGM is a reliable + and scalable multicast protocol that enables receivers to detect loss, request + retransmission of lost data, or notify an application of unrecoverable loss. + PGM is a receiver-reliable protocol, which means the receiver is responsible + for ensuring all data is received, absolving the sender of reception + responsibility. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/%(namelower)s/'] +sources = ['libpgm-%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s-pkgconfig_includes.patch', + '%(name)s-%(version)s-python3-compliant.patch', +] +checksums = [ + '6b895f550b95284dcde7189b01e04a9a1c1f94579af31b1eebd32c2207a1ba2c', # libpgm-%(version)s.tar.gz + '4a9fc7fbb6e73e325639a895cd19c1ac6918b575f715c057caa01f826de40114', # %(name)s-%(version)s-pkgconfig_includes.patch + 'a3bf6b4127473d287d72767b0335b8705940e56ffbccc8d4d3bdbf23a2fc8618', # %(name)s-%(version)s-python3-compliant.patch +] + +builddependencies = [ + ('binutils', '2.42'), + ('Python', '3.12.3'), +] + +start_dir = 'pgm' + +sanity_check_paths = { + 'files': ['lib/libpgm.%s' % SHLIB_EXT, 'lib/libpgm.a'], + 'dirs': ['include'], +} + +moduleclass = 'system' diff --git a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.5.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.5.0-GCCcore-10.2.0.eb index b013362d2e5..50dab938d40 100644 --- a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.5.0-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.5.0-GCCcore-10.2.0.eb @@ -16,9 +16,9 @@ dependencies = [ ] builddependencies = [('binutils', '2.35')] -exts_default_options = { - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True + exts_list = [ ('pbr', '5.6.0', { 'checksums': ['42df03e7797b796625b1029c0400279c7c34fd7df24a7d7818a1abb5b38710dd'], @@ -121,7 +121,6 @@ exts_list = [ }), ] -sanity_pip_check = True enhance_sanity_check = True sanity_check_commands = ['openstack -h'] diff --git a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.8.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.8.0-GCCcore-11.2.0.eb index e590dd730ca..d92bda87180 100644 --- a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.8.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-5.8.0-GCCcore-11.2.0.eb @@ -16,9 +16,9 @@ dependencies = [ ] builddependencies = [('binutils', '2.37')] -exts_default_options = { - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True + exts_list = [ ('pyperclip', '1.8.2', { 'checksums': ['105254a8b04934f0bc84e9c24eb360a591aaf6535c9def5f29d92af107a9bf57'], @@ -121,7 +121,6 @@ exts_list = [ }), ] -sanity_pip_check = True enhance_sanity_check = True sanity_check_commands = ['openstack -h'] diff --git a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-6.0.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-6.0.0-GCCcore-12.2.0.eb index 6b695f63279..bdf0b5c45a6 100644 --- a/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-6.0.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/o/OpenStackClient/OpenStackClient-6.0.0-GCCcore-12.2.0.eb @@ -15,9 +15,9 @@ dependencies = [ ] builddependencies = [('binutils', '2.39')] -exts_default_options = { - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True + exts_list = [ ('pyperclip', '1.8.2', { 'checksums': ['105254a8b04934f0bc84e9c24eb360a591aaf6535c9def5f29d92af107a9bf57'], @@ -114,7 +114,6 @@ exts_list = [ }), ] -sanity_pip_check = True enhance_sanity_check = True sanity_check_commands = ['openstack -h'] diff --git a/easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..61000b1388c --- /dev/null +++ b/easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a-CUDA-12.1.1.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'Optax' +version = '0.2.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/deepmind/optax' +description = """Optax is a gradient processing and optimization library for JAX.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('chex', '0.1.86', { + 'checksums': ['e8b0f96330eba4144659e1617c0f7a57b161e8cbb021e55c6d5056c7378091d1'], + }), + ('optax', version, { + 'checksums': ['f09bf790ef4b09fb9c35f79a07594c6196a719919985f542dc84b0bf97812e0e'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = ["python -c 'from optax import GradientTransformation'"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/Optax/Optax-0.2.2-foss-2023a.eb b/easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a.eb similarity index 71% rename from easybuild/easyconfigs/o/Optax/Optax-0.2.2-foss-2023a.eb rename to easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a.eb index be05f009e9e..d447a77bbd2 100644 --- a/easybuild/easyconfigs/o/Optax/Optax-0.2.2-foss-2023a.eb +++ b/easybuild/easyconfigs/o/Optax/Optax-0.2.2-gfbf-2023a.eb @@ -6,7 +6,7 @@ version = '0.2.2' homepage = 'https://github.com/deepmind/optax' description = """Optax is a gradient processing and optimization library for JAX.""" -toolchain = {'name': 'foss', 'version': '2023a'} +toolchain = {'name': 'gfbf', 'version': '2023a'} dependencies = [ ('Python', '3.11.3'), @@ -20,13 +20,6 @@ exts_list = [ ('toolz', '0.12.1', { 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], }), - ('flit_core', '3.9.0', { - 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], - }), - ('absl-py', '2.1.0', { - 'modulename': 'absl', - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), ('chex', '0.1.86', { 'checksums': ['e8b0f96330eba4144659e1617c0f7a57b161e8cbb021e55c6d5056c7378091d1'], }), diff --git a/easybuild/easyconfigs/o/Optuna/Optuna-3.6.1-foss-2023b.eb b/easybuild/easyconfigs/o/Optuna/Optuna-3.6.1-foss-2023b.eb new file mode 100644 index 00000000000..35dec40e234 --- /dev/null +++ b/easybuild/easyconfigs/o/Optuna/Optuna-3.6.1-foss-2023b.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'Optuna' +version = '3.6.1' + +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': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('PyYAML', '6.0.1'), + ('SciPy-bundle', '2023.11'), + ('tqdm', '4.66.2'), + ('matplotlib', '3.8.2'), # optional + ('plotly.py', '5.18.0'), # optional + ('redis-py', '5.0.9'), # optional + ('scikit-learn', '1.4.0'), # optional + ('SQLAlchemy', '2.0.29'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('cmaes', '0.11.1', { + 'checksums': ['cf71fa3679814723be771f2c9edd85f465b1bc1e409e1ad6d8a9e481efcd5160'], + }), + ('colorlog', '6.8.2', { + 'checksums': ['3e3e079a41feb5a1b64f978b5ea4f46040a94f11f0e8bbb8261e3dbbeca64d44'], + }), + ('optuna', version, { + 'use_pip_extras': 'optional', + 'checksums': ['146e530b57b4b9afd7526b3e642fbe65491f7e292b405913355f8e438e361ecf'], + }), +] + +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/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..cbc97bccf09 --- /dev/null +++ b/easybuild/easyconfigs/o/Optuna/Optuna-4.1.0-foss-2024a.eb @@ -0,0 +1,49 @@ +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 +] + +use_pip = True +sanity_pip_check = True + +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/ome-types/ome-types-0.5.1.post1-foss-2023a.eb b/easybuild/easyconfigs/o/ome-types/ome-types-0.5.1.post1-foss-2023a.eb new file mode 100644 index 00000000000..0de34e3542b --- /dev/null +++ b/easybuild/easyconfigs/o/ome-types/ome-types-0.5.1.post1-foss-2023a.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'ome-types' +version = '0.5.1.post1' + +homepage = 'https://github.com/tlambert03/ome-types/' +description = """ +ome_types provides a set of python dataclasses and utility functions for parsing +the OME-XML format into fully-typed python objects for interactive or programmatic access in python. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), + ('hatchling', '1.18.0'), + ('maturin', '1.4.0', '-Rust-1.75.0'), +] +dependencies = [ + ('Python', '3.11.3'), + ('pydantic', '2.5.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('ruff', '0.3.0', { + 'checksums': ['0886184ba2618d815067cf43e005388967b67ab9c80df52b32ec1152ab49f53a'], + }), + ('pydantic_compat', '0.1.2', { + 'checksums': ['c5c5bca39ca2d22cad00c02898e400e1920e5127649a8e860637f15566739373'], + }), + ('untokenize', '0.1.1', { + 'checksums': ['3865dbbbb8efb4bb5eaa72f1be7f3e0be00ea8b7f125c69cbd1f5fda926f37a2'], + }), + ('docformatter', '1.7.5', { + 'checksums': ['ffed3da0daffa2e77f80ccba4f0e50bfa2755e1c10e130102571c890a61b246e'], + }), + ('toposort', '1.10', { + 'checksums': ['bfbb479c53d0a696ea7402601f4e693c97b0367837c8898bc6471adfca37a6bd'], + }), + ('xsdata', '23.8', { + 'checksums': ['55f03d4c88236f047266affe550ba0dd19476adfce6a01f3e0aefac7c8078e56'], + }), + ('ome_types', version, { + 'checksums': ['cadda5e36ad4d33dad2034fd43f32113a736fe47c67fd9e06bbb8d3858d1dc58'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/ont-remora/ont-remora-3.3.0-foss-2023a.eb b/easybuild/easyconfigs/o/ont-remora/ont-remora-3.3.0-foss-2023a.eb new file mode 100644 index 00000000000..7d065263f5b --- /dev/null +++ b/easybuild/easyconfigs/o/ont-remora/ont-remora-3.3.0-foss-2023a.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'ont-remora' +version = '3.3.0' + +homepage = 'https://github.com/nanoporetech/remora' +description = """Methylation/modified base calling separated from basecalling. Remora primarily +provides an API to call modified bases for basecaller programs such as Bonito. +Remora also provides the tools to prepare datasets, train modified base models +and run simple inference.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ONNX-Runtime', '1.19.2'), + ('PyTorch', '2.1.2'), + ('scikit-learn', '1.3.1'), + ('tqdm', '4.66.1'), + ('python-parasail', '1.3.4'), + ('polars', '0.20.2'), + ('Pysam', '0.22.0'), + ('pod5-file-format', '0.3.10'), + ('statsmodels', '0.14.1'), +] + +use_pip = True + +exts_list = [ + ('thop', '0.1.1.post2209072238', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['01473c225231927d2ad718351f78ebf7cffe6af3bed464c4f1ba1ef0f7cdda27'], + }), + ('mizani', '0.9.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['ac5d49b913de88dc2fb28d82141e9777b97407a6971a158f758093ad5bb820a1'], + }), + ('plotnine', '0.12.4', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['12748f346f107c33f3e0658ac46fbb052205ae7e97ffaf52be68310e5d29f799'], + }), + (name, version, { + 'modulename': 'remora', + 'checksums': ['3c899e7333ae33ebec31c8a59650ab4d553e8a62c0abf7b03899e2ee9a0bc88a'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/remora'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + ('remora', '--help'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PALM/PALM-23.10-foss-2023a.eb b/easybuild/easyconfigs/p/PALM/PALM-23.10-foss-2023a.eb new file mode 100644 index 00000000000..7517506de97 --- /dev/null +++ b/easybuild/easyconfigs/p/PALM/PALM-23.10-foss-2023a.eb @@ -0,0 +1,103 @@ +easyblock = 'Binary' + +name = 'PALM' +version = '23.10' + +homepage = 'https://palm.muk.uni-hannover.de' +description = """PALM is an advanced and state-of-the-art meteorological +modeling system for atmospheric and oceanic boundary layer flows.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://gitlab.palm-model.org/releases/palm_model_system/-/archive/v%(version)s/'] +sources = ['palm_model_system-v%(version)s.tar.gz'] +checksums = ['2b13bcff9cc95ba3c80e037f239a4a96525138143598a3f52ce04ff40bfadb80'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('hatchling', '1.18.0'), +] + +# required Python package: see various requirements.txt files in source directory +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy, scipy + ('netCDF-Fortran', '4.6.1'), + ('netcdf4-python', '1.6.4'), # for netCDF4 + ('PyQt5', '5.15.10'), + ('PyYAML', '6.0'), +] + +buildininstalldir = True + +extract_sources = True + +install_cmd = "bash install -p %(installdir)s" + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('argcomplete', '3.2.3', { + 'checksums': ['bf7900329262e481be5a15f56f19736b376df6f82ed27576fa893652c5de6c23'], + }), + ('mike', '2.0.0', { + 'checksums': ['566f1cab1a58cc50b106fb79ea2f1f56e7bfc8b25a051e95e6eaee9fba0922de'], + }), + ('Markdown', '3.6', { + 'checksums': ['ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224'], + }), + ('ghp-import', '2.1.0', { + 'checksums': ['9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343'], + }), + ('mergedeep', '1.3.4', { + 'checksums': ['0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8'], + }), + ('pyyaml_env_tag', '0.1', { + 'checksums': ['70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb'], + 'modulename': 'yaml_env_tag', + }), + ('watchdog', '4.0.1', { + 'checksums': ['eebaacf674fa25511e8867028d281e602ee6500045b57f43b08778082f7f8b44'], + }), + ('mkdocs', '1.5.3', { + 'checksums': ['eb7c99214dcb945313ba30426c2451b735992c73c2e10838f76d09e39ff4d0e2'], + }), + ('mkdocs-macros-plugin', '1.0.5', { + 'checksums': ['fe348d75f01c911f362b6d998c57b3d85b505876dde69db924f2c512c395c328'], + 'modulename': 'mkdocs_macros', + }), + ('pymdown_extensions', '10.7.1', { + 'checksums': ['c70e146bdd83c744ffc766b4671999796aba18842b268510a329f7f64700d584'], + 'modulename': 'pymdownx.magiclink', + }), + ('termcolor', '2.4.0', { + 'checksums': ['aab9e56047c8ac41ed798fa36d892a37aca6b3e9159f3e0c24bc64a9b3ac7b7a'], + # fix for: "Unknown classifier in field project.classifiers: Programming Language :: Python :: 3.13" + 'preinstallopts': "sed -i '/Python.*3.13/d' pyproject.toml && ", + }), + ('verspec', '0.1.0', { + 'checksums': ['c4504ca697b2056cdb4bfa7121461f5a0e81809255b41c03dda4ba823637c01e'], + }), +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_paths = { + 'files': ['bin/palmrun'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'rrtmg'], +} + +sanity_check_commands = [ + "export PYTHONNOUSERSITE=1 && python%(pyshortver)s -m pip check", + "palmrun ?", +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-7.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-7.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5c653a9d515 --- /dev/null +++ b/easybuild/easyconfigs/p/PAPI/PAPI-7.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,53 @@ +## +# Author: Robert Mijakovic +# Updated: Alexander Grund +## + +easyblock = 'ConfigureMake' + +name = 'PAPI' +version = '7.1.0' + +homepage = 'https://icl.cs.utk.edu/projects/papi/' +description = """ + PAPI provides the tool designer and application engineer with a consistent + interface and methodology for use of the performance counter hardware found + in most major microprocessors. PAPI enables software engineers to see, in near + real time, the relation between software performance and processor events. + In addition Component PAPI provides access to a collection of components + that expose performance measurement opportunites across the hardware and + software stack. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://icl.utk.edu/projects/papi/downloads'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_add_initial_riscv_support.patch'] +checksums = [ + '5818afb6dba3ece57f51e65897db5062f8e3464e6ed294b654ebf34c3991bc4f', + {'PAPI-7.1.0_add_initial_riscv_support.patch': '6c7d0d63ccf2b8c46f2ed736fbd4c58303038fb2a45315aed94c026b773af35a'} +] + +builddependencies = [ + ('binutils', '2.42'), +] + +start_dir = 'src' + +configopts = "--with-components=rapl " # for energy measurements + +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' + +sanity_check_paths = { + 'files': ["bin/papi_%s" % x + for x in ["avail", "clockres", "command_line", "component_avail", + "cost", "decode", "error_codes", "event_chooser", + "mem_info", "multiplex_cost", "native_avail", + "version", "xml_event_info"]], + 'dirs': [], +} + +moduleclass = 'perf' 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/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb b/easybuild/easyconfigs/p/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb new file mode 100644 index 00000000000..d534bfa0f78 --- /dev/null +++ b/easybuild/easyconfigs/p/PCAngsd/PCAngsd-1.2-gfbf-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'PCAngsd' +version = '1.2' + +homepage = "https://www.popgen.dk/software/index.php/PCAngsd" +description = "Framework for analyzing low depth NGS data in heterogeneous populations using PCA." + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Cython', '3.0.8'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': False, + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/Rosemeis/pcangsd/archive/refs/tags/'], + 'checksums': ['286f09851c37e380c9abf5859595e7cd0ad8cb49f1d48b1b0ae409aab0eae62e'], + }), +] + +sanity_check_commands = [ + 'pcangsd --help', +] + +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/PDM/PDM-2.18.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PDM/PDM-2.18.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b56e431ecba --- /dev/null +++ b/easybuild/easyconfigs/p/PDM/PDM-2.18.2-GCCcore-13.3.0.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'PDM' +version = '2.18.2' + +homepage = 'https://pdm-project.org' +description = "A modern Python package and dependency manager supporting the latest PEP standards." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('pdm_backend', '2.3.3', { + 'modulename': 'pdm.backend', + 'checksums': ['a8616f628ec84353d7a0ba86b228dcf01bab5debc9e4d1a29e5311a52425d594'], + }), + ('installer', '0.7.0', {'checksums': ['a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631']}), + ('sniffio', '1.3.1', {'checksums': ['f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc']}), + ('h11', '0.14.0', {'checksums': ['8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d']}), + ('httpcore', '1.0.5', {'checksums': ['34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61']}), + ('anyio', '4.4.0', {'checksums': ['5aadc6a1bbb7cdb0bede386cac5e2940f5e2ff3aa20277e991cf028e0585ce94']}), + ('httpx', '0.27.2', {'checksums': ['f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2']}), + ('unearth', '0.17.2', {'checksums': ['0b8a2afd3476f1ab6155fc579501ac47fffe43547d88a70e5a5b76a7fe6caa2c']}), + ('installer', '0.7.0', {'checksums': ['a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631']}), + ('truststore', '0.9.2', {'checksums': ['a1dee0d0575ff22d2875476343783a5d64575419974e228f3248772613c3d993']}), + ('resolvelib', '1.0.1', {'checksums': ['04ce76cbd63fded2078ce224785da6ecd42b9564b1390793f64ddecbe997b309']}), + ('python-dotenv', '1.0.1', { + 'modulename': 'dotenv', + 'checksums': ['e324ee90a023d808f1959c46bcbc04446a10ced277783dc6ee09987c37ec10ca'], + }), + ('pyproject_hooks', '1.1.0', {'checksums': ['4b37730834edbd6bd37f26ece6b44802fb1c1ee2ece0e54ddff8bfc06db86965']}), + ('pbs-installer', '2024.9.9', { + 'source_tmpl': 'pbs_installer-%(version)s.tar.gz', + 'checksums': ['bed162d05ef71c53a0e5e5c6349bab1b07a3d0e5af1800d619a4414a1fda309a'], + }), + ('hishel', '0.0.30', {'checksums': ['656393ee77e9c39a0d6c527c74810e15d96e598dcb9b191f20a788608ceaca99']}), + ('findpython', '0.6.1', {'checksums': ['56e52b409a92bcbd495cf981c85acf137f3b3e51cc769b46eba219bb1ab7533c']}), + ('dep-logic', '0.4.6', { + 'source_tmpl': 'dep_logic-%(version)s.tar.gz', + 'checksums': ['673d45402e9f11c4e501b08ebaea1efaa5e9bc6f69410684a9e448f8f5b26d6a'], + }), + ('blinker', '1.8.2', {'checksums': ['8f77b09d3bf7c795e969e9486f39c2c5e9c39d4ee07424be2bc594ece9642d83']}), + ('pdm', version, {'checksums': ['6d93a18d52edca056fafed7b262fe48ddc61984dabf73eb9365ad61a90caebb6']}), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PDT/PDT-3.25.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PDT/PDT-3.25.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..74328c99ae7 --- /dev/null +++ b/easybuild/easyconfigs/p/PDT/PDT-3.25.2-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr +# Markus Geimer +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +# # + +name = 'PDT' +version = '3.25.2' + +homepage = 'https://www.cs.uoregon.edu/research/pdt/' +description = """ + Program Database Toolkit (PDT) is a framework for analyzing source code + written in several programming languages and for making rich program + knowledge accessible to developers of static and dynamic analysis tools. + PDT implements a standard program representation, the program database + (PDB), that can be accessed in a uniform way through a class library + supporting common PDB operations. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://tau.uoregon.edu/pdt_releases/'] +sources = ['pdtoolkit-%(version)s.tar.gz'] +# Might now be available as direct download although e.g. http://tau.uoregon.edu/pdt.tgz may work +download_instructions = ("Download from https://www.cs.uoregon.edu/research/pdt/downloads.php " + + "and rename to " + sources[0]) +checksums = ['01c2d403bc6672b2b264a182c325806541066c5ed5713878eb598f5506428cbe'] + +builddependencies = [ + ('binutils', '2.42'), +] + + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..b5747815246 --- /dev/null +++ b/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000-foss-2023a-R-4.3.2.eb @@ -0,0 +1,217 @@ +easyblock = 'Bundle' + +name = 'PEcAn' +version = '1.8.0.9000' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://github.com/PecanProject/pecan' +description = """Ecosystem science, policy, and management informed by the best available data and models.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-Bioconductor', '3.18', versionsuffix), + ('PostgreSQL', '16.1'), + ('CDO', '2.2.2'), + ('HDF5', '1.14.0'), + ('netCDF', '4.9.2'), + ('UDUNITS', '2.2.28'), + ('texlive', '20230313'), + ('NCO', '5.1.9'), + ('ncview', '2.1.8'), + ('rjags', '4-15', versionsuffix), + ('Redland', '1.0.17'), +] + +exts_defaultclass = 'RPackage' +exts_default_options = { + 'sources': ['%(name)s_%(version)s.tar.gz'], + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + 'https://pecanproject.r-universe.dev/src/contrib/', # PEcAn sources + ], +} + +exts_list = [ + ('PEcAn.logger', '1.8.2.9000', { + 'checksums': ['1092f72fa63d58d83ca939a06bfa51ad3b3b4cd94ca4e68202cdb08fd3ada099'], + }), + ('PEcAn.remote', version, { + 'checksums': ['b3c7208c85d37aa6c12ca99182262a9886e57e2591faefd909232b8c89111b20'], + }), + ('PEcAn.utils', version, { + 'checksums': ['524c3231a21a1e5fc48ebc53d17e49c82f018b87c274095cd0362103fe322ec5'], + }), + ('PEcAn.DB', version, { + 'checksums': ['9b7e9b40a07879c1265d9ab6087b7448dfd34c3601c64ddcb41511c97399fece'], + }), + ('PEcAn.settings', version, { + 'checksums': ['555a7d81eec7e97b8457cef51888087af6b5d7d07f527ca58cbab07ed847fabc'], + }), + ('PEcAn.MA', '1.7.3.9000', { + 'checksums': ['680290e0ee52526db1242d95c4ca06a1e0ad117337ff721d79387797bc7e40ed'], + }), + ('PEcAn.emulator', version, { + 'checksums': ['68944ebdf1f37ff84f9b09bf02c709de9eda823728bbdea073a36d7ef19cfb9c'], + }), + ('PEcAn.priors', '1.7.3.9000', { + 'checksums': ['e942a31ae02af61b1b8e36d1c5df58f39829b3d0c29421edc151f2f063ff4c1f'], + }), + ('PEcAn.uncertainty', version, { + 'checksums': ['65e392536e17e1de2bf8f66c2cd8f46fcb26dcb3294acf0132551b6736722196'], + }), + ('amerifluxr', '1.0.0', { + 'checksums': ['ec54dce4b8e4108832eaadb60f7ef8ad28b459d3381316537492dcd755d83b25'], + }), + ('geonames', '0.999', { + 'checksums': ['1dd7bbd82d9425d14eb36f8e5bf431feaccfe3b0c4e70bf38f44f13dfc59e17b'], + }), + ('solartime', '0.0.2', { + 'checksums': ['5dd7a28db2bd4881ab740cd7004b88cd05c61e0954e3a10c8e18ebbe07d3e7d1'], + }), + ('bigleaf', '0.8.2', { + 'checksums': ['e41d82fb6298150c46f57128e959a1f1c6cfa55e916c32544bab7be69b0b6df7'], + }), + ('REddyProc', '1.3.3', { + 'checksums': ['3f673bd24f41813f631bf25139c9595bd91483e898ec31b7207c4eb8b7ff486b'], + }), + ('suntools', '1.0.0', { + 'checksums': ['42b7b39bd23ad48ded002150a0e7798fab94ed9828e5b5fdd8e5e1c9040697e2'], + }), + ('fauxpas', '0.5.2', { + 'checksums': ['84d07361a146b419cb1dcb7751654e3d5f159cf2704faf498e5ea56c8de61ef6'], + }), + ('nneo', '0.1.0', { + 'checksums': ['ca503e78cf4f4c85de6e18ad3ffde0c08d6a507ff5dc5ff91a50b3e04bf84a49'], + }), + ('PEcAn.data.atmosphere', version, { + 'checksums': ['28fb884cdeeff6405252352a261c3a884ad33202e556e88cee262aba96e1aea4'], + }), + ('redland', '1.0.17-18', { + 'checksums': ['e999ba22321733df7ed056f528e38fc4be535d36bbac8106395c14f9f60a75a0'], + }), + ('datapack', '1.4.1', { + 'checksums': ['6149733ae90e6bbbb53d5f85ca29cec5f811825e794b56029b7f325de6637493'], + }), + ('dplR', '1.7.7', { + 'checksums': ['0e35a4d2a22773499f9e4592d1a198a08c9842388ce1e5a35394990ed4cdb2bd'], + }), + ('neonUtilities', '2.4.2', { + 'checksums': ['37b4efd0ed3b724de999d08d4d430954a6c717b1d943bc84c513c4fe8dbca057'], + }), + ('storr', '1.2.5', { + 'checksums': ['4224c3991d9c043a45ce530d0698d7f2cdca231b26fe31b45e0db865026e5f63'], + }), + ('thor', '1.1.5', { + 'checksums': ['99802d8c8471ce351403f8428c1efab48ccf20f359fbd368db84f25ef8f7ecae'], + }), + ('duckdb', '1.0.0-2', { + 'patches': ['PEcAn-1.8.0.9000_duckdb.patch'], + 'checksums': [ + {'duckdb_1.0.0-2.tar.gz': '3735d51f22d62a7411aa514142cd569ce28bdaec4eb58d5f0893a476b9ccbf01'}, + {'PEcAn-1.8.0.9000_duckdb.patch': 'fb47b668b23e6c9274ce5365725af71e56f2d99771efdd343dc4283f68ab0c21'}, + ], + }), + ('duckdbfs', '0.0.4', { + 'checksums': ['90b2aff2bdefff1db4f855e2a9c9b19a404f522027105424aebd3c7e45944334'], + }), + ('neonstore', '0.5.1', { + 'checksums': ['f911e957861d558adead8ca77e4d1575a47dceb9553f1aa9d818460126deab9b'], + }), + ('HDInterval', '0.2.4', { + 'checksums': ['bb07f0edd660a02ed18e578c2798eb8c2db0e181a5e0c3e23db182d13e9494f6'], + }), + ('kknn', '1.3.1', { + 'checksums': ['22840e70ec2afa40371e274b583634c8f6d27149a87253ee411747d5db78f3db'], + }), + ('timeSeries', '4032.109', { + 'checksums': ['5e0c47584e0b01ea4011ed5ced217d95f8bb872611f6b029b0797d95eebd731f'], + }), + ('gss', '2.2-7', { + 'checksums': ['3b13144702c570c83462b4ea2ad17f4bd630cff5bf2ab0347a33c7e86a4f3f6a'], + }), + ('fBasics', '4032.96', { + 'checksums': ['e1556909871c836668b10bf90e1676aac6a2892a04663d7ab00c22a64c0b8690'], + }), + ('rmutil', '1.1.10', { + 'checksums': ['819fd7ce695cc742b4594705986eb06764460fc88521ea32de793c49de7ca5f9'], + }), + ('stable', '1.1.6', { + 'checksums': ['2238788a35b5aa9e175ad7b92348640c3dcad68b6ab0a0bc04aeec9084d29da4'], + }), + ('statip', '0.2.3', { + 'checksums': ['56a81a1882856cd1c5711ba133417b64f09071dda356e74280a0dba0db60d54f'], + }), + ('modeest', '2.4.0', { + 'checksums': ['1a949409bf64679d32400d20aa3d53e65a9a20f5bd1a40993b95f81100e0ed20'], + }), + ('runjags', '2.2.2-4', { + 'checksums': ['6f656e4d0620c0806e596ddb4bfec3934534ec17c02da699fcbfd6720a6f424f'], + }), + ('swfscMisc', '1.6.5', { + 'checksums': ['a49cb390643c4079f02986862eb2dfd33db4e6b6498e849bb418f73ffd6882e1'], + }), + ('CDM', '8.2-6', { + 'checksums': ['144a85e36c120e9f8a5bd35c1db50cf089ea4807721ac14460137b9a4b1c98d1'], + }), + ('TAM', '4.2-21', { + 'checksums': ['0d1782e42e89c1863edab12c1861d0e2628ea9ee1a1e37d268f27a3deaf3d568'], + }), + ('pbv', '0.5-47', { + 'checksums': ['e17a04efa96a601ab72172b59f555f36d28bb824f02f363cc5806b05d7d7c792'], + }), + ('sirt', '4.1-15', { + 'checksums': ['c12ffcb83bea5b549c7a34c12561f3e57798b83d68a887c5da0d9a66efac3066'], + }), + ('hoardr', '0.5.4', { + 'checksums': ['4e031ac1317584451c09bc8288ed73fb2d6ceea3c10d29dbb4be08157e489a37'], + }), + ('traits', '0.5.1', { + 'checksums': ['3080887a454d69814cd6cb9683a6750db02cf4c77b40b022ef50d40171ba6aca'], + }), + ('SimilarityMeasures', '1.4', { + 'checksums': ['b26bbc3a402d21f030cc8e4ff6baca644eb4c63a4fb33423dbc9436229a393f0'], + }), + ('PEcAn.benchmark', '1.7.3.9000', { + 'checksums': ['2e8b285869b4df148228cdde5de44a67dfe0b584b2a7cd614280134259e33ed4'], + }), + ('PEcAn.visualization', version, { + 'checksums': ['f77dcb756871a419a85e46cde4a1fb0a1993c29cce8578255d5a46db722ece43'], + }), + ('PEcAn.data.land', version, { + 'checksums': ['19c572e95c11362f4714d9c3d9cc7b2d17c2e3a34513c7ed629e7bdb99bdd0ec'], + }), + ('MODISTools', '1.1.5', { + 'checksums': ['0a6b3762865424e299e1a5ec28de78b8dcca3f673e61f42a37dae19ed78db3e3'], + }), + ('PEcAn.data.remote', version, { + 'checksums': ['c097d9395d9dbb6c123f404525cae7fdb1a99b142b32c1a40b0143060444e184'], + }), + ('SparseGrid', '0.8.2', { + 'checksums': ['1d84ae83db2a390b111589a10570d55b378c2dd3310d3bc588a94ab8845cfd14'], + }), + ('lqmm', '1.5.8', { + 'checksums': ['11eddeeeed6b9d3190a80a3b3cc3d64519c6e9cb208746a3736139340df691fb'], + }), + ('PEcAn.workflow', version, { + 'checksums': ['91a1849c040089da1088c02469b973a5f301a419237db7c840fe4ca2922f4b9d'], + }), + ('PEcAn.assim.batch', version, { + 'checksums': ['a1403a5a4591791e37e7e48ca9e9d49f66f4270757711b68b72fd38aadd411cb'], + }), + ('PEcAn.all', version, { + 'checksums': ['6fe594fb890b5680977d1bf58232b941c6d522456e7803e3dc9c4418b92db737'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['%(name)s.all'], +} + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000_duckdb.patch b/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000_duckdb.patch new file mode 100644 index 00000000000..940992bf5ba --- /dev/null +++ b/easybuild/easyconfigs/p/PEcAn/PEcAn-1.8.0.9000_duckdb.patch @@ -0,0 +1,16 @@ +Fixes the `prefix_back_ was not declared` error, see https://github.com/duckdb/duckdb/pull/12344 +Source: https://patch-diff.githubusercontent.com/raw/duckdb/duckdb/pull/12344.diff +diff -u src/duckdb/third_party/re2/re2/prog.cc.orig src/duckdb/third_party/re2/re2/prog.cc +--- src/duckdb/third_party/re2/re2/prog.cc.orig 2024-07-19 14:46:13.000000000 +0200 ++++ src/duckdb/third_party/re2/re2/prog.cc 2024-08-21 15:51:17.394266979 +0200 +@@ -1143,8 +1143,8 @@ + const __m256i* bp = reinterpret_cast( + reinterpret_cast(data) + prefix_size_-1); + const __m256i* endfp = fp + size/sizeof(__m256i); +- const __m256i f_set1 = _mm256_set1_epi8(prefix_front_); +- const __m256i b_set1 = _mm256_set1_epi8(prefix_back_); ++ const __m256i f_set1 = _mm256_set1_epi8(prefix_front_back.prefix_front_); ++ const __m256i b_set1 = _mm256_set1_epi8(prefix_front_back.prefix_back_); + do { + const __m256i f_loadu = _mm256_loadu_si256(fp++); + const __m256i b_loadu = _mm256_loadu_si256(bp++); diff --git a/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb b/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb new file mode 100644 index 00000000000..51357650dbb --- /dev/null +++ b/easybuild/easyconfigs/p/PLINK/PLINK-1.90-beta-7.4-x86_64.eb @@ -0,0 +1,22 @@ +easyblock = 'PackedBinary' + +name = 'PLINK' +version = '1.90-beta-7.4-x86_64' + +homepage = 'https://www.cog-genomics.org/plink/1.9/' +description = 'plink-1.9-x86_64: Whole-genome association analysis toolset' + +toolchain = SYSTEM + +source_urls = ['https://s3.amazonaws.com/plink1-assets/'] +sources = ['plink_linux_x86_64_20240818.zip'] +checksums = ['0ac294ffcd5d82f5b0d2d7f579ac85a87017f6fc46485b21793f5aff9c719e3d'] + +sanity_check_paths = { + 'files': ['plink', 'prettify', 'toy.map', 'toy.ped'], + 'dirs': [], +} + +sanity_check_commands = ["plink --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb index 3a0b31731ee..502cbfbd652 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb @@ -38,11 +38,6 @@ if ARCH == 'x86_64': configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-intel-2021a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-intel-2021a.eb index ba0747ac705..d84282472f8 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-intel-2021a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-intel-2021a.eb @@ -36,11 +36,6 @@ configopts += '--enable-boost_graph --enable-boost_serialization ' configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb index c653aa77c5b..d39ecac24b5 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb @@ -38,11 +38,6 @@ if ARCH == 'x86_64': configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb index 8dcdc9293d7..378a40f25d3 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb @@ -35,11 +35,6 @@ configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --e configopts += '--enable-boost_graph --enable-boost_serialization ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb index 846670014d4..b0fe4443cc6 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb @@ -35,11 +35,6 @@ configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --e configopts += '--enable-boost_graph --enable-boost_serialization ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb index a2971db49f7..92cdbe73b2a 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb @@ -35,11 +35,6 @@ configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --e configopts += '--enable-boost_graph --enable-boost_serialization ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb index 8ca97130960..b08db49309a 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb @@ -35,11 +35,6 @@ configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --e configopts += '--enable-boost_graph --enable-boost_serialization ' prebuildopts = 'source sourceme.sh && ' -# make sure that ld.gold linker is used -# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" -# (problem with intel build but maintain consistency between easyconfigs) -buildopts = 'LD_RO="ld.gold -r -o"' - # install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.2-foss-2023b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.2-foss-2023b.eb new file mode 100644 index 00000000000..3ed5ad9b823 --- /dev/null +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.2-foss-2023b.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'PLUMED' +version = '2.9.2' + +homepage = 'https://www.plumed.org' +description = """PLUMED is an open source library for free energy calculations in molecular systems which + works together with some of the most popular molecular dynamics engines. Free energy calculations can be + performed as a function of many order parameters with a particular focus on biological problems, using + state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. + The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'usempi': 'True'} + +source_urls = ['https://github.com/plumed/plumed2/releases/download/v%(version)s/'] +sources = [SOURCE_TGZ] +checksums = ['6fc23fe31074ad6b7a0eb9e2441fce5b3d92514d0d87206594c59c75e4c83d6e'] + +builddependencies = [ + ('xxd', '9.1.0307'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('GSL', '2.7'), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('Boost', '1.83.0'), +] + +preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' +configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' +configopts += '--enable-boost_graph --enable-boost_serialization ' +prebuildopts = 'source sourceme.sh && ' + +# install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed +preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' + +sanity_check_paths = { + 'files': ['bin/plumed', 'lib/libplumedKernel.%s' % SHLIB_EXT, 'lib/libplumed.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["python -c 'import plumed'"] + +modextrapaths = { + 'PLUMED_KERNEL': 'lib/libplumedKernel.%s' % SHLIB_EXT, + 'PLUMED_ROOT': 'lib/plumed', + 'PYTHONPATH': 'lib/plumed/python', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PLY/PLY-3.11-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PLY/PLY-3.11-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a5620c426d6 --- /dev/null +++ b/easybuild/easyconfigs/p/PLY/PLY-3.11-GCCcore-13.3.0.eb @@ -0,0 +1,22 @@ +easyblock = 'PythonPackage' + +name = 'PLY' +version = '3.11' + +homepage = "https://www.dabeaz.com/ply/" +description = """PLY is yet another implementation of lex and yacc for Python.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..1eddcba72f5 --- /dev/null +++ b/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'POT' +version = '0.9.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/rflamary/POT' +description = """POT (Python Optimal Transport) is a Python library provide several solvers for optimization problems + related to Optimal Transport for signal, image processing and machine learning.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), + ('scikit-learn', '1.3.1'), + ('CUDA', '12.1.1', '', SYSTEM), + ('PyTorch', '2.1.2', versionsuffix), + ('jax', '0.4.25', versionsuffix), + ('CVXOPT', '1.3.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('autograd', '1.7.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['49680300f842f3a8722b060ac0d3ed7aca071d1ad4d3d38c9fdadafdcc73c30b'], + }), + ('versioneer', '0.29', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0f1a137bb5d6811e96a79bb0486798aeae9b9c6efc24b389659cebb0ee396cb9'], + }), + ('pymanopt', '2.2.1', { + # Requirements forbid some versions of `scipy` which are known to have a bug but we have fixed it. + # see `scipy-1.11.1_vectorization_error.patch` + 'preinstallopts': """sed -i 's/"scipy>=1.0[^"]*"/"scipy>=1.0"/g' pyproject.toml && """, + 'checksums': ['c784929a436eb06d73371b53ae5db3cdc19c5e60280f8131553bc805cbf7a1da'], + }), + (name, version, { + 'modulename': 'ot', + 'checksums': ['eecf2394390a73472e727ef75f7c801fc47509039f00c40f8fc64fdeea617c86'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1307155f8f7 --- /dev/null +++ b/easybuild/easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,49 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2014-2015 The Cyprus Institute +# Authors:: Thekla Loizou +# License:: MIT/GPL +# +## +easyblock = 'CMakeMake' + +name = 'PROJ' +version = '9.4.1' + +homepage = 'https://proj.org' +description = """Program proj is a standard Unix filter function which converts +geographic longitude and latitude coordinates into cartesian coordinates""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://download.osgeo.org/proj/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ffe20170ee2b952207adf8a195e2141eab12cda181e49fdeb54425d98c7171d7'] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('googletest', '1.15.2'), +] + +dependencies = [ + ('SQLite', '3.45.3'), + ('LibTIFF', '4.6.0'), + ('cURL', '8.7.1'), + ('XZ', '5.4.5'), + ('nlohmann_json', '3.11.3'), +] + +# build twice, once for static, once for shared libraries +configopts = ['', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/cct', 'bin/cs2cs', 'bin/geod', 'bin/gie', 'bin/proj', 'bin/projinfo', + 'lib/libproj.a', 'lib/libproj.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..85f8b20972c --- /dev/null +++ b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,44 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'CMakeMakeCp' + +name = 'PRSice' +version = '2.3.5' + +homepage = 'https://choishingwan.github.io/PRSice/' +description = """PRSice (pronounced 'precise') is a Polygenic Risk +Score software for calculating, applying, evaluating and +plotting the results of polygenic risk scores (PRS) analyses.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/choishingwan/%(name)s/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['PRSice-2.3.5_remove_sysctl.patch'] +checksums = [ + '0a7e649ddebe4e969cd8400c5ad977a7b900be4f5c920a84483cb8930367354d', # 2.3.5.tar.gz + 'ab8286e8a0700ea163f552de66458e409c396e06b57c9adfff3b7f63083f7798', # PRSice-2.3.5_remove_sysctl.patch +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), + ('Eigen', '3.4.0'), +] + +files_to_copy = [ + (['bin/%(name)s'], 'bin'), + 'README.md', + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(name)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch new file mode 100644 index 00000000000..04a71e26a8b --- /dev/null +++ b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch @@ -0,0 +1,194 @@ +# What: sysctl.h is removed in glibc v2.32. This patch is based on the following commits +# from https://github.com/choishingwan/PRSice: +# f285b243856b857a461d9a2b27e1f2f0ac25216e +# 53641c11750a7e0bdd06a925fbf28c1e3978ee72 +# Also see issue https://github.com/choishingwan/PRSice/issues/338 and PR https://github.com/choishingwan/PRSice/pull/243 +# Author: maxim-masterov (SURF) + +diff -Nru PRSice-2.3.5.orig/inc/misc.hpp PRSice-2.3.5/inc/misc.hpp +--- PRSice-2.3.5.orig/inc/misc.hpp 2024-10-23 18:13:58.539539000 +0200 ++++ PRSice-2.3.5/inc/misc.hpp 2024-10-23 18:14:29.383991502 +0200 +@@ -38,7 +38,6 @@ + #include + #include + #include +-#include + #elif defined _WIN32 + #include + // psapi must go after windows, or will generate error +@@ -48,7 +47,6 @@ + #include "stdlib.h" + #include "string.h" + #include +-#include + #include + #include + #endif +@@ -86,9 +84,6 @@ + #include + #include + #include +-#if defined(BSD) +-#include +-#endif + + #else + #error "Unable to define getMemorySize( ) for an unknown OS." +@@ -170,73 +165,7 @@ + // TODO: Delete this, doesn't seems to give robust answer + inline size_t current_ram_usage() { return 0; } + // TODO: Delete this, doesn't seems to give robust answer +-inline size_t total_ram_available() +-{ +-#ifdef __APPLE__ +- int32_t mib[2]; +- size_t sztmp; +-#endif +- unsigned char* bigstack_ua = nullptr; // ua = unaligned +- int64_t llxx; +- intptr_t default_alloc_mb; +- intptr_t malloc_size_mb = 0; +-#ifdef __APPLE__ +- mib[0] = CTL_HW; +- mib[1] = HW_MEMSIZE; +- llxx = 0; +- +- sztmp = sizeof(int64_t); +- sysctl(mib, 2, &llxx, &sztmp, nullptr, 0); +- llxx /= 1048576; +-#else +-#ifdef _WIN32 +- MEMORYSTATUSEX memstatus; +- memstatus.dwLength = sizeof(memstatus); +- GlobalMemoryStatusEx(&memstatus); +- llxx = memstatus.ullTotalPhys / 1048576; +-#else +- llxx = ((uint64_t) sysconf(_SC_PHYS_PAGES)) +- * ((size_t) sysconf(_SC_PAGESIZE)) / 1048576; +-#endif +-#endif +- if (!llxx) { default_alloc_mb = BIGSTACK_DEFAULT_MB; } +- else if (llxx < (BIGSTACK_MIN_MB * 2)) +- { +- default_alloc_mb = BIGSTACK_MIN_MB; +- } +- else +- { +- default_alloc_mb = llxx / 2; +- } +- if (!malloc_size_mb) { malloc_size_mb = default_alloc_mb; } +- else if (malloc_size_mb < BIGSTACK_MIN_MB) +- { +- malloc_size_mb = BIGSTACK_MIN_MB; +- } +- std::string message = ""; +-#ifndef __LP64__ +- if (malloc_size_mb > 2047) { malloc_size_mb = 2047; } +-#endif +- bigstack_ua = +- (unsigned char*) malloc(malloc_size_mb * 1048576 * sizeof(char)); +- // if fail, return nullptr which will then get into the while loop +- while (!bigstack_ua) +- { +- malloc_size_mb = (malloc_size_mb * 3) / 4; +- if (malloc_size_mb < BIGSTACK_MIN_MB) +- { malloc_size_mb = BIGSTACK_MIN_MB; } +- bigstack_ua = +- (unsigned char*) malloc(malloc_size_mb * 1048576 * sizeof(char)); +- if (bigstack_ua) {} +- else if (malloc_size_mb == BIGSTACK_MIN_MB) +- { +- throw std::runtime_error("Failed to allocate required memory"); +- } +- } +- free(bigstack_ua); +- bigstack_ua = nullptr; +- return malloc_size_mb * 1024 * 1024; +-} ++ + // function from John D.Cook + // https://www.johndcook.com/blog/standard_deviation/ + class RunningStat +@@ -1398,82 +1327,5 @@ + return (size_t) 0L; /* Unsupported. */ + #endif + } +- +- +-/** +- * Returns the size of physical memory (RAM) in bytes. +- */ +-inline size_t getMemorySize() +-{ +-#if defined(_WIN32) && (defined(__CYGWIN__) || defined(__CYGWIN32__)) +- /* Cygwin under Windows. ------------------------------------ */ +- /* New 64-bit MEMORYSTATUSEX isn't available. Use old 32.bit */ +- MEMORYSTATUS status; +- status.dwLength = sizeof(status); +- GlobalMemoryStatus(&status); +- return (size_t) status.dwTotalPhys; +- +-#elif defined(_WIN32) +- /* Windows. ------------------------------------------------- */ +- /* Use new 64-bit MEMORYSTATUSEX, not old 32-bit MEMORYSTATUS */ +- MEMORYSTATUSEX status; +- status.dwLength = sizeof(status); +- GlobalMemoryStatusEx(&status); +- return (size_t) status.ullTotalPhys; +- +-#elif defined(__unix__) || defined(__unix) || defined(unix) \ +- || (defined(__APPLE__) && defined(__MACH__)) +- /* UNIX variants. ------------------------------------------- */ +- /* Prefer sysctl() over sysconf() except sysctl() HW_REALMEM and HW_PHYSMEM +- */ +- +-#if defined(CTL_HW) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM64)) +- int mib[2]; +- mib[0] = CTL_HW; +-#if defined(HW_MEMSIZE) +- mib[1] = HW_MEMSIZE; /* OSX. --------------------- */ +-#elif defined(HW_PHYSMEM64) +- mib[1] = HW_PHYSMEM64; /* NetBSD, OpenBSD. --------- */ +-#endif +- int64_t size = 0; /* 64-bit */ +- size_t len = sizeof(size); +- if (sysctl(mib, 2, &size, &len, NULL, 0) == 0) return (size_t) size; +- return 0L; /* Failed? */ +- +-#elif defined(_SC_AIX_REALMEM) +- /* AIX. ----------------------------------------------------- */ +- return (size_t) sysconf(_SC_AIX_REALMEM) * (size_t) 1024L; +- +-#elif defined(_SC_PHYS_PAGES) && defined(_SC_PAGESIZE) +- /* FreeBSD, Linux, OpenBSD, and Solaris. -------------------- */ +- return (size_t) sysconf(_SC_PHYS_PAGES) * (size_t) sysconf(_SC_PAGESIZE); +- +-#elif defined(_SC_PHYS_PAGES) && defined(_SC_PAGE_SIZE) +- /* Legacy. -------------------------------------------------- */ +- return (size_t) sysconf(_SC_PHYS_PAGES) * (size_t) sysconf(_SC_PAGE_SIZE); +- +-#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM)) +- /* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */ +- int mib[2]; +- mib[0] = CTL_HW; +-#if defined(HW_REALMEM) +- mib[1] = HW_REALMEM; /* FreeBSD. ----------------- */ +-#elif defined(HW_PYSMEM) +- mib[1] = HW_PHYSMEM; /* Others. ------------------ */ +-#endif +- unsigned int size = 0; /* 32-bit */ +- size_t len = sizeof(size); +- if (sysctl(mib, 2, &size, &len, NULL, 0) == 0) return (size_t) size; +- return 0L; /* Failed? */ +-#endif /* sysctl and sysconf variants */ +- +-#else +- return 0L; /* Unknown OS. */ +-#endif + } + +-inline unsigned long long remain_memory(const double& adjFactor = 0.8) +-{ +- return (misc::getMemorySize() * adjFactor - getCurrentRSS()); +-} +-} diff --git a/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1-foss-2023a.eb b/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1-foss-2023a.eb new file mode 100644 index 00000000000..771a55a0f20 --- /dev/null +++ b/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1-foss-2023a.eb @@ -0,0 +1,87 @@ +easyblock = 'EB_PSI' + +name = 'PSI4' +version = '1.9.1' + +homepage = 'https://www.psicode.org/' +description = """PSI4 is an open-source suite of ab initio quantum chemistry programs designed for +efficient, high-accuracy simulations of a variety of molecular properties. We can routinely perform +computations with more than 2500 basis functions running serially or in parallel. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/psi4/psi4/archive'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'PSI4-%(version)s_fix_cmake_release.patch', + 'PSI4-1.7_fix_snsmp2_version.patch', +] +checksums = [ + {'v1.9.1.tar.gz': 'ccd69bdc1d8319470513b4d3c1e0d737fc7788a50d7e48f8db762a0fcf795dad'}, + {'PSI4-1.9.1_fix_cmake_release.patch': '8f2bb210508cbb78a258c8d85d10d456c61e0f828865f3efb8d3bac9184df24e'}, + {'PSI4-1.7_fix_snsmp2_version.patch': '064dcf60e74e0c449f77bb6e4dcf4b3338edad7d9a046089ecc2979aed1a00f9'}, +] + +dependencies = [ + ('Python', '3.11.3'), + ('libxc', '6.2.2'), + ('CheMPS2', '1.8.12'), + ('networkx', '3.1'), + ('pytest', '7.4.2'), + ('Boost', '1.82.0'), + ('PyYAML', '6.0'), + ('SciPy-bundle', '2023.07'), + ('Pint', '0.23'), + ('pydantic', '2.5.3'), + ('py-cpuinfo', '9.0.0'), +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Eigen', '3.4.0'), + ('poetry', '1.7.1'), # for qcelemental +] + +configopts = '-DENABLE_MPI=ON -DENABLE_PLUGINS=ON -DENABLE_XHOST=OFF ' +# Install python module to the standard location instead of lib +configopts += '-DPYMOD_INSTALL_LIBDIR=/python%(pyshortver)s/site-packages ' +# Add bundled (downloaded) packages +# -DENABLE_simint=ON does not work with intel/2018, so have to make with GCCcore +configopts += '-DENABLE_dkh=ON -DENABLE_gdma=ON -DENABLE_resp=ON -DENABLE_snsmp2=ON ' +# allow PSI4 to download and build a forked version of PCMSolver otherwise tests fail +configopts += '-DENABLE_PCMSolver=ON ' + +# runtest uses ctest, and some of the tests have to be manually compared +# to the reference output (those tests are marked failed) +# After installing PSI4, you can test the package using psi4 --test command. (This uses pytest framework) +# runtest = '-L smoke' +runtest = False + +exts_defaultclass = 'PythonPackage' +exts_filter = ("python -s -c 'import %(ext_name)s'", '') +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('qcelemental', '0.28.0', { + 'checksums': ['da96fddb88c1701f812b25369a6a169d35f2d5446c37c62e86048cb0f1b168a2'], + }), + ('qcengine', '0.30.0', { + 'checksums': ['ba62d34dbcf487e8368f6c19762a19e1c5f06af7e705f6c583c0632b35bccf7d'], + }), + ('snsmp2', '1.0.0', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['acfc95f8eb40e18d9d0c737b42fc8dfa786c381a5510a3094772b82538d211ed'], + }), +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_commands = ["python -s -c 'import psi4'"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1_fix_cmake_release.patch b/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1_fix_cmake_release.patch new file mode 100644 index 00000000000..7eea87a86e1 --- /dev/null +++ b/easybuild/easyconfigs/p/PSI4/PSI4-1.9.1_fix_cmake_release.patch @@ -0,0 +1,95 @@ +remove CMAKE_BUILD_TYPE check (because it is set to EasyBuildRelease to avoid -O3 optimization flag) +original patch by B. Hajgato - (Free University Brussels - VUB) +ported to PSI4 1.3.1 by Kenneth Hoste (HPC-UGent) +ported to PSI4 1.7 by Neil Douglas (neil.douglas@york.ac.uk) +ported to PSI4 1.9.1 by Samuel Moors (Vrije Universiteit Brussel) +diff -ur psi4-1.9.1.orig/cmake/autocmake_safeguards.cmake psi4-1.9.1/cmake/autocmake_safeguards.cmake +--- psi4-1.9.1.orig/cmake/autocmake_safeguards.cmake 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/cmake/autocmake_safeguards.cmake 2024-09-19 18:06:50.961414596 +0200 +@@ -19,9 +19,3 @@ + string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_tolower) + string(TOUPPER "${CMAKE_BUILD_TYPE}" cmake_build_type_toupper) + +-if(NOT cmake_build_type_tolower STREQUAL "debug" AND +- NOT cmake_build_type_tolower STREQUAL "release" AND +- NOT cmake_build_type_tolower STREQUAL "minsizerel" AND +- NOT cmake_build_type_tolower STREQUAL "relwithdebinfo") +- message(FATAL_ERROR "Unknown build type \"${CMAKE_BUILD_TYPE}\". Allowed values are Debug, Release, RelWithDebInfo, MinSizeRel (case-insensitive).") +-endif() +diff -ur psi4-1.9.1.orig/external/upstream/dkh/CMakeLists.txt psi4-1.9.1/external/upstream/dkh/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/dkh/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/dkh/CMakeLists.txt 2024-09-19 18:09:27.904110642 +0200 +@@ -24,6 +24,7 @@ + DEPENDS lapack_external + URL https://github.com/psi4/dkh/archive/3ba0128.tar.gz # v1.2 + cmake + UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/gau2grid/CMakeLists.txt psi4-1.9.1/external/upstream/gau2grid/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/gau2grid/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/gau2grid/CMakeLists.txt 2024-09-19 19:00:53.785308308 +0200 +@@ -20,6 +20,7 @@ + DEPENDS pybind11_external + URL https://github.com/dgasmith/gau2grid/archive/v2.0.7.tar.gz + UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/gdma/CMakeLists.txt psi4-1.9.1/external/upstream/gdma/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/gdma/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/gdma/CMakeLists.txt 2024-09-19 18:09:47.177430325 +0200 +@@ -24,6 +24,7 @@ + DEPENDS pybind11_external + URL https://github.com/psi4/gdma/archive/v2.3.3.tar.gz # Stone's upstream c2e0b548 plus commits from Andy Simmonett for lib, Holger Kruse for I/O, Lori Burns for CMake & Python + UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/libefp/CMakeLists.txt psi4-1.9.1/external/upstream/libefp/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/libefp/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/libefp/CMakeLists.txt 2024-09-19 18:10:04.346993747 +0200 +@@ -21,6 +21,7 @@ + DEPENDS lapack_external + URL https://github.com/ilyak/libefp/archive/15cd7ce.tar.gz # v1.5.0 + 10 (docs and a cmake lapack patch) + UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/libint/CMakeLists.txt psi4-1.9.1/external/upstream/libint/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/libint/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/libint/CMakeLists.txt 2024-09-19 18:10:45.532297897 +0200 +@@ -15,6 +15,7 @@ + ExternalProject_Add(libint_external + # "git checkout" fails on Windows, because of "*" in filenames (e.g. basis set files) + URL https://github.com/loriab/libint/archive/libint_t.tar.gz ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/libxc/CMakeLists.txt psi4-1.9.1/external/upstream/libxc/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/libxc/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/libxc/CMakeLists.txt 2024-09-19 18:11:17.460151143 +0200 +@@ -24,6 +24,7 @@ + #GIT_REPOSITORY https://gitlab.com/libxc/libxc.git + #GIT_TAG 5.1.5 + #UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} +diff -ur psi4-1.9.1.orig/external/upstream/pcmsolver/CMakeLists.txt psi4-1.9.1/external/upstream/pcmsolver/CMakeLists.txt +--- psi4-1.9.1.orig/external/upstream/pcmsolver/CMakeLists.txt 2024-02-08 22:08:35.000000000 +0100 ++++ psi4-1.9.1/external/upstream/pcmsolver/CMakeLists.txt 2024-09-19 20:53:02.637798342 +0200 +@@ -33,6 +33,7 @@ + #URL https://github.com/loriab/pcmsolver/archive/v1211.tar.gz + URL https://github.com/loriab/pcmsolver/archive/v123_plus_ming.tar.gz + UPDATE_COMMAND "" ++ PATCH_COMMAND sed -e "s/debug/easybuildrelease/" -i cmake/downloaded/autocmake_safeguards.cmake + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} diff --git a/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..cfbbc1eb16b --- /dev/null +++ b/easybuild/easyconfigs/p/Pango/Pango-1.54.0-GCCcore-13.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'MesonNinja' + +name = 'Pango' +version = '1.54.0' + +homepage = 'https://pango.gnome.org/' +description = """Pango is a library for laying out and rendering of text, with an emphasis on internationalization. +Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the +context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['8a9eed75021ee734d7fc0fdf3a65c3bba51dfefe4ae51a9b414a60c70b2d1ed8'] + +builddependencies = [ + ('binutils', '2.42'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('GObject-Introspection', '1.80.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('X11', '20240607'), + ('GLib', '2.80.4'), + ('cairo', '1.18.0'), + ('HarfBuzz', '9.0.0'), + ('FriBidi', '1.0.15'), +] + +configopts = "--buildtype=release --default-library=both " + +sanity_check_paths = { + 'files': ['bin/pango-view', 'lib/libpango-1.0.%s' % SHLIB_EXT, 'lib/libpangocairo-1.0.%s' % SHLIB_EXT, + 'lib/libpangoft2-1.0.%s' % SHLIB_EXT, 'lib/libpangoxft-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/Panoply/Panoply-5.5.1.eb b/easybuild/easyconfigs/p/Panoply/Panoply-5.5.1.eb new file mode 100644 index 00000000000..f82b44f3ee5 --- /dev/null +++ b/easybuild/easyconfigs/p/Panoply/Panoply-5.5.1.eb @@ -0,0 +1,32 @@ +easyblock = 'PackedBinary' + +name = 'Panoply' +version = '5.5.1' + +homepage = 'https://www.giss.nasa.gov/tools/panoply' +description = "Panoply plots geo-referenced and other arrays from netCDF, HDF, GRIB, and other datasets." + + +toolchain = SYSTEM + +source_urls = ['https://www.giss.nasa.gov/tools/panoply/download/'] +sources = ['%(name)sJ-%(version)s.tgz'] +checksums = ['14196be2dd83721e475dfa0b230859b9e102bfdcc62119536ececbf8dcbbbb96'] + +dependencies = [ + ('Java', '11', '', SYSTEM), +] + +postinstallcmds = [ + 'mkdir %(installdir)s/bin', + 'mv %(installdir)s/panoply.sh %(installdir)s/bin', + 'sed -i "s,jars,../jars,g" %(installdir)s/bin/panoply.sh', + 'ln -s %(installdir)s/bin/panoply.sh %(installdir)s/bin/panoply', +] + +sanity_check_paths = { + 'files': ['bin/panoply'], + 'dirs': ['jars'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/ParMGridGen/ParMGridGen-1.0-gompi-2023a.eb b/easybuild/easyconfigs/p/ParMGridGen/ParMGridGen-1.0-gompi-2023a.eb new file mode 100644 index 00000000000..bee93301eb9 --- /dev/null +++ b/easybuild/easyconfigs/p/ParMGridGen/ParMGridGen-1.0-gompi-2023a.eb @@ -0,0 +1,40 @@ +easyblock = 'MakeCp' + +name = 'ParMGridGen' +version = '1.0' + +homepage = 'http://www-users.cs.umn.edu/~moulitsa/software.html' +description = """ParMGridGen is an MPI-based parallel library that is based on the serial package MGridGen, + that implements (serial) algorithms for obtaining a sequence of successive coarse grids that are well-suited + for geometric multigrid methods.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://download.sourceforge.net/foam-extend/ThirdParty'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'ParMGridGen-%(version)s_malloc_include.patch', + 'ParMGridGen-%(version)s_gompiOpenFOAM-Extend.patch', +] +checksums = [ + '62cdb6e48cfc59124e5d5d360c2841e0fc2feecafe65bda110b74e942740b395', # ParMGridGen-1.0.tar.gz + '3e0d72f82b3b56cbfcb1e3c9afc6594eb25316a0faeb49237faa8d969b4daeaa', # ParMGridGen-1.0_malloc_include.patch + '60cc46d156e99101b21bde9d23cf6c2db3dcdef1704f1830a7baa0320003c02a', # ParMGridGen-1.0_gompiOpenFOAM-Extend.patch +] + +buildopts = 'parallel make=make CC="$CC" PARCC="$CC" PARLD="$CC" COPTIONS="$CFLAGS" LDOPTIONS="$CFLAGS" BINDIR="."' + +files_to_copy = [ + (['MGridGen/Programs/mgridgen', 'ParMGridGen/Programs/parmgridgen'], 'bin'), + (['mgridgen.h', 'parmgridgen.h', 'MGridGen/IMlib/IMlib.h'], 'include'), + (['libmgrid.a', 'libMGridGen.a', 'libparmgrid.a', 'MGridGen/IMlib/libIMlib.a'], 'lib'), +] + +sanity_check_paths = { + 'files': ['bin/mgridgen', 'bin/parmgridgen', 'include/mgridgen.h', 'include/parmgridgen.h', + 'include/IMlib.h', 'lib/libmgrid.a', 'lib/libMGridGen.a', 'lib/libparmgrid.a', 'lib/libIMlib.a'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb index 8f312f89318..340952c3338 100644 --- a/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb @@ -44,7 +44,7 @@ dependencies = [ _copts = [ # Basic configuration - '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON' + '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON', '-DPARAVIEW_BUILD_SHARED_LIBS=ON', '-DPARAVIEW_USE_MPI=ON', '-DPARAVIEW_ENABLE_FFMPEG=ON', diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b-Qt5.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b-Qt5.eb new file mode 100644 index 00000000000..abec428859f --- /dev/null +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b-Qt5.eb @@ -0,0 +1,72 @@ +easyblock = 'CMakeMake' + +name = 'ParaView' +version = '5.12.0' +versionsuffix = '-Qt5' + +homepage = 'https://www.paraview.org' +description = "ParaView is a scientific parallel visualizer." + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile=' +source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix] +sources = ["%(name)s-v%(version)s.tar.gz"] +patches = ['ParaView-5.11.1-remove_glew_init_warning.patch'] +checksums = [ + {'ParaView-v5.12.0.tar.gz': '2cc5733608fd508e2da8fc5d4ee693523d350dc1e1f89f9a89a78dc63107f70e'}, + {'ParaView-5.11.1-remove_glew_init_warning.patch': + 'dd86134f3a5b2c1b834224c69665dd31f99ef7d367688fe77dbaada212758710'}, +] + +builddependencies = [('CMake', '3.27.6')] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('Boost', '1.83.0'), + ('XZ', '5.4.4'), + ('HDF5', '1.14.3'), + ('netCDF', '4.9.2'), + ('libdrm', '2.4.117'), + ('Mesa', '23.1.9'), + ('Qt5', '5.15.13'), + ('zlib', '1.2.13'), + ('FFmpeg', '6.0'), + ('Szip', '2.1.1'), +] + +_copts = [ + # Basic configuration + '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON', + '-DPARAVIEW_BUILD_SHARED_LIBS=ON', + '-DPARAVIEW_USE_MPI=ON', + '-DPARAVIEW_ENABLE_FFMPEG=ON', + '-DPARAVIEW_USE_PYTHON=ON', + '-DPython3_ROOT_DIR=$EBROOTPYTHON', + # Useful input formats + '-DPARAVIEW_ENABLE_XDMF2=ON', + '-DPARAVIEW_ENABLE_XDMF3=ON', + # EGL, X and Mesa + '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s' % SHLIB_EXT, + '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include', + '-DEGL_INCLUDE_DIR=$EBROOTLIBGLVND/include', + '-DEGL_LIBRARY=$EBROOTLIBGLVND/lib/libEGL.%s' % SHLIB_EXT, + '-DEGL_opengl_LIBRARY=$EBROOTLIBGLVND/libOpenGL.%s' % SHLIB_EXT, + '-DVTK_OPENGL_HAS_EGL=ON', + '-DVTK_USE_X=ON', + '-DVTK_OPENGL_HAS_OSMESA=OFF', + '-DVTK_PYTHON_OPTIONAL_LINK=OFF'] +configopts = ' '.join(_copts) + +sanity_check_paths = { + 'files': ['bin/paraview', 'bin/pvserver', 'bin/pvpython'], + 'dirs': ['include/paraview-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['python -c "import paraview"'] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b.eb index 018edd70431..ed8408c9301 100644 --- a/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b.eb +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-foss-2023b.eb @@ -12,11 +12,15 @@ toolchainopts = {'pic': True, 'usempi': True} local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile=' source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix] sources = ["%(name)s-v%(version)s.tar.gz"] -patches = ['ParaView-5.11.1-remove_glew_init_warning.patch'] +patches = [ + 'ParaView-5.11.1-remove_glew_init_warning.patch', + 'ParaView-5.12.0-qt6_fixes.patch', +] checksums = [ {'ParaView-v5.12.0.tar.gz': '2cc5733608fd508e2da8fc5d4ee693523d350dc1e1f89f9a89a78dc63107f70e'}, {'ParaView-5.11.1-remove_glew_init_warning.patch': 'dd86134f3a5b2c1b834224c69665dd31f99ef7d367688fe77dbaada212758710'}, + {'ParaView-5.12.0-qt6_fixes.patch': '015d07ac6b74c7355b56ed7f67166f0d5b765f9d6ac135b7246a675a317063df'}, ] builddependencies = [('CMake', '3.27.6')] @@ -58,7 +62,9 @@ _copts = [ '-DEGL_opengl_LIBRARY=$EBROOTLIBGLVND/libOpenGL.%s' % SHLIB_EXT, '-DVTK_OPENGL_HAS_EGL=ON', '-DVTK_USE_X=ON', - '-DVTK_OPENGL_HAS_OSMESA=OFF'] + '-DVTK_OPENGL_HAS_OSMESA=OFF', + '-DVTK_PYTHON_OPTIONAL_LINK=OFF'] + configopts = ' '.join(_copts) sanity_check_paths = { diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-qt6_fixes.patch b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-qt6_fixes.patch new file mode 100644 index 00000000000..838d6fe5d32 --- /dev/null +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.12.0-qt6_fixes.patch @@ -0,0 +1,126 @@ +This patch solves qt6 compatibility issues. For details see +https://gitlab.kitware.com/paraview/paraview/-/merge_requests/6836 + +diff --git a/Plugins/CAVEInteraction/pqVRDockPanel.cxx b/Plugins/CAVEInteraction/pqVRDockPanel.cxx +index 7a3d352b993f2930716b47dd98512ca88697374c..448ac4d3833ec1582d99139b3f3fea6bbdf7d3ce 100644 +--- a/Plugins/CAVEInteraction/pqVRDockPanel.cxx ++++ b/Plugins/CAVEInteraction/pqVRDockPanel.cxx +@@ -159,8 +159,8 @@ void pqVRDockPanel::initStyles() + this->Internals->stylesCombo->addItem(QString::fromStdString(styleDescs[i])); + } + +- connect(this->Internals->stylesCombo, SIGNAL(currentIndexChanged(QString)), this, +- SLOT(styleComboChanged(QString)), Qt::UniqueConnection); ++ QObject::connect(this->Internals->stylesCombo, &QComboBox::currentTextChanged, this, ++ &pqVRDockPanel::styleComboChanged, Qt::UniqueConnection); + } + + //----------------------------------------------------------------------------- +diff --git a/Qt/Components/pqCustomFilterDefinitionWizard.cxx b/Qt/Components/pqCustomFilterDefinitionWizard.cxx +index 9c140a37abca11b19f0c04bf7c41645b756457d6..acd7bd99e19017a5557a41c4585586b39e5ffc58 100644 +--- a/Qt/Components/pqCustomFilterDefinitionWizard.cxx ++++ b/Qt/Components/pqCustomFilterDefinitionWizard.cxx +@@ -134,8 +134,8 @@ pqCustomFilterDefinitionWizard::pqCustomFilterDefinitionWizard( + SLOT(clearNameOverwrite(const QString&))); + + // When combo selection changes, update new label to be same as old. +- QObject::connect(this->Form->PropertyCombo, SIGNAL(currentIndexChanged(const QString&)), +- this->Form->PropertyName, SLOT(setText(const QString&))); ++ QObject::connect(this->Form->PropertyCombo, &QComboBox::currentTextChanged, ++ this->Form->PropertyName, &QLineEdit::setText); + } + + //----------------------------------------------------------------------------- +diff --git a/Qt/Components/pqDataInformationWidget.cxx b/Qt/Components/pqDataInformationWidget.cxx +index f151d584fc8b683b5666c11c7dfad85219c1e94f..7079507a14bad98dd10bff7ddf65af896cf5e919 100644 +--- a/Qt/Components/pqDataInformationWidget.cxx ++++ b/Qt/Components/pqDataInformationWidget.cxx +@@ -103,8 +103,8 @@ pqDataInformationWidget::pqDataInformationWidget(QWidget* _parent /*=0*/) + this->Model->setActiveView(pqActiveObjects::instance().activeView()); + + // Clicking on the header should sort the column. +- QObject::connect(this->View->horizontalHeader(), SIGNAL(sectionClicked(int)), this->View, +- SLOT(sortByColumn(int))); ++ QObject::connect(this->View->horizontalHeader(), &QHeaderView::sectionClicked, this->View, ++ [=](int col) { this->View->sortByColumn(col, Qt::AscendingOrder); }); + + // Set the context menu policy for the header. + this->View->horizontalHeader()->setContextMenuPolicy(Qt::CustomContextMenu); +diff --git a/Qt/Components/pqDisplayRepresentationWidget.cxx b/Qt/Components/pqDisplayRepresentationWidget.cxx +index 3e08e05e560618457e628afc9bf1fdbf3167b9f0..4d9bc9958a0034e3e2b1e7920a333a5d7f794db6 100644 +--- a/Qt/Components/pqDisplayRepresentationWidget.cxx ++++ b/Qt/Components/pqDisplayRepresentationWidget.cxx +@@ -111,8 +111,8 @@ pqDisplayRepresentationWidget::pqDisplayRepresentationWidget(QWidget* _p) + { + this->Internal = new pqDisplayRepresentationWidget::pqInternals(); + this->Internal->setupUi(this); +- this->connect(this->Internal->comboBox, SIGNAL(currentIndexChanged(const QString&)), +- SLOT(comboBoxChanged(const QString&))); ++ QObject::connect(this->Internal->comboBox, &QComboBox::currentTextChanged, this, ++ &pqDisplayRepresentationWidget::comboBoxChanged); + } + + //----------------------------------------------------------------------------- +diff --git a/Qt/Components/pqLinksEditor.cxx b/Qt/Components/pqLinksEditor.cxx +index 6f02d16d44b82f616a236557f16174d3ffa96425..ae66b1c97c3d82425c2f8b849c6d656deecc64a8 100644 +--- a/Qt/Components/pqLinksEditor.cxx ++++ b/Qt/Components/pqLinksEditor.cxx +@@ -452,8 +452,8 @@ pqLinksEditor::pqLinksEditor(vtkSMLink* link, QWidget* p) + QObject::connect(this->Ui->lineEdit, SIGNAL(textChanged(const QString&)), this, + SLOT(updateEnabledState()), Qt::QueuedConnection); + +- QObject::connect(this->Ui->comboBox, SIGNAL(currentIndexChanged(const QString&)), this, +- SLOT(updateSelectedProxies()), Qt::QueuedConnection); ++ QObject::connect(this->Ui->comboBox, &QComboBox::currentTextChanged, this, ++ &pqLinksEditor::updateSelectedProxies, Qt::QueuedConnection); + + QObject::connect( + this->Ui->interactiveViewLinkCheckBox, &QCheckBox::stateChanged, this, +diff --git a/Qt/Core/pqFileDialog.cxx b/Qt/Core/pqFileDialog.cxx +index 2a87c723a5ef4af856c71e3589ce9a5efa95b65b..6f369d1163a32e5ae3c7e3bcc00a22081e81e2a2 100644 +--- a/Qt/Core/pqFileDialog.cxx ++++ b/Qt/Core/pqFileDialog.cxx +@@ -322,7 +322,7 @@ pqFileDialog::pqFileDialog(pqServer* server, QWidget* p, const QString& title, + QObject::connect( + impl.Ui.NavigateForward, SIGNAL(clicked(bool)), this, SLOT(onNavigateForward())); + impl.Ui.NavigateUp->setIcon(style()->standardPixmap(QStyle::SP_FileDialogToParent)); +- impl.Ui.NavigateUp->setShortcut(Qt::ALT + Qt::Key_Up); ++ impl.Ui.NavigateUp->setShortcut(Qt::ALT | Qt::Key_Up); + impl.Ui.NavigateUp->setToolTip( + tr("Navigate Up (%1)").arg(impl.Ui.NavigateUp->shortcut().toString())); + impl.Ui.CreateFolder->setIcon(style()->standardPixmap(QStyle::SP_FileDialogNewFolder)); +@@ -378,8 +378,8 @@ pqFileDialog::pqFileDialog(pqServer* server, QWidget* p, const QString& title, + QObject::connect( + impl.Ui.Parents, SIGNAL(activated(const QString&)), this, SLOT(onNavigate(const QString&))); + +- QObject::connect(impl.Ui.EntityType, SIGNAL(currentIndexChanged(const QString&)), this, +- SLOT(onFilterChange(const QString&))); ++ QObject::connect( ++ impl.Ui.EntityType, &QComboBox::currentTextChanged, this, &pqFileDialog::onFilterChange); + + QObject::connect(impl.Ui.Favorites, SIGNAL(clicked(const QModelIndex&)), this, + SLOT(onClickedFavorite(const QModelIndex&))); +diff --git a/Qt/Widgets/pqSignalAdaptors.cxx b/Qt/Widgets/pqSignalAdaptors.cxx +index 0015c9148b80eddd926ba37c17b7d777250c1a78..8e218b945c5f7a8962ffaced17d4a011c00db153 100644 +--- a/Qt/Widgets/pqSignalAdaptors.cxx ++++ b/Qt/Widgets/pqSignalAdaptors.cxx +@@ -16,10 +16,15 @@ + pqSignalAdaptorComboBox::pqSignalAdaptorComboBox(QComboBox* p) + : QObject(p) + { +- QObject::connect(p, SIGNAL(currentIndexChanged(const QString&)), this, +- SIGNAL(currentTextChanged(const QString&))); +- +- QObject::connect(p, SIGNAL(currentIndexChanged(int)), this, SIGNAL(currentIndexChanged(int))); ++ QObject::connect( ++ p, &QComboBox::currentTextChanged, this, &pqSignalAdaptorComboBox::currentTextChanged); ++ ++#if QT_VERSION > QT_VERSION_CHECK(6, 0, 0) ++ QObject::connect( ++ p, &QComboBox::currentIndexChanged, this, &pqSignalAdaptorComboBox::currentIndexChanged); ++#else ++ QObject::connect(p, SIGNAL(currentIndexChanged(int)), this, SLOT(currentIndexChanged(int))); ++#endif + } + + //---------------------------------------------------------------------------- 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/Parsl/Parsl-2024.4.22-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Parsl/Parsl-2024.4.22-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5a3161592c0 --- /dev/null +++ b/easybuild/easyconfigs/p/Parsl/Parsl-2024.4.22-GCCcore-12.3.0.eb @@ -0,0 +1,75 @@ +easyblock = 'PythonBundle' + +name = 'Parsl' +version = '2024.4.22' + +homepage = 'https://parsl-project.org/' +description = """ +Parsl extends parallelism in Python beyond a single computer. +You can use Parsl just like Python's parallel executors but across multiple +cores and nodes. However, the real power of Parsl is in expressing multi-step +workflows of functions. Parsl lets you chain functions together and will launch +each function as inputs and computing resources are available. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('PyZMQ', '25.1.1'), + ('dill', '0.3.7'), + ('typing-extensions', '4.9.0'), + ('paramiko', '3.2.0'), +] + +use_pip = True + +exts_list = [ + ('types-paramiko', '3.4.0.20240423', { + 'modulename': False, + 'checksums': ['aaa98dda232c47886563d66743d3a8b66c432790c596bc3bdd3f17f91be2a8c1'], + }), + ('types-urllib3', '1.26.25.14', { + 'modulename': False, + 'checksums': ['229b7f577c951b8c1b92c1bc2b2fdb0b49847bd2af6d1cc2a2e3dd340f3bda8f'], + }), + ('typeguard', '4.2.0', { + 'checksums': ['2aeae510750fca88d0a2ceca3e86de7f71aa43b6c3e6c267737ce1f5effc4b34'], + }), + ('PyJWT', '2.8.0', { + 'modulename': 'jwt', + 'checksums': ['57e28d156e3d5c10088e0c68abb90bfac3df82b40a71bd0daa20c65ccd5c23de'], + }), + ('globus-sdk', '3.40.0', { + 'source_tmpl': 'globus_sdk-%(version)s.tar.gz', + 'checksums': ['6394f01c35b2b3275622f4f7c194eaf6750cb6c1e82cb2448dac2eb4ec394d75'], + }), + ('tblib', '3.0.0', { + 'checksums': ['93622790a0a29e04f0346458face1e144dc4d32f493714c6c3dff82a4adb77e6'], + }), + ('setproctitle', '1.3.3', { + 'checksums': ['c913e151e7ea01567837ff037a23ca8740192880198b7fbb90b16d181607caae'], + }), + ('filelock', '3.13.4', { + 'checksums': ['d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4'], + }), + ('parsl', version, { + 'checksums': ['99d2b48173bcd22214cb275e3b94be818de6297d5e7bbe606327c961750366f8'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/parsl-perf'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_check_commands = ['parsl-perf --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/PennyLane/PennyLane-0.37.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/PennyLane/PennyLane-0.37.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..75368e7c82d --- /dev/null +++ b/easybuild/easyconfigs/p/PennyLane/PennyLane-0.37.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,68 @@ +easyblock = 'PythonBundle' + +name = 'PennyLane' +version = '0.37.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://pennylane.ai/" +description = """PennyLane is a cross-platform Python library for +quantum computing, quantum machine learning, and quantum +chemistry. Train a quantum computer the same way as a neural network.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +local_pennylane_test_backends = [ + # tests to enable when testing pennylane + ('jax', '0.4.25', versionsuffix), + ('PyTorch', '2.1.2', versionsuffix), + ('TensorFlow', '2.15.1', versionsuffix), +] + +local_pennylane_lightning_extras = ['qubit', 'gpu', 'kokkos'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('rustworkx', '0.15.1'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +if 'gpu' in local_pennylane_lightning_extras: + dependencies += [ + ('cuQuantum', '24.08.0.5', versionsuffix, SYSTEM) + ] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), + ('pybind11', '2.11.1'), +] + local_pennylane_test_backends + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('autograd', '1.6.2', { + 'checksums': ['8731e08a0c4e389d8695a40072ada4512641c113b6cace8f4cfbe8eb7e9aedeb'], + }), + ('autoray', '0.6.12', { + 'checksums': ['721328aa06fc3577155d988052614a7b4bd6e4d01b340695344031ee4abd2a1e'], + }), + ('cachetools', '5.2.1', { + 'checksums': ['5991bc0e08a1319bb618d3195ca5b6bc76646a49c21d55962977197b301cc1fe'], + }), + ('pennylane', version, { + 'source_urls': ['https://github.com/PennyLaneAI/pennylane/archive/refs/tags'], + 'sources': [{'filename': '%(name)s-v%(version)s.tar.gz', 'download_filename': 'v%(version)s.tar.gz'}], + 'checksums': ['3e5eaab9da28ac43099e5850fde0c5763bc4e37271804463fc35dab8b08e2f15'], + }), + ('pennylane_lightning', version, { + 'source_urls': ['https://github.com/PennyLaneAI/pennylane-lightning/archive/refs/tags'], + 'sources': [{'filename': '%(name)s-v%(version)s.tar.gz', 'download_filename': 'v%(version)s.tar.gz'}], + 'checksums': ['3f70e3e3b7e4d0f6a679919c0c83e451e129666b021bb529dd02eb915d0666a0'], + 'use_pip_extras': 'qubit,gpu,kokkos', + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb index 3921d7fefac..1c02282d891 100644 --- a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb @@ -1767,17 +1767,13 @@ exts_list = [ 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], }), - ('Time::HiRes', '1.9764', { - 'runtest': False, # https://github.com/easybuilders/easybuild-easyconfigs/issues/20145 unreliable atime tests - 'source_tmpl': 'Time-HiRes-%(version)s.tar.gz', - 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], - 'checksums': ['9841be5587bfb7cd1f2fe267b5e5ac04ce25e79d5cc77e5ef9a9c5abd101d7b1'], - }), ('Term::ReadLine::Gnu', '1.45', { 'modulename': 'Term::ReadLine', 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['9f4f7abbc69ea58ab7f24992d47f7391bb4aed6fb701fedaeb1a9f1cdc7fab8a'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.70', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb index 9754ce8b0ae..35ab629e89e 100644 --- a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb @@ -1770,16 +1770,13 @@ exts_list = [ 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], }), - ('Time::HiRes', '1.9764', { - 'source_tmpl': 'Time-HiRes-%(version)s.tar.gz', - 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], - 'checksums': ['9841be5587bfb7cd1f2fe267b5e5ac04ce25e79d5cc77e5ef9a9c5abd101d7b1'], - }), ('Term::ReadLine::Gnu', '1.46', { 'modulename': 'Term::ReadLine', 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['b13832132e50366c34feac12ce82837c0a9db34ca530ae5d27db97cf9c964c7b'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.70', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.2-GCCcore-13.3.0.eb index 39679dc0366..cee5ad02ae6 100644 --- a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.2-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.2-GCCcore-13.3.0.eb @@ -1776,16 +1776,13 @@ exts_list = [ 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], }), - ('Time::HiRes', '1.9764', { - 'source_tmpl': 'Time-HiRes-%(version)s.tar.gz', - 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], - 'checksums': ['9841be5587bfb7cd1f2fe267b5e5ac04ce25e79d5cc77e5ef9a9c5abd101d7b1'], - }), ('Term::ReadLine::Gnu', '1.46', { 'modulename': 'Term::ReadLine', 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['b13832132e50366c34feac12ce82837c0a9db34ca530ae5d27db97cf9c964c7b'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.70', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.34.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.34.0-GCCcore-11.2.0.eb index 87d1215a591..944e2124f79 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.34.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.34.0-GCCcore-11.2.0.eb @@ -1505,6 +1505,8 @@ exts_list = [ 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['3c5f1281da2666777af0f34de0289564e6faa823aea54f3945c74c98e95a5e73'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.62', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.34.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.34.1-GCCcore-11.3.0.eb index ec2e80d1840..497e05a273d 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.34.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.34.1-GCCcore-11.3.0.eb @@ -1610,6 +1610,8 @@ exts_list = [ 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['3c5f1281da2666777af0f34de0289564e6faa823aea54f3945c74c98e95a5e73'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.64', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb index 11d6a08c241..54c05db3b92 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb @@ -1603,6 +1603,8 @@ exts_list = [ 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['3c5f1281da2666777af0f34de0289564e6faa823aea54f3945c74c98e95a5e73'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.64', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.2.0.eb index 2b37316b16c..3a6727d62a4 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.2.0.eb @@ -1610,6 +1610,8 @@ exts_list = [ 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], 'checksums': ['3c5f1281da2666777af0f34de0289564e6faa823aea54f3945c74c98e95a5e73'], + # make sure that library provided by ncurses dependency is used instead of libtermcap + 'preinstallopts': "sed -s 's/-ltermcap/-lncurses/g' Makefile.PL && ", }), ('ExtUtils::MakeMaker', '7.64', { 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', diff --git a/easybuild/easyconfigs/p/Phonopy-Spectroscopy/Phonopy-Spectroscopy-20240308-foss-2023a.eb b/easybuild/easyconfigs/p/Phonopy-Spectroscopy/Phonopy-Spectroscopy-20240308-foss-2023a.eb new file mode 100644 index 00000000000..d2eb062ba0e --- /dev/null +++ b/easybuild/easyconfigs/p/Phonopy-Spectroscopy/Phonopy-Spectroscopy-20240308-foss-2023a.eb @@ -0,0 +1,43 @@ +easyblock = 'Tarball' + +name = 'Phonopy-Spectroscopy' +version = '20240308' +local_commit = '316fbf4' + +homepage = 'https://github.com/skelton-group/Phonopy-Spectroscopy' +description = """ +Phonopy-Spectroscopy is a project to add the capability to simulate vibrational spectra to +the Phonopy code. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/skelton-group/Phonopy-Spectroscopy/archive/'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['4fbfed5253ddaebee70e8a3b650ca83184785b04024920060753cdb283c48b8b'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy + ('PyYAML', '6.0'), + ('phonopy', '2.20.0'), +] + +postinstallcmds = ['chmod +x %(installdir)s/scripts/*'] + +sanity_check_paths = { + 'files': ['scripts/phonopy-ir'], + 'dirs': ['lib/spectroscopy'], +} + +sanity_check_commands = [ + 'phonopy-ir --help', + 'xyz2poscar -h', +] + +modextrapaths = { + 'PYTHONPATH': 'lib', + 'PATH': 'scripts', +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-10.4.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-10.4.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e752171a582 --- /dev/null +++ b/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-10.4.0-GCCcore-13.3.0.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonPackage' + +name = 'Pillow-SIMD' +version = '10.4.0' + +homepage = 'https://github.com/uploadcare/pillow-simd' +description = """Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. + PIL is the Python Imaging Library by Fredrik Lundh and Contributors.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/uploadcare/pillow-simd/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['8c7c3c0fc2952ff11b9a8c60365e098ee5334427dd5688c3584e77c25a7e1b3f'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('LibTIFF', '4.6.0'), + ('freetype', '2.13.2'), + ('libwebp', '1.4.0'), + ('OpenJPEG', '2.5.2'), + ('LittleCMS', '2.16'), +] + +use_pip = True +download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + +options = {'modulename': 'PIL'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/PIL'], +} + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..34c086c859a --- /dev/null +++ b/easybuild/easyconfigs/p/Pillow/Pillow-10.4.0-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonPackage' + +name = 'Pillow' +version = '10.4.0' + +homepage = 'https://pillow.readthedocs.org/' +description = """Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. + PIL is the Python Imaging Library by Fredrik Lundh and Contributors.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['166c1cd4d24309b30d61f79f4a9114b7b2313d7450912277855ff5dfd7cd4a06'] + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('LibTIFF', '4.6.0'), + ('freetype', '2.13.2'), + ('libwebp', '1.4.0'), + ('OpenJPEG', '2.5.2'), + ('LittleCMS', '2.16'), +] + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + +# avoid that hardcoded paths like /usr/include are used in build commands +installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'PIL'} + +moduleclass = 'vis' 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..e1dfa5d567c --- /dev/null +++ b/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-20240119-GCCcore-12.3.0.eb @@ -0,0 +1,28 @@ +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_pip_check = True +use_pip = True +download_dep_fail = True + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.4-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.4-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..9b4c1f62855 --- /dev/null +++ b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.4-GCCcore-13.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'PostgreSQL' +version = '16.4' + +homepage = 'https://www.postgresql.org/' +description = """PostgreSQL is a powerful, open source object-relational database system. + It is fully ACID compliant, has full support for foreign keys, + joins, views, triggers, and stored procedures (in multiple languages). + It includes most SQL:2008 data types, including INTEGER, + NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. + It also supports storage of binary large objects, including pictures, + sounds, or video. It has native programming interfaces for C/C++, Java, + .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://ftp.postgresql.org/pub/source/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2e17a90062403e15d6540480fdec50c8b005eb48729a91cb4989ffeb04df193c'] + +builddependencies = [ + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('Perl', '5.38.2'), + ('Python', '3.12.3'), +] + +dependencies = [ + ('libreadline', '8.2'), + ('zlib', '1.3.1'), + ('OpenSSL', '3', '', SYSTEM), +] + +configopts = '--with-python --with-openssl --without-icu' + +sanity_check_paths = { + 'files': ['bin/psql', 'bin/pg_config', 'lib/libpq.a', 'lib/libpq.%s' % SHLIB_EXT], + 'dirs': ['share/postgresql'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/ProteinMPNN/ProteinMPNN-1.0.1-20230627-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/ProteinMPNN/ProteinMPNN-1.0.1-20230627-foss-2022a-CUDA-11.7.0.eb index 258c21fef24..db7151ab47f 100644 --- a/easybuild/easyconfigs/p/ProteinMPNN/ProteinMPNN-1.0.1-20230627-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/p/ProteinMPNN/ProteinMPNN-1.0.1-20230627-foss-2022a-CUDA-11.7.0.eb @@ -27,17 +27,20 @@ dependencies = [ ('torchaudio', '0.12.0', '-PyTorch-1.12.0' + versionsuffix), ] -postinstallcmds = ['chmod a+x %(installdir)s/protein_mpnn_run.py'] +postinstallcmds = [ + 'chmod a+x %(installdir)s/protein_mpnn_run.py', + 'chmod a+x %(installdir)s/helper_scripts/*.py' +] sanity_check_paths = { 'files': ['protein_mpnn_run.py'], 'dirs': ['examples'], } -fix_python_shebang_for = ['protein_mpnn_run.py'] +fix_python_shebang_for = ['protein_mpnn_run.py', 'helper_scripts/*.py'] sanity_check_commands = ['protein_mpnn_run.py --help'] -modextrapaths = {'PATH': ''} +modextrapaths = {'PATH': ['', 'helper_scripts']} 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/PyAEDT/PyAEDT-0.8.7-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.8.7-GCCcore-12.3.0.eb index aee9ba9ea19..894b488cd3e 100644 --- a/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.8.7-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.8.7-GCCcore-12.3.0.eb @@ -43,6 +43,7 @@ exts_list = [ ('ansys-pythonnet', '3.1.0rc3', { 'checksums': ['369a0a5a838a0991f755b6d63c319ab6997f9dc464d016187227be5cd860a9cb'], 'modulename': 'pythonnet', + 'preinstallopts': 'export OPENSSL_ENABLE_SHA1_SIGNATURES=1 &&', }), ('pytomlpp', '1.0.13', { 'checksums': ['a0bd639a8f624d1bdf5b3ea94363ca23dbfef38ab7b5b9348881a84afab434ad'], diff --git a/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.9.9-gfbf-2023b.eb b/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.9.9-gfbf-2023b.eb new file mode 100644 index 00000000000..f2436367baa --- /dev/null +++ b/easybuild/easyconfigs/p/PyAEDT/PyAEDT-0.9.9-gfbf-2023b.eb @@ -0,0 +1,78 @@ +easyblock = 'PythonBundle' + +name = 'PyAEDT' +version = '0.9.9' + +homepage = 'https://aedt.docs.pyansys.com/version/stable' +description = """PyAEDT is a Python library that interacts directly with the +Ansys Electronics Desktop (AEDT) API, enabling straightforward and efficient +automation in your workflow.""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('dotNET-Core', '8.0', '', SYSTEM), + ('libspatialindex', '1.9.3'), + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('Pillow', '10.2.0'), + ('pydantic', '2.6.4'), + ('SciPy-bundle', '2023.11'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('dotnetcore2', '3.1.23', { + 'sources': ['dotnetcore2-3.1.23-py3-none-manylinux1_x86_64.whl'], + 'checksums': ['5f076ddc39da0c685e7de20ecb91ee81185928918ec86fbeb3bffc55dd867ab5'], + }), + ('clr_loader', '0.2.6', { + 'checksums': ['019348ae6b6a83c7a406d14537c277cecf7a3a53b263ec342c81ded5845a67ee'], + }), + ('defusedxml', '0.7.1', { + 'checksums': ['1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69'], + }), + ('fonttools', '4.53.1', { + 'modulename': 'fontTools', + 'checksums': ['e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4'], + }), + ('ansys-pythonnet', '3.1.0rc3', { + 'modulename': 'pythonnet', + 'checksums': ['369a0a5a838a0991f755b6d63c319ab6997f9dc464d016187227be5cd860a9cb'], + 'preinstallopts': 'export OPENSSL_ENABLE_SHA1_SIGNATURES=1 &&', + }), + ('pytomlpp', '1.0.13', { + 'checksums': ['a0bd639a8f624d1bdf5b3ea94363ca23dbfef38ab7b5b9348881a84afab434ad'], + }), + ('fpdf2', '2.7.9', { + 'modulename': 'fpdf', + 'checksums': ['f364c0d816a5e364eeeda9761cf5c961bae8c946f080cf87fed7f38ab773b318'], + }), + ('plumbum', '1.8.3', { + 'checksums': ['6092c85ab970b7a7a9d5d85c75200bc93be82b33c9bdf640ffa87d2d7c8709f0'], + }), + ('rpyc', '6.0.0', { + 'checksums': ['a7e12b31f40978cbd6b74e0b713da389d4b2565cef612adcb0f4b41aeb188230'], + }), + ('rtree', '1.3.0', { + 'modulename': 'rtree', + 'checksums': ['b36e9dd2dc60ffe3d02e367242d2c26f7281b00e1aaf0c39590442edaaadd916'], + }), + ('pyedb', '0.21.0', { + 'checksums': ['3c91cb8a72a080864d3582ae7ec1de2f04d90aee477dadc096a7144f7823258d'], + }), + ('pyaedt', version, { + 'checksums': ['714728230ab3ede4744a30a7c0d45aaa104cdc1887bfbfe8feb928a8f10cc72f'], + }), +] + +modloadmsg = "NOTE: You also need load a AEDT module before you start using PyAEDT." + +moduleclass = "phys" diff --git a/easybuild/easyconfigs/p/PyBerny/PyBerny-0.6.3-foss-2023a.eb b/easybuild/easyconfigs/p/PyBerny/PyBerny-0.6.3-foss-2023a.eb new file mode 100644 index 00000000000..71cb5554837 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBerny/PyBerny-0.6.3-foss-2023a.eb @@ -0,0 +1,43 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'PythonBundle' + +name = 'PyBerny' +version = '0.6.3' + +homepage = 'https://github.com/jhrmnn/pyberny' +description = """PyBerny is an optimizer of molecular geometries with respect to the total energy, +using nuclear gradient information.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.7.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True + +exts_list = [ + ('pyberny', version, { + 'modulename': 'berny', + 'checksums': ['b4bd9d3d2d58261e8f1d91b8204cc563617044d4b9daf6aae8feee31893cb336'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/berny'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["berny -h"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..02c4c54ce07 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb @@ -0,0 +1,54 @@ +easyblock = "PythonBundle" + +name = 'PyBioLib' +version = '1.1.2250' + +homepage = 'https://biolib.com/' +description = """PyBioLib is a Python package for running BioLib applications from Python +scripts and the command line. +BioLib is a library of biological data science applications. Applications on +BioLib range from small bioinformatics utilities to state-of-the-art machine +learning algorithms for predicting characteristics of biological molecules.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('poetry', '1.5.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('Flask', '2.3.3'), + ('PyYAML', '6.0'), +] + +use_pip = True + +exts_list = [ + ('websocket_client', '1.8.0', { + 'modulename': 'websocket', + 'checksums': ['3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da'], + }), + ('docker', '7.1.0', { + 'checksums': ['ad8c70e6e3f8926cb8a92619b832b4ea5299e2831c14284663184e200546fa6c'], + }), + ('PyJWT', '2.9.0', { + 'modulename': 'jwt', + 'source_tmpl': SOURCELOWER_TAR_GZ, + 'checksums': ['7e1e5b56cc735432a7369cbfa0efe50fa113ebecdc04ae6922deba8b84582d0c'], + }), + ('gunicorn', '23.0.0', { + 'checksums': ['f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec'], + }), + ('pybiolib', version, { + 'modulename': 'biolib', + 'preinstallopts': "sed -i 's/< 8.1.0/< 8.2.0/' pyproject.toml &", + 'checksums': ['1a0fb4a0256bfa8345b881ac9697cf94a50bcab2caa9ad063689dfc0035fe5a2'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/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..fe4e8b0e393 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.2.205-GCCcore-12.3.0.eb @@ -0,0 +1,68 @@ +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'), +] + +use_pip = True + +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'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb b/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb new file mode 100644 index 00000000000..47fce7ec459 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBullet/PyBullet-3.2.6-gfbf-2023a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'PyBullet' +version = '3.2.6' + +homepage = 'https://github.com/bulletphysics/bullet3' +description = """Bullet Physics SDK: real-time collision detection and +multi-physics simulation for VR, games, visual effects, robotics, +machine learning etc.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pybullet', version, { + 'checksums': ['da27525433c88698dc9fd8bc20fa4ae4d07738b4656633659ebd82c2d2884e08'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..b184c749e34 --- /dev/null +++ b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'PyCUDA' +version = '2024.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://mathema.tician.de/software/pycuda' +description = 'PyCUDA lets you access Nvidia’s CUDA parallel computation API from Python.' + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('Mako', '1.2.0'), +] + +use_pip = True + +exts_list = [ + ('pytools', '2023.1.1', { + 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], + }), + (name, version, { + 'preinstallopts': './configure.py --cuda-root="$EBROOTCUDA" && ', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['d50d23ff6371482cff7d4b953ef40ab81c9df038ecb614484f9fd5347327327e'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lang' 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 new file mode 100644 index 00000000000..1706b5b8372 --- /dev/null +++ b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2024.1-gfbf-2023a-CUDA-12.1.1.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'PyCUDA' +version = '2024.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://mathema.tician.de/software/pycuda' +description = 'PyCUDA lets you access Nvidia’s CUDA parallel computation API from Python.' + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Mako', '1.2.4'), + ('PyOpenGL', '3.1.7'), +] + +use_pip = True + +exts_list = [ + ('pytools', '2023.1.1', { + 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], + }), + (name, version, { + 'preinstallopts': './configure.py --cuda-root="$EBROOTCUDA" --cuda-enable-gl && ', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['d50d23ff6371482cff7d4b953ef40ab81c9df038ecb614484f9fd5347327327e'], + }), +] + +sanity_pip_check = True +sanity_check_commands = [ + 'python -c "import pycuda.gl"' +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PyCheMPS2/PyCheMPS2-1.8.12-foss-2023a.eb b/easybuild/easyconfigs/p/PyCheMPS2/PyCheMPS2-1.8.12-foss-2023a.eb new file mode 100644 index 00000000000..222a89010a0 --- /dev/null +++ b/easybuild/easyconfigs/p/PyCheMPS2/PyCheMPS2-1.8.12-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'PyCheMPS2' +version = '1.8.12' + +homepage = 'https://sebwouters.github.io/CheMPS2' +description = """PyCheMPS2 is a python interface to CheMPS2, for compilation without +MPI. CheMPS2 is a scientific library which contains a spin-adapted +implementation of the density matrix renormalization group (DMRG) +for ab initio quantum chemistry.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('CheMPS2', version), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'modulename': '%(name)s', + 'source_urls': ['https://github.com/SebWouters/CheMPS2/archive/'], + 'source_tmpl': 'v%(version)s.tar.gz', + 'checksums': ['eef1b92d74ac07fde58c043f64e8cac02b5400c209c44dcbb51641f86e0c7c83'], + 'install_src': './%(name)s', + }), +] + +sanity_pip_check = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PyClone/PyClone-2020.9b2-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/PyClone/PyClone-2020.9b2-GCCcore-10.2.0.eb index ee4425b49c5..96d813edcce 100644 --- a/easybuild/easyconfigs/p/PyClone/PyClone-2020.9b2-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/p/PyClone/PyClone-2020.9b2-GCCcore-10.2.0.eb @@ -21,9 +21,8 @@ dependencies = [ ('Python', '3.8.6'), ] -exts_default_options = { - 'use_pip': True -} +sanity_pip_check = True +use_pip = True exts_list = [ ('Logbook', '1.5.3', { @@ -37,6 +36,4 @@ exts_list = [ }), ] -sanity_pip_check = True - moduleclass = 'tools' 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..2d6165976d9 --- /dev/null +++ b/easybuild/easyconfigs/p/PyHMMER/PyHMMER-0.10.15-gompi-2023b.eb @@ -0,0 +1,47 @@ +# 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') +] + +use_pip = True +sanity_pip_check = True + +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 11986d88534..c30243b0d0d 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 @@ -92,12 +92,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 0987fcacdf5..97be3ae2aa6 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 @@ -103,12 +103,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..c37102d5a81 --- /dev/null +++ b/easybuild/easyconfigs/p/PyRosetta/PyRosetta-4.release-387-gompi-2023a.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'PyRosetta' +version = '4.release-387' + +homepage = 'https://www.pyrosetta.org/' +description = """ +PyRosetta is an interactive Python-based interface to the powerful Rosetta molecular modeling +suite. It enables users to design their own custom molecular modeling algorithms using Rosetta +sampling methods and energy functions. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'usempi': True} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), +] + +use_pip = True + +local_source_tmpl = '%(name)s%(version_major)s.Release.python%(pymajver)s%(pyminver)s.linux.%(version_minor)s.tar.bz2' +local_source_urls = 'https://graylab.jhu.edu/download/PyRosetta4/archive/release/PyRosetta4.Release.python311.linux/' + +exts_list = [ + (name, version, { + 'source_tmpl': local_source_tmpl, + 'source_urls': [local_source_urls], + 'start_dir': 'setup', + 'checksums': ['42a10efd16cba7739d87a5c4035a2cd8792bc193804963fc26bb2f82f7ac2a1a'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb new file mode 100644 index 00000000000..d2efdfa6e27 --- /dev/null +++ b/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb @@ -0,0 +1,138 @@ +easyblock = 'CMakeMakeCp' +name = 'PySCF' +version = '2.7.0' + +homepage = 'http://www.pyscf.org' +description = "PySCF is an open-source collection of electronic structure modules powered by Python." + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/pyscf/pyscf/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f2f94e6dae8556085bb765eb5250f61589e977b4f12540c748241101d40da241'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pybind11', '2.11.1'), # needed by zquatev +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy, scipy + ('h5py', '3.9.0'), + ('libcint', '5.4.0'), + ('libxc', '6.2.2'), + ('XCFun', '2.1.1'), + ('CPPE', '0.3.1'), # extra + ('PyBerny', '0.6.3'), # extra + ('PyCheMPS2', '1.8.12'), # needed by dmrgscf + ('Block', '1.5.3-20200525'), # needed by dmrgscf + ('NECI', '20230620'), # needed by fciqmc + ('Dice', '20240702'), # needed by icmpspt + ('tblis', '20230422'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, + 'modulename': 'pyscf.%(name)s', + 'source_urls': ['https://github.com/pyscf/%(name)s/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], +} + +# The following list of extensions is equivalent to installing PySCF with extras: +# all + dmrgscf + fciqmcscf + hci + mbd + tblis + zquatev +exts_list = [ + ('dftd3', '94091d8', { + 'checksums': ['a69ae44b3d02d2c06fd531373f20ee1251ef27fc932d40a7cafea6c09d8784fc'], + }), + ('doci', '08079a9', { + 'checksums': ['f492ba45dfe50c9b459e53a946a677528af0dc2097ff77ea3767aa4f46c5d9ba'], + }), + ('icmpspt', '50c386e', { + 'patches': [('PySCF-2.1.1_icmpspt-exe-path.patch', 0)], + 'checksums': [ + {'icmpspt-50c386e.tar.gz': '08029863ae8740939a730fe5e104661c67d8dd0b8a8555b603fc8a0777096d48'}, + {'PySCF-2.1.1_icmpspt-exe-path.patch': 'e972e377b34b964c48a99909301bf21a9c73d8eb9ecb96a889621d71471c56c9'}, + ], + }), + ('properties', '8b94d8d', { + 'modulename': 'pyscf.prop', + 'checksums': ['b40e071472a6bdfcaec8cd358c7c58c58748c59d8b188fdca09d6eca63329914'], + }), + ('qsdopt', '3ad2c02', { + 'checksums': ['cc639150e5f9efad8ffe496b3dccd2952a1f60fdad51f611cffba701892b384e'], + }), + ('semiempirical', '470d716', { + 'checksums': ['0bbe304867fd053ed647445ac84c4c76787ad23def9f72415aec297740121eef'], + }), + ('shciscf', '7edb54d', { + 'checksums': ['ae54265f6600b73a350b00274c95bb0de940ddcd6e1b47b434594e18136b1bed'], + }), + ('MCfun', '0.2.3', { + 'modulename': 'mcfun', + 'source_urls': ['https://github.com/Multi-collinear/%(name)s/archive/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['3741b49b839df0fde891d51292520ed9094fa1d3c9b5d9c042d4f26087cf6a13'], + }), + ('pyqmc', '0.6.0', { + 'modulename': 'pyqmc', + 'source_urls': ['https://github.com/WagnerGroup/%(name)s/archive/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['6e9f612c2d0bf2198154520e01dce57cf3a6e474840c1892466de3171eaeb7db'], + }), + ('dmrgscf', 'a03f7b6', { + 'patches': [('PySCF-2.1.1_dmrgscf-settings.patch', 0)], + 'checksums': [ + {'dmrgscf-a03f7b6.tar.gz': 'dee40abe3d2aebab7a2d0eade4e464a6ae851b4c2b49a2cde4c3aa88f0651b04'}, + {'PySCF-2.1.1_dmrgscf-settings.patch': 'a0310a2a90e96bd64d1560b2cc73a805717e129d2921e91cc5e6038b9f153677'}, + ], + }), + ('fciqmc', 'ee98fb4', { + 'modulename': 'pyscf.fciqmcscf', + 'checksums': ['b2f081ac295df0e622c6d1b3bff6d7834f97131f1f0fc87ec8bcff2137ef4199'], + }), + ('mbd', '485c18c', { + 'patches': [('PySCF-2.1.1_mbd-fix-init.patch', 0)], + 'checksums': [ + {'mbd-485c18c.tar.gz': 'de1fb14650fcb87909cae33dc318d2e213653ac4393ced7e070dfa6308d95846'}, + {'PySCF-2.1.1_mbd-fix-init.patch': '4f8e4b2e39b77428187851c4b6ced39401561bc81f4f3a4605da5d5c7b798cbc'}, + ], + }), + ('naive-hci', '0c28d6e', { + 'modulename': 'pyscf.hci', + 'checksums': ['de247d17b80133655df5966341e5adb691b0df150cd9b0f1980cf62ec55229d5'], + }), + ('tblis', 'c67c8af', { + 'modulename': 'pyscf.tblis_einsum', + # Use our `tblis`. + 'preinstallopts': 'CMAKE_CONFIGURE_ARGS="-DVENDOR_TBLIS=off" ', + 'source_urls': ['https://github.com/pyscf/pyscf-tblis/archive/'], + 'checksums': ['9a40a760e3be1d0b7f49faab5897388dcdf75094f75e06b4c344b3642a0401d6'], + }), + ('zquatev', '4eb41b1', { + 'modulename': 'zquatev', + 'preinstallopts': "sed -i 's/add_subdirectory(pybind11)/find_package(pybind11 REQUIRED)/' CMakeLists.txt && ", + 'source_urls': ['https://github.com/sunqm/%(name)s/archive/'], + 'checksums': ['4caf08e3831a5d86e6bc22f3b4028cc159101cb9658d09de16e382e268a5a2e9'], + }), +] + +start_dir = 'pyscf/lib' +configopts = "-DBUILD_LIBCINT=OFF -DBUILD_LIBXC=OFF -DBUILD_XCFUN=OFF" +prebuildopts = "export PYSCF_INC_DIR=$EBROOTQCINT/include:$EBROOTLIBXC/lib && " + +_py_site_packages = 'lib/python%(pyshortver)s/site-packages' +files_to_copy = [(['pyscf'], _py_site_packages)] + +sanity_check_paths = { + 'files': [_py_site_packages + '/pyscf/__init__.py'], + 'dirs': [_py_site_packages + d for d in ['/pyscf/data', '/pyscf/lib']], +} + +sanity_check_commands = ["python -c 'import pyscf'"] + +modextrapaths = {'PYTHONPATH': _py_site_packages} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PyVista/PyVista-0.43.8-foss-2022a.eb b/easybuild/easyconfigs/p/PyVista/PyVista-0.43.8-foss-2022a.eb new file mode 100644 index 00000000000..6a80df15a1b --- /dev/null +++ b/easybuild/easyconfigs/p/PyVista/PyVista-0.43.8-foss-2022a.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'PyVista' +version = '0.43.8' + +homepage = 'https://docs.pyvista.org/' +description = """ +3D plotting and mesh analysis through a streamlined interface for the +Visualization Toolkit (VTK)""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('VTK', '9.2.2'), + ('imageio', '2.22.2'), + ('matplotlib', '3.5.2'), + ('Pillow', '9.1.1'), +] + +use_pip = True + +exts_list = [ + ('scooby', '0.10.0', { + 'checksums': ['7ea33c262c0cc6a33c6eeeb5648df787be4f22660e53c114e5fff1b811a8854f'], + }), + ('cmocean', '4.0.3', { + 'checksums': ['37868399fb5f41b4eac596e69803f9bfaea49946514dfb2e7f48886854250d7c'], + }), + ('colorcet', '3.1.0', { + 'checksums': ['2921b3cd81a2288aaf2d63dbc0ce3c26dcd882e8c389cc505d6886bf7aa9a4eb'], + }), + ('commonmark', '0.9.1', { + 'checksums': ['452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60'], + }), + ('rich', '12.6.0', { + 'checksums': ['ba3a3775974105c221d31141f2c116f4fd65c5ceb0698657a11e9f295ec93fd0'], + }), + ('meshio', '5.3.5', { + 'checksums': ['f21f01abd9f29ba06ea119304b3d39e610421cfe93b9dd23362834919f87586d'], + }), + ('pooch', '1.6.0', { + 'checksums': ['57d20ec4b10dd694d2b05bb64bc6b109c6e85a6c1405794ce87ed8b341ab3f44'], + }), + ('pyvista', version, { + 'use_pip_extras': 'colormaps,io', + 'checksums': ['b9220753ae94fb8ca3047d291a706a4046b06659016c0000c184b5f24504f8d0'], + }), +] + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyWavelets/PyWavelets-1.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/PyWavelets/PyWavelets-1.7.0-foss-2023a.eb new file mode 100644 index 00000000000..f68a1a2ba06 --- /dev/null +++ b/easybuild/easyconfigs/p/PyWavelets/PyWavelets-1.7.0-foss-2023a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'PyWavelets' +version = '1.7.0' + +homepage = 'https://pywavelets.readthedocs.io' +description = "PyWavelets is open source wavelet transform software for Python." + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b47250e5bb853e37db5db423bafc82847f4cde0ffdf7aebb06336a993bc174f6'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy + ('meson-python', '0.13.2'), + ('Cython', '3.0.8'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +options = {'modulename': 'pywt'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..50b9ad427e6 --- /dev/null +++ b/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0.2-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'PyYAML' +version = '6.0.2' + +homepage = 'https://github.com/yaml/pyyaml' +description = "PyYAML is a YAML parser and emitter for the Python programming language." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = ['https://github.com/yaml/pyyaml/archive/refs/tags/%(version)s.tar.gz'] +checksums = ['9377c381ac3fccad8df73d96b5139ef8b1a2c57a0d913e95ab0a2275d66b5caa'] + +builddependencies = [ + ('binutils', '2.42'), + ('Cython', '3.0.10'), +] +dependencies = [ + ('Python', '3.12.3'), + ('libyaml', '0.2.5'), + ('Python-bundle-PyPI', '2024.06'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True +options = {'modulename': 'yaml'} + +sanity_check_commands = ["python -c 'import yaml; yaml.CLoader'"] + +moduleclass = 'lib' 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..05949337114 --- /dev/null +++ b/easybuild/easyconfigs/p/PyZMQ/PyZMQ-26.2.0-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +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'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True +options = {'modulename': 'zmq'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/Pygments/Pygments-2.18.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Pygments/Pygments-2.18.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..54edd0b830e --- /dev/null +++ b/easybuild/easyconfigs/p/Pygments/Pygments-2.18.0-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'Pygments' +version = '2.18.0' + +homepage = 'https://pygments.org/' +description = """Generic syntax highlighter suitable for use in code hosting, forums, wikis or other applications + that need to prettify source code.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [SOURCELOWER_PY3_WHL] +checksums = ['b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/pygmentize'], + 'dirs': [], +} + +sanity_check_commands = ['pygmentize --help'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb b/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..2920aeda78e --- /dev/null +++ b/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'Pysam' +version = '0.22.1' + +homepage = 'https://github.com/pysam-developers/pysam' +description = """Pysam is a python module for reading and manipulating Samfiles. + It's a lightweight wrapper of the samtools C-API. Pysam also includes an interface for tabix.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/pysam-developers/pysam/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e4981524d7627c53fa0d3f8cbec2bd65c2ea7520092f25e1029af12cb7b82ff6'] + +builddependencies = [ + ('Cython', '3.0.10') +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('ncurses', '6.5'), + ('cURL', '8.7.1'), + ('XZ', '5.4.5'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb index 6a91bcca5e4..808285d9f26 100644 --- a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb @@ -26,11 +26,8 @@ dependencies = [ ('virtualenv', '20.23.1'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True # order is important! # package versions updated 2023-06-26 diff --git a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb index d551945f5e7..d97f7a93c0f 100644 --- a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb @@ -26,11 +26,8 @@ dependencies = [ ('virtualenv', '20.24.6'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True # order is important! # package versions updated 2023-10-29 diff --git a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2024.06-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2024.06-GCCcore-13.3.0.eb index add89b7ae32..42df4fd52a1 100644 --- a/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2024.06-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2024.06-GCCcore-13.3.0.eb @@ -28,11 +28,8 @@ dependencies = [ ('virtualenv', '20.26.2'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True # order is important! # package versions updated 2024-06-14 @@ -56,9 +53,6 @@ exts_list = [ ('pbr', '6.0.0', { 'checksums': ['d1377122a5a00e2f940ee482999518efe16d745d423a670c27773dfbc3c9a7d9'], }), - ('Cython', '3.0.10', { - 'checksums': ['dcc96739331fb854dcf503f94607576cfe8488066c61ca50dfd55836f132de99'], - }), ('six', '1.16.0', { 'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'], }), 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/petsc4py/petsc4py-3.17.4-foss-2022a.eb b/easybuild/easyconfigs/p/petsc4py/petsc4py-3.17.4-foss-2022a.eb new file mode 100644 index 00000000000..a944c674694 --- /dev/null +++ b/easybuild/easyconfigs/p/petsc4py/petsc4py-3.17.4-foss-2022a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.17.4' + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['216c3da074557946615d37d0826bc89f1f2e599323e2dacbdc45326d78bd50c6'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('PETSc', version), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ["python -c 'from petsc4py import PETSc'"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb b/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..bc9d066a13d --- /dev/null +++ b/easybuild/easyconfigs/p/phasius/phasius-0.2.0-GCC-12.3.0.eb @@ -0,0 +1,393 @@ +easyblock = 'Cargo' + +name = 'phasius' +version = '0.2.0' + +homepage = 'https://github.com/wdecoster/phasius' +description = """A tool to visualize phase block structure from (many) BAM, + CRAM or VCF files together with BED annotation""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wdecoster/phasius/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.2.0.tar.gz': 'a5b320303383b473661fccf7ec93f3b555b21d86d78d9cdaf5317cc9bcf3cb0e'}, + {'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'}, + {'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'}, + {'askama-0.12.1.tar.gz': 'b79091df18a97caea757e28cd2d5fda49c6cd4bd01ddffd7ff01ace0c0ad2c28'}, + {'askama_derive-0.12.5.tar.gz': '19fe8d6cb13c4714962c072ea496f3392015f0989b1a2847bb4b2d9effd71d83'}, + {'askama_escape-0.10.3.tar.gz': '619743e34b5ba4e9703bba34deac3427c72507c7159f5fd030aea8cac0cfe341'}, + {'askama_parser-0.2.1.tar.gz': 'acb1161c6b64d1c3d83108213c2a2533a342ac225aabd0bda218278c2ddb00c0'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'basic-toml-0.1.9.tar.gz': '823388e228f614e9558c6804262db37960ec8821856535f5c3f59913140558f8'}, + {'bindgen-0.69.4.tar.gz': 'a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0'}, + {'bio-types-1.0.4.tar.gz': 'f4dcf54f8b7f51450207d54780bab09c05f30b8b0caa991545082842e466ad7e'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.1.15.tar.gz': '57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6'}, + {'cexpr-0.6.0.tar.gz': '6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'chrono-0.4.38.tar.gz': 'a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401'}, + {'clang-sys-1.8.1.tar.gz': '0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4'}, + {'clap-3.2.25.tar.gz': '4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123'}, + {'clap_derive-3.2.25.tar.gz': 'ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008'}, + {'clap_lex-0.2.4.tar.gz': '2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5'}, + {'cmake-0.1.51.tar.gz': 'fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a'}, + {'colorchoice-1.0.2.tar.gz': 'd3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'ctor-0.2.8.tar.gz': 'edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f'}, + {'curl-sys-0.4.74+curl-8.9.0.tar.gz': '8af10b986114528fcdc4b63b6f5f021b7057618411046a4de2ba0f0149a097bf'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'darling-0.20.10.tar.gz': '6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989'}, + {'darling_core-0.20.10.tar.gz': '95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5'}, + {'darling_macro-0.20.10.tar.gz': 'd336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806'}, + {'deranged-0.3.11.tar.gz': 'b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'derive-new-0.6.0.tar.gz': 'd150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad'}, + {'dyn-clone-1.0.17.tar.gz': '0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'env_filter-0.1.2.tar.gz': '4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab'}, + {'env_logger-0.11.5.tar.gz': 'e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d'}, + {'erased-serde-0.4.5.tar.gz': '24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'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'}, + {'hex-0.4.3.tar.gz': '7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70'}, + {'hts-sys-2.1.4.tar.gz': 'e9f348d14cb4e50444e39fcd6b00302fe2ed2bc88094142f6278391d349a386d'}, + {'humansize-2.1.3.tar.gz': '6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'iana-time-zone-0.1.60.tar.gz': 'e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141'}, + {'iana-time-zone-haiku-0.1.2.tar.gz': 'f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f'}, + {'ident_case-1.0.1.tar.gz': 'b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'is_terminal_polyfill-1.70.1.tar.gz': '7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'jobserver-0.1.32.tar.gz': '48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0'}, + {'js-sys-0.3.70.tar.gz': '1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'lazycell-1.3.0.tar.gz': '830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'libloading-0.8.5.tar.gz': '4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'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'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'mime-0.3.17.tar.gz': '6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a'}, + {'mime_guess-2.0.5.tar.gz': 'f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-conv-0.1.0.tar.gz': '51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'openssl-src-300.3.1+3.3.1.tar.gz': '7259953d42a81bf137fbbd73bd30a8e1914d6dce43c2b90ed575783a22608b91'}, + {'openssl-sys-0.9.103.tar.gz': '7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6'}, + {'os_str_bytes-6.6.1.tar.gz': 'e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'plotly-0.9.0.tar.gz': '25b8fd16c14ce31e4d48a31970530c2e3152b965e8567469e292712af7c9536f'}, + {'plotly_derive-0.9.0.tar.gz': '7817cbbd497db67dc5d21206fd0f4cab0cd6974b6fd2791f012c5455245b0e65'}, + {'powerfmt-0.2.0.tar.gz': '439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro-error-1.0.4.tar.gz': 'da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c'}, + {'proc-macro-error-attr-1.0.4.tar.gz': 'a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.37.tar.gz': 'b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rayon-1.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'}, + {'rust-htslib-0.47.0.tar.gz': '41f1796800e73ebb282c6fc5c03f1fe160e867e01114a58a7e115ee3c1d02482'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'rustversion-1.0.17.tar.gz': '955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.209.tar.gz': '99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09'}, + {'serde_derive-1.0.209.tar.gz': 'a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170'}, + {'serde_json-1.0.127.tar.gz': '8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad'}, + {'serde_repr-0.1.19.tar.gz': '6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9'}, + {'serde_with-2.3.3.tar.gz': '07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe'}, + {'serde_with_macros-2.3.3.tar.gz': '881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.76.tar.gz': '578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525'}, + {'termcolor-1.4.1.tar.gz': '06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755'}, + {'textwrap-0.16.1.tar.gz': '23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9'}, + {'thiserror-1.0.63.tar.gz': 'c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724'}, + {'thiserror-impl-1.0.63.tar.gz': 'a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261'}, + {'time-0.3.36.tar.gz': '5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885'}, + {'time-core-0.1.2.tar.gz': 'ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3'}, + {'time-macros-0.2.18.tar.gz': '3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'typeid-1.0.2.tar.gz': '0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e'}, + {'unicase-2.7.0.tar.gz': 'f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89'}, + {'unicode-bidi-0.3.15.tar.gz': '08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.23.tar.gz': 'a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5'}, + {'unzip-n-0.1.2.tar.gz': 'c2e7e85a0596447f0f2ac090e16bc4c516c6fe91771fb0c0ccf7fa3dae896b9c'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}, + {'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'}, + {'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-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'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, +] + +crates = [ + ('aho-corasick', '1.1.3'), + ('android-tzdata', '0.1.1'), + ('android_system_properties', '0.1.5'), + ('anstream', '0.6.15'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.5'), + ('anstyle-query', '1.1.1'), + ('anstyle-wincon', '3.0.4'), + ('askama', '0.12.1'), + ('askama_derive', '0.12.5'), + ('askama_escape', '0.10.3'), + ('askama_parser', '0.2.1'), + ('atty', '0.2.14'), + ('autocfg', '1.3.0'), + ('base64', '0.13.1'), + ('basic-toml', '0.1.9'), + ('bindgen', '0.69.4'), + ('bio-types', '1.0.4'), + ('bitflags', '1.3.2'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.1.15'), + ('cexpr', '0.6.0'), + ('cfg-if', '1.0.0'), + ('chrono', '0.4.38'), + ('clang-sys', '1.8.1'), + ('clap', '3.2.25'), + ('clap_derive', '3.2.25'), + ('clap_lex', '0.2.4'), + ('cmake', '0.1.51'), + ('colorchoice', '1.0.2'), + ('core-foundation-sys', '0.8.7'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.20'), + ('ctor', '0.2.8'), + ('curl-sys', '0.4.74+curl-8.9.0'), + ('custom_derive', '0.1.7'), + ('darling', '0.20.10'), + ('darling_core', '0.20.10'), + ('darling_macro', '0.20.10'), + ('deranged', '0.3.11'), + ('derive-new', '0.5.9'), + ('derive-new', '0.6.0'), + ('dyn-clone', '1.0.17'), + ('either', '1.13.0'), + ('env_filter', '0.1.2'), + ('env_logger', '0.11.5'), + ('erased-serde', '0.4.5'), + ('fnv', '1.0.7'), + ('form_urlencoded', '1.2.1'), + ('fs-utils', '1.1.4'), + ('getrandom', '0.2.15'), + ('glob', '0.3.1'), + ('hashbrown', '0.12.3'), + ('heck', '0.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.1.19'), + ('hex', '0.4.3'), + ('hts-sys', '2.1.4'), + ('humansize', '2.1.3'), + ('humantime', '2.1.0'), + ('iana-time-zone', '0.1.60'), + ('iana-time-zone-haiku', '0.1.2'), + ('ident_case', '1.0.1'), + ('idna', '0.5.0'), + ('ieee754', '0.2.6'), + ('indexmap', '1.9.3'), + ('is_terminal_polyfill', '1.70.1'), + ('itertools', '0.12.1'), + ('itoa', '1.0.11'), + ('jobserver', '0.1.32'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.5.0'), + ('lazycell', '1.3.0'), + ('libc', '0.2.158'), + ('libloading', '0.8.5'), + ('libm', '0.2.8'), + ('libz-sys', '1.1.20'), + ('linear-map', '1.2.0'), + ('log', '0.4.22'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.4'), + ('mime', '0.3.17'), + ('mime_guess', '2.0.5'), + ('minimal-lexical', '0.2.1'), + ('newtype_derive', '0.1.6'), + ('nom', '7.1.3'), + ('num-conv', '0.1.0'), + ('num-traits', '0.2.19'), + ('once_cell', '1.19.0'), + ('openssl-src', '300.3.1+3.3.1'), + ('openssl-sys', '0.9.103'), + ('os_str_bytes', '6.6.1'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('plotly', '0.9.0'), + ('plotly_derive', '0.9.0'), + ('powerfmt', '0.2.0'), + ('ppv-lite86', '0.2.20'), + ('proc-macro-error', '1.0.4'), + ('proc-macro-error-attr', '1.0.4'), + ('proc-macro2', '1.0.86'), + ('quick-error', '1.2.3'), + ('quote', '1.0.37'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('rust-htslib', '0.47.0'), + ('rustc-hash', '1.1.0'), + ('rustc_version', '0.1.7'), + ('rustversion', '1.0.17'), + ('ryu', '1.0.18'), + ('semver', '0.1.20'), + ('serde', '1.0.209'), + ('serde_derive', '1.0.209'), + ('serde_json', '1.0.127'), + ('serde_repr', '0.1.19'), + ('serde_with', '2.3.3'), + ('serde_with_macros', '2.3.3'), + ('shlex', '1.3.0'), + ('strsim', '0.10.0'), + ('strsim', '0.11.1'), + ('strum_macros', '0.26.4'), + ('syn', '1.0.109'), + ('syn', '2.0.76'), + ('termcolor', '1.4.1'), + ('textwrap', '0.16.1'), + ('thiserror', '1.0.63'), + ('thiserror-impl', '1.0.63'), + ('time', '0.3.36'), + ('time-core', '0.1.2'), + ('time-macros', '0.2.18'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('typeid', '1.0.2'), + ('unicase', '2.7.0'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unzip-n', '0.1.2'), + ('url', '2.5.2'), + ('utf8parse', '0.2.2'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.5'), + ('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'), + ('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-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'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + +builddependencies = [ + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), + ('Clang', '16.0.6'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('OpenSSL', '1.1', '', SYSTEM), + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s --version"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/phonemizer/phonemizer-3.2.1-gfbf-2023a.eb b/easybuild/easyconfigs/p/phonemizer/phonemizer-3.2.1-gfbf-2023a.eb index 907228d9281..2569dce3fb5 100644 --- a/easybuild/easyconfigs/p/phonemizer/phonemizer-3.2.1-gfbf-2023a.eb +++ b/easybuild/easyconfigs/p/phonemizer/phonemizer-3.2.1-gfbf-2023a.eb @@ -13,12 +13,15 @@ It is using four backends: espeak, espeak-mbrola, festival and segments. toolchain = {'name': 'gfbf', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('Python-bundle-PyPI', '2023.06'), ('eSpeak-NG', '1.51'), ('festival', '2.5.0'), - ('hatchling', '1.18.0'), ('RDFlib', '7.0.0'), ('lxml', '4.9.2'), ] diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb index 9e6b6c5f6e6..c243d21a148 100644 --- a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -18,6 +18,7 @@ dependencies = [ ('PyYAML', '6.0'), ('h5py', '3.9.0'), ('spglib-python', '2.1.0'), + ('cp2k-input-tools', '0.9.1'), ] download_dep_fail = True 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..8eaaa826af5 --- /dev/null +++ b/easybuild/easyconfigs/p/phylo-treetime/phylo-treetime-0.11.4-foss-2023a.eb @@ -0,0 +1,41 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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-2.3.0-GCCcore-14.2.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..de13aa5fb33 --- /dev/null +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0-GCCcore-14.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'pkgconf' +version = '2.3.0' + +homepage = 'https://github.com/pkgconf/pkgconf' + +description = """pkgconf is a program which helps to configure compiler and linker flags for development libraries. + It is similar to pkg-config from freedesktop.org.""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = ['https://distfiles.ariadne.space/pkgconf/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['a2df680578e85f609f2fa67bd3d0fc0dc71b4bf084fc49119de84cd6ed28e723'] + +builddependencies = [('binutils', '2.42')] + +postinstallcmds = ["cd %(installdir)s/bin && ln -s pkgconf pkg-config"] + +sanity_check_paths = { + 'files': ['bin/pkg-config', 'bin/pkgconf'], + 'dirs': [], +} + +sanity_check_commands = [ + "pkg-config --help", + "pkgconf --help", +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb new file mode 100644 index 00000000000..c90cecda0a1 --- /dev/null +++ b/easybuild/easyconfigs/p/pkgconf/pkgconf-2.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'pkgconf' +version = '2.3.0' + +homepage = 'https://github.com/pkgconf/pkgconf' + +description = """pkgconf is a program which helps to configure compiler and linker flags for development libraries. + It is similar to pkg-config from freedesktop.org.""" + +toolchain = SYSTEM + +source_urls = ['https://distfiles.ariadne.space/pkgconf/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['a2df680578e85f609f2fa67bd3d0fc0dc71b4bf084fc49119de84cd6ed28e723'] + +# add pkgconfig directories in the system to list of default search paths +preconfigopts = 'EB_SYS_PC_PATH=":$(find /usr -xdev -type d -name "pkgconfig" -printf %p: 2>/dev/null)";' +configopts = '--with-pkg-config-dir="%(installdir)s/lib/pkgconfig:%(installdir)s/share/pkgconfig${EB_SYS_PC_PATH%:}"' + +postinstallcmds = ["cd %(installdir)s/bin && ln -s pkgconf pkg-config"] + +sanity_check_paths = { + 'files': ['bin/pkg-config', 'bin/pkgconf'], + 'dirs': [], +} + +sanity_check_commands = [ + "pkg-config --help", + "pkgconf --help", +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pkgconfig/pkgconfig-1.5.5-GCCcore-13.3.0-python.eb b/easybuild/easyconfigs/p/pkgconfig/pkgconfig-1.5.5-GCCcore-13.3.0-python.eb new file mode 100644 index 00000000000..f66c2f13358 --- /dev/null +++ b/easybuild/easyconfigs/p/pkgconfig/pkgconfig-1.5.5-GCCcore-13.3.0-python.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'pkgconfig' +version = '1.5.5' +# The -python versionsuffix is used to avoid confusion between +# pkg-config (the tool) and pkgconfig (the Python wrappers) +versionsuffix = '-python' + +homepage = 'https://github.com/matze/pkgconfig' +description = """pkgconfig is a Python module to interface with the pkg-config command line tool""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['deb4163ef11f75b520d822d9505c1f462761b4309b1bb713d08689759ea8b899'] + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('pkgconf', '2.2.0'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..fcf1a67d7ff --- /dev/null +++ b/easybuild/easyconfigs/p/plotly-orca/plotly-orca-1.3.1-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) + +easyblock = 'Binary' + +name = 'plotly-orca' +version = '1.3.1' + +homepage = 'https://github.com/plotly/orca' +description = """Orca is an Electron app that generates images and reports of Plotly things like + plotly.js graphs, dash apps, dashboards from the command line.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/plotly/orca/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['25ebf207d75769c140dcea033a984e7a3a6d919bb8e110a14c890c8cf430f14d'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('nodejs', '18.17.1'), +] + +install_cmd = 'npm install --no-package-lock -g --prefix %(installdir)s electron@6.1.4 v%(version)s.tar.gz' + +sanity_check_paths = { + 'files': ['bin/orca'], + 'dirs': ['lib/node_modules/orca'], +} +sanity_check_commands = ['orca --help'] + +moduleclass = 'vis' 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..97bb6e12c8d --- /dev/null +++ b/easybuild/easyconfigs/p/plotly.py/plotly.py-5.24.1-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +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'), +] + +use_pip = True + +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'], + }), +] + +sanity_pip_check = True + +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..695a90190e0 --- /dev/null +++ b/easybuild/easyconfigs/p/pmt/pmt-1.3.1-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'pmt' +version = '1.3.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://git.astron.nl/RD/pmt' +description = """PMT is a high-level software library capable of + collecting power consumption measurements on various hardware.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['cf8c669ffb0fda4cb594550fb233f9654252db50671b59147826eadc0a3d5565'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +dependencies = [ + ('CUDA', '12.6.0', '', SYSTEM) +] + +configopts = '-DPMT_BUILD_RAPL=1 -DPMT_BUILD_NVML=1 -DPMT_BUILD_NVIDIA=1' + +sanity_check_paths = { + 'files': ["lib/libpmt.%s" % SHLIB_EXT, "include/pmt/NVIDIA.h", "include/pmt/Rapl.h", "include/pmt/NVML.h"], + 'dirs': ["lib", "include"], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb b/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb new file mode 100644 index 00000000000..4a188f7473b --- /dev/null +++ b/easybuild/easyconfigs/p/pocl/pocl-6.0-GCC-13.3.0.eb @@ -0,0 +1,48 @@ +# https://github.com/pocl/pocl/issues/1219 +# "PoCL 3.1 supports LLVM only up to 15", so need 4.0 for working with Clang 16 +easyblock = 'CMakeNinja' + +name = 'pocl' +version = '6.0' + +homepage = 'http://portablecl.org' +description = """PoCL is a portable open source (MIT-licensed) implementation +of the OpenCL standard (1.2 with some 2.0 features supported).""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/pocl/pocl/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [] +checksums = [ + 'de9710223fc1855f833dbbf42ea2681e06aa8ec0464f0201104dc80a74dfd1f2', # v6.0.tar.gz +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Ninja', '1.12.1'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('Clang', '18.1.8'), + ('hwloc', '2.10.0'), + ('libtool', '2.4.7'), + ('libxml2', '2.12.7'), +] + +separate_build_dir = True + +# disable attempt to find an ICD loader, always build libOpenCL.so +configopts = "-DENABLE_ICD=0 -DINSTALL_OPENCL_HEADERS=1 " +# make sure we use the easybuild Clang +configopts += "-DWITH_LLVM_CONFIG=$EBROOTCLANG/bin/llvm-config -DSTATIC_LLVM=ON " +# avoid host CPU auto-detection (which may fail on recent CPUs) +configopts += "-DLLC_HOST_CPU=native " + +sanity_check_paths = { + 'files': ['bin/poclcc', 'lib64/libOpenCL.%s' % SHLIB_EXT], + 'dirs': ['include/CL', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10-foss-2023a.eb b/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10-foss-2023a.eb new file mode 100644 index 00000000000..9db2243c96e --- /dev/null +++ b/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10-foss-2023a.eb @@ -0,0 +1,110 @@ +easyblock = 'CMakeMake' + +name = 'pod5-file-format' +version = '0.3.10' + +homepage = 'https://github.com/nanoporetech/pod5-file-format' +description = """POD5 is a file format for storing nanopore dna data in an easily accessible way. + The format is able to be written in a streaming manner which allows a sequencing + instrument to directly write the format.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/nanoporetech/%(name)s/archive/'] +sources = [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +patches = ['pod5-file-format-0.3.10_dep_fix.patch'] +checksums = [ + {'pod5-file-format-0.3.10.tar.gz': 'eb177018b310e508f7ad6b5d486cc29166404dd5f82879d0c26aceaff51d3768'}, + {'pod5-file-format-0.3.10_dep_fix.patch': '20dc87ab82d4b52ff7fb769d17c2478daf95f787b2a184c9d985e33e03038e31'}, +] + +builddependencies = [ + ('poetry', '1.5.1'), + ('CMake', '3.26.3'), + ('pkgconfig', '1.5.5', '-python'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('Arrow', '14.0.1'), + ('SciPy-bundle', '2023.07'), + ('zstd', '1.5.5'), + ('flatbuffers', '23.5.26'), + ('pybind11', '2.11.1'), + ('Boost', '1.82.0'), + ('build', '1.0.3'), + ('HDF5', '1.14.0'), + ('h5py', '3.9.0'), + ('tqdm', '4.66.1'), + ('polars', '0.20.2'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, + 'installopts': '', +} + +# unpin polars and h5py versions in pod5 +local_preinstallopts = ( + "sed -i" + " -e 's/polars~=0.19/polars/'" + " -e 's/h5py~=3.10.0/h5py/'" + " pyproject.toml && " +) + +exts_list = [ + ('vbz_h5py_plugin', '1.0.1', { + 'checksums': ['c784458bb0aad6303474cb2f10956179116b35555803fd1154eb4ef362519341'], + }), + ('iso8601', '2.1.0', { + 'checksums': ['6b1d3829ee8921c4301998c909f7829fa9ed3cbdac0d3b16af2d743aed1ba8df'], + }), + ('pod5', version, { + 'preinstallopts': local_preinstallopts, + 'checksums': ['f2dcb1938fcf51c725393345e480c1d12711089d542a27446fb92fbe2e18ae60'], + }), +] + +# create POD5Version.cmake +# python -m setuptools_scm && python -m pod5_make_version shows wrong version +local_ver_sub_minor = version.split('.')[2] +preconfigopts = ( + 'cd %%(builddir)s/%%(name)s-%%(version)s/cmake && ' + 'touch POD5Version.cmake && ' + 'echo "set(POD5_VERSION_MAJOR %%(version_major)s)">POD5Version.cmake && ' + 'echo "set(POD5_VERSION_MINOR %%(version_minor)s)">>POD5Version.cmake && ' + 'echo "set(POD5_VERSION_REV %s)">>POD5Version.cmake && ' + 'echo "set(POD5_NUMERIC_VERSION %%(version)s)">>POD5Version.cmake && ' + 'echo "set(POD5_FULL_VERSION %%(version)s)">>POD5Version.cmake && ' % local_ver_sub_minor +) + +# delete add_subdirectory(third_party/pybind11) from CMakeLists.txt +preconfigopts += "cd %(builddir)s/%(name)s-%(version)s && sed -i '/add_subdirectory(third_party/d' CMakeLists.txt && " +preconfigopts += 'cd %(builddir)s/easybuild_obj && ' + +configopts = ' -DBUILD_PYTHON_WHEEL=ON -DZSTD_LIB="$EBROOTZSTD/lib" -DZSTD_INCLUDE_DIR="$EBROOTZSTD/include"' + +# install lib_pod5 from wheel - dependency of pod5 +installopts = ' && export XDG_CACHE_HOME=%(builddir)s && cd %(installdir)s' +installopts += ' && pip install --no-deps --ignore-installed --prefix %(installdir)s lib_pod5-%(version)s-*.whl' + +postinstallcmds = ['rm %(installdir)s/lib_pod5-%(version)s-*.whl'] + +sanity_check_paths = { + 'files': ['bin/pod5', 'lib/libpod5_format.a'], + 'dirs': ['include/pod5_format', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "pod5 subset --help", + "python -c 'import lib_pod5'", +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10_dep_fix.patch b/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10_dep_fix.patch new file mode 100644 index 00000000000..a053f870ebe --- /dev/null +++ b/easybuild/easyconfigs/p/pod5-file-format/pod5-file-format-0.3.10_dep_fix.patch @@ -0,0 +1,32 @@ +Flatbuffers 2.0.7 uses capital 'B' in 'FlatBuffersConfig.cmake' +We want to use our pybind11 instead of the one in git submodules +Author: Petr Král (INUITS) +diff -u c++/CMakeLists.txt.orig c++/CMakeLists.txt +--- c++/CMakeLists.txt.orig 2023-02-23 19:17:13.000000000 +0100 ++++ c++/CMakeLists.txt 2023-04-25 14:07:28.174884834 +0200 +@@ -3,7 +3,7 @@ + if (ENABLE_CONAN) + find_package(Arrow REQUIRED CONFIG) + find_package(Boost REQUIRED CONFIG) +- find_package(Flatbuffers REQUIRED CONFIG) ++ find_package(FlatBuffers REQUIRED CONFIG) + find_package(zstd REQUIRED CONFIG) + find_package(ZLIB REQUIRED CONFIG) + +@@ -17,7 +17,7 @@ + COMPONENTS + headers + ) +- find_package(Flatbuffers REQUIRED) ++ find_package(FlatBuffers REQUIRED) + find_package(zstd REQUIRED) + find_package(ZLIB REQUIRED) + +@@ -27,6 +27,7 @@ + endif() + + find_package(Threads REQUIRED) ++find_package(pybind11 REQUIRED) + + find_program( + FLATBUFFERS_FLATC_EXECUTABLE diff --git a/easybuild/easyconfigs/p/popt/popt-1.18.eb b/easybuild/easyconfigs/p/popt/popt-1.18.eb new file mode 100644 index 00000000000..6abfaaedede --- /dev/null +++ b/easybuild/easyconfigs/p/popt/popt-1.18.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'popt' +version = "1.18" + +homepage = "http://freecode.com/projects/popt" +description = """Popt is a C library for parsing command line parameters.""" +toolchain = SYSTEM + +source_urls = ['http://ftp.rpm.org/popt/releases/popt-1.x/'] +sources = [SOURCE_TAR_GZ] +checksums = ['5159bc03a20b28ce363aa96765f37df99ea4d8850b1ece17d1e6ad5c24fdc5d1'] + +toolchainopts = {'optarch': False} +sanity_check_paths = { + 'files': ['include/popt.h', + ('lib/libpopt.a', 'lib64/libpopt.a'), + ('lib/libpopt.%s' % SHLIB_EXT, 'lib64/libpopt.%s' % SHLIB_EXT)], + 'dirs': [], +} + +maxparallel = 1 + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/popt/popt-1.19-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/popt/popt-1.19-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..91b5c7c74ba --- /dev/null +++ b/easybuild/easyconfigs/p/popt/popt-1.19-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'popt' +version = '1.19' + +homepage = 'https://github.com/rpm-software-management/popt' +description = 'Popt is a C library for parsing command line parameters.' + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['http://ftp.rpm.org/popt/releases/popt-1.x'] +sources = [SOURCE_TAR_GZ] +checksums = ['c25a4838fc8e4c1c8aacb8bd620edb3084a3d63bf8987fdad3ca2758c63240f9'] + +builddependencies = [ + ('binutils', '2.42') +] + +sanity_check_paths = { + 'files': ['include/%(name)s.h', ('lib/libpopt.a', 'lib64/libpopt.a'), ('lib/libpopt.so', 'lib64/libpopt.so')], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..7a8779a9412 --- /dev/null +++ b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'pretty-yaml' +local_mod = 'pyaml' +version = '24.7.0' + +homepage = 'https://github.com/mk-fg/pretty-yaml' +description = """PyYAML-based python module to produce pretty and readable YAML-serialized data. +This module is for serialization only, see ruamel.yaml module for literate YAML +parsing (keeping track of comments, spacing, line/column numbers of values, etc).""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/p/%s/' % local_mod] +sources = ['%s-%%(version)s.tar.gz' % local_mod] +checksums = ['5d0fdf9e681036fb263a783d0298fc3af580a6e2a6cf1a3314ffc48dc3d91ccb'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), + ('PyYAML', '6.0'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': local_mod} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ef58228ef61 --- /dev/null +++ b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-24.7.0-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'pretty-yaml' +local_mod = 'pyaml' +version = '24.7.0' + +homepage = 'https://github.com/mk-fg/pretty-yaml' +description = """PyYAML-based python module to produce pretty and readable YAML-serialized data. +This module is for serialization only, see ruamel.yaml module for literate YAML +parsing (keeping track of comments, spacing, line/column numbers of values, etc).""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/p/%s/' % local_mod] +sources = ['%s-%%(version)s.tar.gz' % local_mod] +checksums = ['5d0fdf9e681036fb263a783d0298fc3af580a6e2a6cf1a3314ffc48dc3d91ccb'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('PyYAML', '6.0.2'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': local_mod} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/primecount/primecount-7.14-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/primecount/primecount-7.14-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..556cc0f1507 --- /dev/null +++ b/easybuild/easyconfigs/p/primecount/primecount-7.14-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'primecount' +version = '7.14' + +homepage = 'https://github.com/kimwalisch/primecount' +description = """primecount is a command-line program and C/C++ library that counts the number of primes ≤ x + (maximum 1031) using highly optimized implementations of the combinatorial prime counting algorithms.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/kimwalisch/primecount/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +checksums = ['d867ac18cc52c0f7014682169988a76f39e4cd56f8ce78fb56e064499b1d66bb'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('binutils', '2.40'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['bin/primecount', 'include/primecount.h'] + + ['lib/libprimecount.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['share'], +} + +sanity_check_commands = ["primecount -h"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..11244361d59 --- /dev/null +++ b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'primecountpy' +version = '0.1.0' + +homepage = 'https://pypi.org/project/primecountpy' +description = "This is a Cython interface to the C++ library primecount." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['78fe7cc32115f0669a45d7c90faaf39f7ce3939e39e2e7e5f14c17fe4bff0676'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.5'), + ('Cython', '3.0.10'), + ('cysignals', '1.11.4'), + ('primecount', '7.14'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..dfcdad173d1 --- /dev/null +++ b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-12.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'prompt-toolkit' +version = '3.0.36' + +homepage = 'https://github.com/jonathanslenders/python-prompt-toolkit' +description = """prompt_toolkit is a Python library for building powerful interactive command lines and + terminal applications.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +sources = ['prompt_toolkit-%(version)s-py3-none-any.whl'] +checksums = ['aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305'] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +options = {'modulename': 'prompt_toolkit'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..8cbde894708 --- /dev/null +++ b/easybuild/easyconfigs/p/prompt-toolkit/prompt-toolkit-3.0.36-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'prompt-toolkit' +version = '3.0.36' + +homepage = 'https://github.com/jonathanslenders/python-prompt-toolkit' +description = """prompt_toolkit is a Python library for building powerful interactive command lines and + terminal applications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sources = ['prompt_toolkit-%(version)s-py3-none-any.whl'] +checksums = ['aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'prompt_toolkit'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ed4aac1448e --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-5.28.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'protobuf-python' +version = '5.28.0' + +homepage = 'https://github.com/google/protobuf/' +description = "Python Protocol Buffers runtime library." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/p/protobuf'] +sources = ['protobuf-%(version)s.tar.gz'] +checksums = ['dde74af0fa774fa98892209992295adbfb91da3fa98c8f67a88afe8f5a349add'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('protobuf', version[2:]), # Major version is only used for the Python bindings +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +options = {'modulename': 'google.protobuf'} + +# Make sure protobuf is installed as a regular folder or it will not be found if +# other google packages are installed in other site-packages folders +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/google/protobuf'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b5f959fc06b --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf/protobuf-28.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'protobuf' +version = '28.0' + +homepage = 'https://github.com/protocolbuffers/protobuf' +description = """Protocol Buffers (a.k.a., protobuf) are Google's +language-neutral, platform-neutral, extensible mechanism for +serializing structured data.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'protocolbuffers' +source_urls = [GITHUB_RELEASE] +sources = [SOURCE_TAR_GZ] +checksums = ['13e7749c30bc24af6ee93e092422f9dc08491c7097efa69461f88eb5f61805ce'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] +dependencies = [ + ('Abseil', '20240722.0'), +] + +srcdir = '.' + +configopts = '-Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON -Dprotobuf_ABSL_PROVIDER="package" ' + +sanity_check_paths = { + 'files': ['bin/protoc', 'lib/libprotobuf.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/psutil/psutil-6.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/psutil/psutil-6.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d6b6501e7da --- /dev/null +++ b/easybuild/easyconfigs/p/psutil/psutil-6.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonBundle' + +name = 'psutil' +version = '6.0.0' + +homepage = 'https://github.com/giampaolo/psutil' +description = """A cross-platform process and system utilities module for Python""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Python', '3.12.3')] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/giampaolo/psutil/archive'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': ['8faae4f310b6d969fa26ca0545338b21f73c6b15db7c4a8d934a5482faa818f2'], + }), +] + +moduleclass = 'lib' 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..5ba7c5d9380 --- /dev/null +++ b/easybuild/easyconfigs/p/psutil/psutil-6.1.0-GCCcore-13.2.0.eb @@ -0,0 +1,26 @@ +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')] + +use_pip = True +sanity_pip_check = True + +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.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5c0aab8a54e --- /dev/null +++ b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.1-GCCcore-12.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonBundle' + +name = 'psycopg' +version = '3.2.1' + +homepage = 'https://psycopg.org/' +description = "Psycopg is the most popular PostgreSQL adapter for the Python programming language." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.3'), + ('PostgreSQL', '16.1'), +] + +exts_list = [ + (name, version, { + 'checksums': ['dc8da6dc8729dacacda3cc2f17d2c9397a70a66cf0d2b69c91065d60d5f00cb7'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..28b9128ff66 --- /dev/null +++ b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'psycopg' +version = '3.2.3' + +homepage = 'https://psycopg.org/' +description = "Psycopg is the most popular PostgreSQL adapter for the Python programming language." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['a5764f67c27bec8bfac85764d23c534af2c27b893550377e37ce59c12aac47a2'] + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('PostgreSQL', '16.4'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/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..89191292693 --- /dev/null +++ b/easybuild/easyconfigs/p/pyWannier90/pyWannier90-2024-01-28-foss-2023a.eb @@ -0,0 +1,73 @@ +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'", +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +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..2f643966cdb --- /dev/null +++ b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb @@ -0,0 +1,25 @@ +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'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pydantic/pydantic-2.9.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pydantic/pydantic-2.9.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a6cda3881ae --- /dev/null +++ b/easybuild/easyconfigs/p/pydantic/pydantic-2.9.1-GCCcore-13.3.0.eb @@ -0,0 +1,235 @@ +easyblock = 'CargoPythonBundle' + +name = 'pydantic' +version = '2.9.1' + +homepage = 'https://github.com/samuelcolvin/pydantic' +description = "Data validation and settings management using Python type hinting." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('Rust', '1.78.0'), + ('maturin', '1.6.0'), + ('hatchling', '1.24.2'), +] +dependencies = [ + ('Python', '3.12.3'), + ('typing-extensions', '4.11.0'), +] + +sanity_pip_check = True +use_pip = True +crates = [ + ('ahash', '0.8.11'), + ('aho-corasick', '1.1.3'), + ('autocfg', '1.3.0'), + ('base64', '0.22.1'), + ('bitvec', '1.0.1'), + ('cc', '1.0.101'), + ('cfg-if', '1.0.0'), + ('displaydoc', '0.2.5'), + ('enum_dispatch', '0.3.13'), + ('equivalent', '1.0.1'), + ('form_urlencoded', '1.2.1'), + ('funty', '2.0.0'), + ('getrandom', '0.2.15'), + ('hashbrown', '0.14.5'), + ('heck', '0.5.0'), + ('hex', '0.4.3'), + ('icu_collections', '1.5.0'), + ('icu_locid', '1.5.0'), + ('icu_locid_transform', '1.5.0'), + ('icu_locid_transform_data', '1.5.0'), + ('icu_normalizer', '1.5.0'), + ('icu_normalizer_data', '1.5.0'), + ('icu_properties', '1.5.1'), + ('icu_properties_data', '1.5.0'), + ('icu_provider', '1.5.0'), + ('icu_provider_macros', '1.5.0'), + ('idna', '0.5.0'), + ('idna', '1.0.2'), + ('indexmap', '2.2.6'), + ('indoc', '2.0.5'), + ('itoa', '1.0.11'), + ('jiter', '0.5.0'), + ('lexical-parse-float', '0.8.5'), + ('lexical-parse-integer', '0.8.6'), + ('lexical-util', '0.8.5'), + ('libc', '0.2.155'), + ('litemap', '0.7.3'), + ('memchr', '2.7.4'), + ('memoffset', '0.9.1'), + ('num-bigint', '0.4.6'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.19'), + ('once_cell', '1.19.0'), + ('percent-encoding', '2.3.1'), + ('portable-atomic', '1.6.0'), + ('proc-macro2', '1.0.86'), + ('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'), + ('python3-dll-a', '0.2.10'), + ('quote', '1.0.36'), + ('radium', '0.7.0'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('rustversion', '1.0.17'), + ('ryu', '1.0.18'), + ('serde', '1.0.209'), + ('serde_derive', '1.0.209'), + ('serde_json', '1.0.128'), + ('smallvec', '1.13.2'), + ('speedate', '0.14.4'), + ('stable_deref_trait', '1.2.0'), + ('static_assertions', '1.1.0'), + ('strum', '0.26.3'), + ('strum_macros', '0.26.4'), + ('syn', '2.0.68'), + ('synstructure', '0.13.1'), + ('tap', '1.0.1'), + ('target-lexicon', '0.12.14'), + ('tinystr', '0.7.6'), + ('tinyvec', '1.6.1'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unindent', '0.2.3'), + ('url', '2.5.2'), + ('utf16_iter', '1.0.5'), + ('utf8_iter', '1.0.4'), + ('uuid', '1.10.0'), + ('version_check', '0.9.5'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('write16', '1.0.0'), + ('writeable', '0.5.5'), + ('wyz', '0.5.1'), + ('yoke', '0.7.4'), + ('yoke-derive', '0.7.4'), + ('zerocopy', '0.7.34'), + ('zerocopy-derive', '0.7.34'), + ('zerofrom', '0.1.4'), + ('zerofrom-derive', '0.1.4'), + ('zerovec', '0.10.4'), + ('zerovec-derive', '0.10.3'), +] + +checksums = [ + ({'ahash-0.8.11.tar.gz': 'e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011'}), + ({'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}), + ({'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}), + ({'base64-0.22.1.tar.gz': '72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6'}), + ({'bitvec-1.0.1.tar.gz': '1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c'}), + ({'cc-1.0.101.tar.gz': 'ac367972e516d45567c7eafc73d24e1c193dcf200a8d94e9db7b3d38b349572d'}), + ({'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}), + ({'displaydoc-0.2.5.tar.gz': '97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0'}), + ({'enum_dispatch-0.3.13.tar.gz': 'aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd'}), + ({'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}), + ({'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}), + ({'funty-2.0.0.tar.gz': 'e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c'}), + ({'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}), + ({'hashbrown-0.14.5.tar.gz': 'e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1'}), + ({'heck-0.5.0.tar.gz': '2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea'}), + ({'hex-0.4.3.tar.gz': '7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70'}), + ({'icu_collections-1.5.0.tar.gz': 'db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526'}), + ({'icu_locid-1.5.0.tar.gz': '13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637'}), + ({'icu_locid_transform-1.5.0.tar.gz': '01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e'}), + ({'icu_locid_transform_data-1.5.0.tar.gz': 'fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e'}), + ({'icu_normalizer-1.5.0.tar.gz': '19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f'}), + ({'icu_normalizer_data-1.5.0.tar.gz': 'f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516'}), + ({'icu_properties-1.5.1.tar.gz': '93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5'}), + ({'icu_properties_data-1.5.0.tar.gz': '67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569'}), + ({'icu_provider-1.5.0.tar.gz': '6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9'}), + ({'icu_provider_macros-1.5.0.tar.gz': '1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6'}), + ({'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}), + ({'idna-1.0.2.tar.gz': 'bd69211b9b519e98303c015e21a007e293db403b6c85b9b124e133d25e242cdd'}), + ({'indexmap-2.2.6.tar.gz': '168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26'}), + ({'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}), + ({'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}), + ({'jiter-0.5.0.tar.gz': '02e23549143ef50eddffd46ba8cd0229b0a4500aef7518cf2eb0f41c9a09d22b'}), + ({'lexical-parse-float-0.8.5.tar.gz': '683b3a5ebd0130b8fb52ba0bdc718cc56815b6a097e28ae5a6997d0ad17dc05f'}), + ({'lexical-parse-integer-0.8.6.tar.gz': '6d0994485ed0c312f6d965766754ea177d07f9c00c9b82a5ee62ed5b47945ee9'}), + ({'lexical-util-0.8.5.tar.gz': '5255b9ff16ff898710eb9eb63cb39248ea8a5bb036bea8085b1a767ff6c4e3fc'}), + ({'libc-0.2.155.tar.gz': '97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c'}), + ({'litemap-0.7.3.tar.gz': '643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704'}), + ({'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}), + ({'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}), + ({'num-bigint-0.4.6.tar.gz': 'a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9'}), + ({'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}), + ({'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}), + ({'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}), + ({'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}), + ({'portable-atomic-1.6.0.tar.gz': '7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0'}), + ({'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}), + ({'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'}), + ({'python3-dll-a-0.2.10.tar.gz': 'bd0b78171a90d808b319acfad166c4790d9e9759bbc14ac8273fe133673dd41b'}), + ({'quote-1.0.36.tar.gz': '0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7'}), + ({'radium-0.7.0.tar.gz': 'dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09'}), + ({'regex-1.10.6.tar.gz': '4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619'}), + ({'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}), + ({'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}), + ({'rustversion-1.0.17.tar.gz': '955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6'}), + ({'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}), + ({'serde-1.0.209.tar.gz': '99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09'}), + ({'serde_derive-1.0.209.tar.gz': 'a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170'}), + ({'serde_json-1.0.128.tar.gz': '6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8'}), + ({'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}), + ({'speedate-0.14.4.tar.gz': '08a20480dbd4c693f0b0f3210f2cee5bfa21a176c1fa4df0e65cc0474e7fa557'}), + ({'stable_deref_trait-1.2.0.tar.gz': 'a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3'}), + ({'static_assertions-1.1.0.tar.gz': 'a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f'}), + ({'strum-0.26.3.tar.gz': '8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06'}), + ({'strum_macros-0.26.4.tar.gz': '4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be'}), + ({'syn-2.0.68.tar.gz': '901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9'}), + ({'synstructure-0.13.1.tar.gz': 'c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971'}), + ({'tap-1.0.1.tar.gz': '55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369'}), + ({'target-lexicon-0.12.14.tar.gz': 'e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f'}), + ({'tinystr-0.7.6.tar.gz': '9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f'}), + ({'tinyvec-1.6.1.tar.gz': 'c55115c6fbe2d2bef26eb09ad74bde02d8255476fc0c7b515ef09fbb35742d82'}), + ({'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'}), + ({'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}), + ({'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}), + ({'utf16_iter-1.0.5.tar.gz': 'c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246'}), + ({'utf8_iter-1.0.4.tar.gz': 'b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be'}), + ({'uuid-1.10.0.tar.gz': '81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314'}), + ({'version_check-0.9.5.tar.gz': '0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a'}), + ({'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}), + ({'write16-1.0.0.tar.gz': 'd1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936'}), + ({'writeable-0.5.5.tar.gz': '1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51'}), + ({'wyz-0.5.1.tar.gz': '05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed'}), + ({'yoke-0.7.4.tar.gz': '6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5'}), + ({'yoke-derive-0.7.4.tar.gz': '28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95'}), + ({'zerocopy-0.7.34.tar.gz': 'ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087'}), + ({'zerocopy-derive-0.7.34.tar.gz': '15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b'}), + ({'zerofrom-0.1.4.tar.gz': '91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55'}), + ({'zerofrom-derive-0.1.4.tar.gz': '0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5'}), + ({'zerovec-0.10.4.tar.gz': 'aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079'}), + ({'zerovec-derive-0.10.3.tar.gz': '6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6'}), +] + +exts_list = [ + ('annotated_types', '0.7.0', { + 'checksums': ['aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89'], + }), + ('pydantic_core', '2.23.3', { + 'checksums': ['3cb0f65d8b4121c1b015c60104a685feb929a29d7cf204387c7f2688c7974690'], + }), + (name, version, { + 'preinstallopts': "sed -i '/Framework :: Pydantic/d' pyproject.toml && ", + 'checksums': ['1363c7d975c7036df0db2b4a61f2e062fbc0aa5ab5f2772e0ffc7191a4f4bce2'], + }), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pydot/pydot-2.0.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pydot/pydot-2.0.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..d39e368e0cd --- /dev/null +++ b/easybuild/easyconfigs/p/pydot/pydot-2.0.0-GCCcore-12.2.0.eb @@ -0,0 +1,25 @@ +# updated: Denis Kristak, Pavel Tománek (INUITS) +easyblock = 'PythonBundle' + +name = 'pydot' +version = '2.0.0' + +homepage = 'https://github.com/pydot/pydot' +description = "Python interface to Graphviz's Dot language." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [('binutils', '2.39')] + +dependencies = [('Python', '3.10.8')] + +exts_list = [ + (name, version, { + 'checksums': ['60246af215123fa062f21cd791be67dda23a6f280df09f68919e637a1e4f3235'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/pyfaidx/pyfaidx-0.8.1.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pyfaidx/pyfaidx-0.8.1.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f54906c30b3 --- /dev/null +++ b/easybuild/easyconfigs/p/pyfaidx/pyfaidx-0.8.1.2-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'pyfaidx' +version = '0.8.1.2' + +homepage = 'https://pypi.python.org/pypi/pyfaidx' +description = "pyfaidx: efficient pythonic random access to fasta subsequences" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['d8452470455b1e778f93969447db8ea24deb4624c7c40769516459cb6f87bc33'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/faidx'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["faidx --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pyfasta/pyfasta-0.5.2-foss-2023a.eb b/easybuild/easyconfigs/p/pyfasta/pyfasta-0.5.2-foss-2023a.eb new file mode 100644 index 00000000000..127a798d38a --- /dev/null +++ b/easybuild/easyconfigs/p/pyfasta/pyfasta-0.5.2-foss-2023a.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'pyfasta' +version = '0.5.2' + +homepage = 'https://pypi.org/project/pyfasta/' +description = """fast, memory-efficient, pythonic (and command-line) access to fasta sequence files""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True + +local_preinstallopts = ( + "sed -i" + " -e 's/from fasta/from pyfasta.fasta/'" + " -e 's/from records/from pyfasta.records/'" + " -e 's/from split_fasta/from pyfasta.split_fasta/'" + " %(name)s/__init__.py && " +) +local_preinstallopts += "sed -i 's/from collections/from collections.abc/' pyfasta/fasta.py && " +local_preinstallopts += "sed -i 's/from records/from pyfasta.records/' pyfasta/fasta.py && " +local_preinstallopts += "sed -i 's/import cPickle/import _pickle as cPickle/' pyfasta/records.py && " +local_preinstallopts += "sed -i 's/from cStringIO import StringIO/from io import StringIO/' pyfasta/split_fasta.py && " + +exts_list = [ + (name, version, { + 'preinstallopts': local_preinstallopts, + 'checksums': ['ab08d75fa90253bc91933d10567d5d9cca2718f4796ef3bdc36b68df0e45b258'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyfasta'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} +sanity_check_commands = ['pyfasta extract --help'] +sanity_pip_check = True + +moduleclass = 'tools' 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..c76c4f5371b --- /dev/null +++ b/easybuild/easyconfigs/p/pyproj/pyproj-3.7.0-GCCcore-13.3.0.eb @@ -0,0 +1,39 @@ +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'), +] + +download_dep_fail = True +use_pip = True + +preinstallopts = "export PROJ_DIR=$EBROOTPROJ && " + +sanity_check_paths = { + 'files': ['bin/pyproj'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['pyproj --help'] + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pyseer/pyseer-1.3.12-foss-2023a.eb b/easybuild/easyconfigs/p/pyseer/pyseer-1.3.12-foss-2023a.eb new file mode 100644 index 00000000000..16cf7b1a00c --- /dev/null +++ b/easybuild/easyconfigs/p/pyseer/pyseer-1.3.12-foss-2023a.eb @@ -0,0 +1,56 @@ +# Borrowed from the BEAR RSG team, University of Birmingham +# Update: Petr Král (INUITS) +easyblock = 'PythonBundle' + +name = 'pyseer' +version = '1.3.12' + +homepage = 'https://github.com/mgalardini/pyseer' +description = """pyseer was first written a python reimplementation of seer, which was written in C++. pyseer uses + linear models with fixed or mixed effects to estimate the effect of genetic variation in a bacterial population + on a phenotype of interest, while accounting for potentially very strong confounding population structure. + This allows for genome-wide association studies (GWAS) to be performed in clonal organisms + such as bacteria and viruses.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('pybedtools', '0.9.1'), + ('statsmodels', '0.14.1'), + ('scikit-learn', '1.3.1'), + ('Pysam', '0.22.0'), + ('DendroPy', '4.6.1'), + ('matplotlib', '3.7.2'), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('glmnet-python', '1.0.2', { + 'source_urls': ['https://github.com/johnlees/glmnet_python/archive'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['7a5550514140dabbd27ad4eb1c04db64199d9bb89541e088d9bb162570205e76'], + }), + (name, version, { + 'source_urls': ['https://github.com/mgalardini/pyseer/archive'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['aa07fc1bd5346d02123ff36ba64a1ff4dbbb85a21c37a12f35ad7d5be7e21e9c'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyseer', 'bin/square_mash'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + '%(namelower)s --help', + 'square_mash --help', +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..7a512df4e25 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'pytest-flakefinder' +version = '1.1.0' + +homepage = 'https://github.com/dropbox/pytest-flakefinder' +description = "Runs tests multiple times to expose flakiness." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +sources = [SOURCE_TAR_GZ] +checksums = ['e2412a1920bdb8e7908783b20b3d57e9dad590cc39a93e8596ffdd493b403e0e'] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..25aaab957da --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-workflow/pytest-workflow-2.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'pytest-workflow' +version = '2.1.0' + +homepage = 'https://github.com/LUMC/pytest-workflow' +description = """Configure workflow/pipeline tests using yaml files. + +pytest-workflow is a workflow-system agnostic testing framework that aims to make pipeline/workflow testing easy by +using YAML files for the test configuration. +Whether you write your pipelines in WDL, snakemake, nextflow, bash or any other workflow framework, +pytest-workflow makes testing easy. +pytest-workflow is build on top of the pytest test framework.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('PyYAML', '6.0.2'), + ('python-isal', '1.7.0'), + ('zlib-ng', '2.2.1'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('zstandard', '0.23.0', {'checksums': ['b2d8c62d08e7255f68f7a740bae85b3c9b8e5466baa9cbf7f57f1cde0ac6bc09']}), + ('xopen', '2.0.2', {'checksums': ['f19d83de470f5a81725df0140180ec71d198311a1d7dad48f5467b4ad5df6154']}), + (name, version, {'checksums': ['dc86ad9a5f94482aec14926788f6b78b428be68ee0428cbca22f89b6326f8b7a']}), +] + +moduleclass = 'tools' 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..254e2c6a8b9 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb @@ -0,0 +1,64 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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-4.6.11-GCC-12.3.0-Python-2.7.18.eb b/easybuild/easyconfigs/p/pytest/pytest-4.6.11-GCC-12.3.0-Python-2.7.18.eb new file mode 100644 index 00000000000..470efa5624e --- /dev/null +++ b/easybuild/easyconfigs/p/pytest/pytest-4.6.11-GCC-12.3.0-Python-2.7.18.eb @@ -0,0 +1,102 @@ +easyblock = 'PythonBundle' + +name = 'pytest' +version = '4.6.11' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pytest.org' +description = """pytest: simple powerful testing with Python""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +dependencies = [('Python', '2.7.18')] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('contextlib2', '0.6.0.post1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['3355078a159fbb44ee60ea80abd0d87b80b78c248643b49aa6d94673b413609b'], + }), + ('zipp', '1.2.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['e0d9e63797e483a30d27e09fffd308c59a700d365ec34e93cc100844168bf921'], + }), + ('importlib_metadata', '2.1.3', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['52e65a0856f9ba7ea8f2c4ced253fb6c88d1a8c352cb1e916cff4eb17d5a693d'], + }), + ('typing', '3.10.0.0', { + 'source_tmpl': SOURCE_PY2_WHL, + 'checksums': ['c7219ef20c5fbf413b4567092adfc46fa6203cb8454eda33c3fc1afe1398a308'], + }), + ('py', '1.11.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378'], + }), + ('attrs', '21.4.0', { + 'modulename': 'attr', + 'source_tmpl': SOURCE_WHL, + 'checksums': ['2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4'], + }), + ('pluggy', '0.13.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d'], + }), + ('atomicwrites', '1.4.1', { + 'checksums': ['81b2c9071a49367a7f770170e5eec8cb66567cfbbc8c73d20ce5ca4a8d71cf11'], + }), + ('more_itertools', '5.0.0', { + 'source_tmpl': SOURCE_PY2_WHL, + 'checksums': ['c0a5785b1109a6bd7fac76d6837fd1feca158e54e521ccd2ae8bfe393cc9d4fc'], + }), + ('scandir', '1.10.0', { + 'checksums': ['4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae'], + }), + ('pathlib2', '2.3.7.post1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['5266a0fd000452f1b3467d782f079a4343c63aaa119221fbdc4e39577489ca5b'], + }), + ('six', '1.16.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254'], + }), + ('funcsigs', '1.0.2', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca'], + }), + ('configparser', '4.0.2', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['254c1d9c79f60c45dfde850850883d5aaa7f19a23f13561243a050d5a7c3fe4c'], + }), + ('pyparsing', '2.4.7', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b'], + }), + ('packaging', '20.9', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a'], + }), + ('backports.functools_lru_cache', '1.6.6', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['77e27d0ffbb463904bdd5ef8b44363f6cd5ef503e664b3f599a3bf5843ed37cf'], + }), + ('wcwidth', '0.2.13', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859'], + }), + (name, version, { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['a00a7d79cbbdfa9d21e7d0298392a8dd4123316bfac545075e6f8f24c94d8c97'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pytest'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['pytest --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb index 9d0b6f0c25d..45ab5fae484 100644 --- a/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb @@ -13,11 +13,12 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} builddependencies = [ ('binutils', '2.40'), ('hatchling', '1.18.0'), + ('flit', '3.9.0'), ] dependencies = [ ('Python', '3.11.3'), - ('Python-bundle-PyPI', '2023.06'), + ('hypothesis', '6.82.0'), ] use_pip = True @@ -39,15 +40,14 @@ _skip_tests = [ _ignore_tests = ' --ignore='.join(_skip_tests) exts_list = [ - ('setuptools-scm', '8.0.4', { - 'checksums': ['b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7'], + ('iniconfig', '2.0.0', { + 'checksums': ['2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3'], }), - ('flit-core', '3.9.0', { - 'source_tmpl': 'flit_core-%(version)s.tar.gz', - 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], + ('exceptiongroup', '1.1.1', { + 'checksums': ['d484c3090ba2889ae2928419117447a14daf3c1231d5e30d0aae34f354f01785'], }), - ('hypothesis', '6.88.1', { - 'checksums': ['f4c2c004b9ec3e0e25332ad2cb6b91eba477a855557a7b5c6e79068809ff8b51'], + ('pluggy', '1.2.0', { + 'checksums': ['d12f0c4b579b15f5e054301bb226ee85eeeba08ffec228092f8defbaa3a4c4b3'], }), ('elementpath', '4.1.5', { 'checksums': ['c2d6dc524b29ef751ecfc416b0627668119d8812441c555d7471da41d4bacb8d'], 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..0701b7af348 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb @@ -0,0 +1,72 @@ +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'), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_LOWER_SOURCE]} + +# Note! Some of the file system related tests may fail on shared file systems. +# Notably TestPOSIXLocalPath.test_copy_stat_file, TestPOSIXLocalPath.test_copy_stat_dir +# and test_source_mtime_long_long are known to fail on GPFS +# Build with buildpath and tmpdir set to a local file system to avoid this +# or use --ignore-test-failures +_skip_tests = [ + 'testing/io/test_terminalwriter.py', + 'testing/test_terminal.py', + 'testing/test_debugging.py', + 'testing/test_config.py', + 'testing/test_helpconfig.py', +] +_ignore_tests = ' --ignore='.join(_skip_tests) + +exts_list = [ + ('setuptools-scm', '8.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, +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/python-igraph/python-igraph-0.10.6-foss-2022b.eb b/easybuild/easyconfigs/p/python-igraph/python-igraph-0.10.6-foss-2022b.eb index 01e1aa2d9c6..3b61ec3f869 100644 --- a/easybuild/easyconfigs/p/python-igraph/python-igraph-0.10.6-foss-2022b.eb +++ b/easybuild/easyconfigs/p/python-igraph/python-igraph-0.10.6-foss-2022b.eb @@ -20,6 +20,7 @@ dependencies = [ ('Clang', '16.0.4'), ('libxml2', '2.10.3'), ('zlib', '1.2.12'), + ('cairo', '1.17.4'), ] use_pip = True diff --git a/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..96885969511 --- /dev/null +++ b/easybuild/easyconfigs/p/python-isal/python-isal-1.7.0-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'python-isal' +version = '1.7.0' + +homepage = 'https://github.com/pycompression/python-isal' +description = """Faster zlib and gzip compatible compression and decompression + by providing python bindings for the isa-l library. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('versioningit', '3.1.2'), +] +dependencies = [ + ('Python', '3.12.3'), + ('ISA-L', '2.31.0'), +] + +source_urls = [PYPI_SOURCE.replace('%(name)s', 'isal')] +sources = ['isal-%(version)s.tar.gz'] +checksums = ['9eb9457ed27fd0a8a7b403a5f4f9e6c8d1a44c2ca28ecd2f2bf3aed90b0a74bf'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +preinstallopts = 'PYTHON_ISAL_LINK_DYNAMIC=true' + +options = {'modulename': 'isal'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/python-louvain/python-louvain-0.16-foss-2022b.eb b/easybuild/easyconfigs/p/python-louvain/python-louvain-0.16-foss-2022b.eb new file mode 100644 index 00000000000..5c6085a41e6 --- /dev/null +++ b/easybuild/easyconfigs/p/python-louvain/python-louvain-0.16-foss-2022b.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonPackage' + +name = 'python-louvain' +version = '0.16' + +homepage = 'https://pypi.org/project/python-louvain' +description = "Louvain algorithm for community detection" + +toolchain = {'name': 'foss', 'version': '2022b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['b7ba2df5002fd28d3ee789a49532baad11fe648e4f2117cf0798e7520a1da56b'] + +dependencies = [ + ('Python', '3.10.8'), + ('networkx', '3.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +options = {'modulename': 'community'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pyvips/pyvips-2.2.3-GCC-12.3.0.eb b/easybuild/easyconfigs/p/pyvips/pyvips-2.2.3-GCC-12.3.0.eb new file mode 100644 index 00000000000..b690235bd4c --- /dev/null +++ b/easybuild/easyconfigs/p/pyvips/pyvips-2.2.3-GCC-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonPackage' + +name = 'pyvips' +version = '2.2.3' + +homepage = 'https://github.com/libvips/pyvips' +description = """This module wraps the libvips image processing library. +libvips is a demand-driven, horizontally threaded image processing library.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'libvips' +local_pyshortver = '3.11' # no pyshortver with Python-bundle-PyPI + +source_urls = ['https://github.com/%s/%s/archive/refs/tags/' % (github_account, name)] +sources = ['v%(version)s.tar.gz'] +checksums = ['d70f21a557523404884dd2a192505227e1e6a50ed74315d73c416489b43e9414'] + +dependencies = [ + ('libvips', '8.15.2'), + ('Python-bundle-PyPI', '2023.06'), + ('pyperf', '2.7.0'), + ('pkgconfig', '1.5.5', '-python'), +] + +download_dep_fail = True +use_pip = True + +testinstall = True +runtest = 'pytest' + +sanity_check_paths = { + 'files': ['lib/python%s/site-packages/pyvips/base.py' % local_pyshortver], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +sanity_check_commands = ['python -c "import pyvips"'] + +sanity_pip_check = True + +moduleclass = 'tools' 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..ae1b1f87ea1 --- /dev/null +++ b/easybuild/easyconfigs/q/QCG-PilotJob/QCG-PilotJob-0.14.1-gfbf-2024a.eb @@ -0,0 +1,70 @@ +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'), +] + +use_pip = True + +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'], + }), +] + +sanity_pip_check = True + +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/QUAST/QUAST-5.2.0-gfbf-2023a.eb b/easybuild/easyconfigs/q/QUAST/QUAST-5.2.0-gfbf-2023a.eb new file mode 100644 index 00000000000..2d46e6cf6b9 --- /dev/null +++ b/easybuild/easyconfigs/q/QUAST/QUAST-5.2.0-gfbf-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'QUAST' +version = '5.2.0' + +homepage = 'https://github.com/ablab/quast' +description = """QUAST evaluates genome assemblies by computing various metrics. +It works both with and without reference genomes. The tool accepts multiple +assemblies, thus is suitable for comparison.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.11.3'), + ('Perl', '5.36.1'), + ('matplotlib', '3.7.2'), + ('Java', '11', '', SYSTEM), + ('Boost', '1.82.0'), +] + +use_pip = True + +github_account = 'ablab' +exts_list = [ + (name, version, { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['%(namelower)s_%(version)s.tar.gz'], + 'checksums': ['db903a6e4dd81384687f1c38d47cbe0f51bdf7f6d5e5c0bd30c13796391f4f04'], + 'modulename': 'quast_libs', + }), +] + +postinstallcmds = [ + "cd %(installdir)s/bin && ln -s %(namelower)s.py %(namelower)s", + "cp -a %(builddir)s/QUAST/quast*%(version)s/test_data %(installdir)s/", +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'bin/%(namelower)s.py', 'bin/meta%(namelower)s.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'test_data'], +} + +sanity_check_commands = [ + "quast -h", + "mkdir -p %(builddir)s && cp -a %(installdir)s/test_data %(builddir)s && cd %(builddir)s && quast.py --test", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/q/QUAST/QUAST-5.2.0-gfbf-2023b.eb b/easybuild/easyconfigs/q/QUAST/QUAST-5.2.0-gfbf-2023b.eb new file mode 100644 index 00000000000..dd6df4bb5ed --- /dev/null +++ b/easybuild/easyconfigs/q/QUAST/QUAST-5.2.0-gfbf-2023b.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'QUAST' +version = '5.2.0' + +homepage = 'https://github.com/ablab/quast' +description = """QUAST evaluates genome assemblies by computing various metrics. +It works both with and without reference genomes. The tool accepts multiple +assemblies, thus is suitable for comparison.""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.11.5'), + ('Perl', '5.38.0'), + ('matplotlib', '3.8.2'), + ('Java', '11', '', SYSTEM), + ('Boost', '1.83.0'), +] + +use_pip = True + +github_account = 'ablab' +exts_list = [ + (name, version, { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['%(namelower)s_%(version)s.tar.gz'], + 'checksums': ['db903a6e4dd81384687f1c38d47cbe0f51bdf7f6d5e5c0bd30c13796391f4f04'], + 'modulename': 'quast_libs', + }), +] + +postinstallcmds = [ + "cd %(installdir)s/bin && ln -s %(namelower)s.py %(namelower)s", + "cp -a %(builddir)s/QUAST/quast*%(version)s/test_data %(installdir)s/", +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'bin/%(namelower)s.py', 'bin/meta%(namelower)s.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'test_data'], +} + +sanity_check_commands = [ + "quast -h", + "mkdir -p %(builddir)s && cp -a %(installdir)s/test_data %(builddir)s && cd %(builddir)s && quast.py --test", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/q/Qhull/Qhull-2020.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/q/Qhull/Qhull-2020.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..400fecee609 --- /dev/null +++ b/easybuild/easyconfigs/q/Qhull/Qhull-2020.2-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'CMakeMake' + +name = 'Qhull' +version = '2020.2' + +homepage = 'http://www.qhull.org' + +description = """ + Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram, + halfspace intersection about a point, furthest-site Delaunay triangulation, + and furthest-site Voronoi diagram. The source code runs in 2-d, 3-d, 4-d, and + higher dimensions. Qhull implements the Quickhull algorithm for computing the + convex hull. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['http://www.qhull.org/download/'] +sources = ['%(namelower)s-%(version_major)s-src-8.0.2.tgz'] +checksums = ['b5c2d7eb833278881b952c8a52d20179eab87766b00b865000469a45c1838b7e'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +sanity_check_paths = { + 'files': ['bin/qhull', 'lib/libqhull_r.%s' % SHLIB_EXT, + 'lib/pkgconfig/qhull_r.pc'], + 'dirs': [], +} + +modextrapaths = { + 'CPATH': ['qhull/include'], +} + +parallel = 1 + +moduleclass = 'math' 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/Qwt/Qwt-6.3.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/q/Qwt/Qwt-6.3.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..f208a034542 --- /dev/null +++ b/easybuild/easyconfigs/q/Qwt/Qwt-6.3.0-GCCcore-12.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'Qwt' +version = '6.3.0' + +homepage = 'https://qwt.sourceforge.io/' +description = """The Qwt library contains GUI Components and utility classes which are primarily useful for programs + with a technical background.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_BZ2] +patches = ['Qwt-6.2.0_fix-install-prefix.patch'] +checksums = [ + {'qwt-6.3.0.tar.bz2': 'dcb085896c28aaec5518cbc08c0ee2b4e60ada7ac929d82639f6189851a6129a'}, + {'Qwt-6.2.0_fix-install-prefix.patch': 'ac5c329c0693d565b461cdd3b36c1b96b4d09885e1e0c10929fc7a9021c03bad'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('Qt5', '5.15.10'), +] + +skipsteps = ['configure'] + +prebuildopts = 'export QWT_PREFIX=%(installdir)s && ' +prebuildopts += "qmake qwt.pro && " + +sanity_check_paths = { + 'files': ['lib/libqwt.%s' % SHLIB_EXT, 'lib/pkgconfig/Qt5Qwt6.pc'], + 'dirs': ['doc', 'features', 'include', 'plugins'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb new file mode 100644 index 00000000000..0c20434dec2 --- /dev/null +++ b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023a.eb @@ -0,0 +1,35 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) +easyblock = 'PythonPackage' + +name = 'qcat' +version = '1.1.0' + +homepage = 'https://github.com/nanoporetech/qcat' +description = "qcat is a Python command-line tool for demultiplexing Oxford Nanopore reads from FASTQ files" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['56f225321a48eef43e2b83a33cbbb47bf1b1edcd569f3db4d088a1bc0199e20a'] + +dependencies = [ + ('Python', '3.11.3'), + ('Biopython', '1.83'), + ('python-parasail', '1.3.4'), + ('PyYAML', '6.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/qcat'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["qcat --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023b.eb b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023b.eb new file mode 100644 index 00000000000..347b09bccf3 --- /dev/null +++ b/easybuild/easyconfigs/q/qcat/qcat-1.1.0-foss-2023b.eb @@ -0,0 +1,35 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 +# Update: Petr Král (INUITS) +easyblock = 'PythonPackage' + +name = 'qcat' +version = '1.1.0' + +homepage = 'https://github.com/nanoporetech/qcat' +description = "qcat is a Python command-line tool for demultiplexing Oxford Nanopore reads from FASTQ files" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['56f225321a48eef43e2b83a33cbbb47bf1b1edcd569f3db4d088a1bc0199e20a'] + +dependencies = [ + ('Python', '3.11.5'), + ('Biopython', '1.84'), + ('python-parasail', '1.3.4'), + ('PyYAML', '6.0.1'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/qcat'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["qcat --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/q/qnorm/qnorm-0.8.1-foss-2022b.eb b/easybuild/easyconfigs/q/qnorm/qnorm-0.8.1-foss-2022b.eb new file mode 100644 index 00000000000..99c6ebe1e23 --- /dev/null +++ b/easybuild/easyconfigs/q/qnorm/qnorm-0.8.1-foss-2022b.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonPackage' + +name = 'qnorm' +version = '0.8.1' + +homepage = 'https://github.com/Maarten-vd-Sande/qnorm' +description = "Fast-ish (and correct!) quantile normalization in Python" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('numba', '0.58.1'), +] + +sources = [SOURCE_TAR_GZ] +checksums = ['61b2f3ef09a9c552a4f3b83dc438cb13f191fa190164361a3a508c4777eed3c7'] + +download_dep_fail = True +use_pip = True + +# pyproject.toml included in qnorm source tarball does not include standard fields, +# it's only there to be read by setup.py... +preinstallopts = "sed -i 's/pyproject.toml/pyproject.toml_/g' setup.py && mv pyproject.toml pyproject.toml_ && " + +sanity_check_paths = { + 'files': ['bin/qnorm'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["qnorm --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_fix-hardcoded-deps.patch b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_fix-hardcoded-deps.patch new file mode 100644 index 00000000000..5fd0b954d98 --- /dev/null +++ b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_fix-hardcoded-deps.patch @@ -0,0 +1,55 @@ +use dependencies provided by EasyBuild +authors: Denis Kristak (INUITS), Kenneth Hoste (HPC-UGent) +diff -ru r-inla-Version_24.01.18.orig/inlaprog/Makefile r-inla-Version_24.01.18/inlaprog/Makefile +--- r-inla-Version_24.01.18.orig/inlaprog/Makefile 2024-01-18 20:34:05.000000000 +0100 ++++ r-inla-Version_24.01.18/inlaprog/Makefile 2024-01-19 13:58:44.694060467 +0100 +@@ -9,13 +9,11 @@ + + ## *** chose either one of these; rgeneric requires the second version *** + ifeq ($(INLA_WITHOUT_LIBR),1) +- RLIB_INC = -DINLA_WITH_RMATH \ +- -I/usr/include/R -I/usr/share/R/include +- RLIB_LIB = -L/usr/lib -lRmath ++ RLIB_INC = -DINLA_WITH_RMATH ++ RLIB_LIB = -lRmath + else +- RLIB_INC = -DINLA_WITH_RMATH -DINLA_LIBR \ +- -I/usr/include/R -I/usr/share/R/include +- RLIB_LIB = -L/usr/lib -lRmath -L/usr/lib/R/lib -lR ++ RLIB_INC = -DINLA_WITH_RMATH -DINLA_LIBR ++ RLIB_LIB = -lRmath -lR + endif + + # select compilers and optimized compiler-options, add -fopenmp or similar to use OpenMP +@@ -32,7 +30,7 @@ + + # The external libraries to link with + EXTLIBS1 = -L$(PREFIX)/lib -lGMRFLib -L$(LEXTPREFIX)/lib +-EXTLIBS2 = -lgsl -ltaucs -lmetis -llapack -lblas -lgslcblas -lamd -lmuparser -lz -lgfortran -lcrypto ++EXTLIBS2 = -lgsl -ltaucs -lmetis -lscalapack -lflexiblas -lgslcblas -lamd -lmuparser -lz -lgfortran -lcrypto + EXTLIBS3 = -Wl,--whole-archive -lpthread -Wl,--no-whole-archive -lm + + ################################################################################ +@@ -92,8 +90,8 @@ + done; \ + install -m755 $(INLA) $(PREFIX)/bin/$(INLA);\ + install -m755 $(INLA) $(PREFIX)/bin/$(INLA)-$(VERSION);\ +- rsync -auv --no-p --no-o --no-g --chmod=ugo=rwX --delete doc/* $(PREFIX)/doc/inla; \ +- rsync -auv --no-p --no-o --no-g --chmod=ugo=rwX --delete examples/* $(PREFIX)/doc/inla/examples; ++ # rsync -auv --no-p --no-o --no-g --chmod=ugo=rwX --delete doc/* $(PREFIX)/doc/inla; \ ++ # rsync -auv --no-p --no-o --no-g --chmod=ugo=rwX --delete examples/* $(PREFIX)/doc/inla/examples; + + clean:; -$(RM) $(OBJ) $(INLA) + +diff -ru r-inla-Version_24.01.18.orig/inlaprog/src/eval.c r-inla-Version_24.01.18/inlaprog/src/eval.c +--- r-inla-Version_24.01.18.orig/inlaprog/src/eval.c 2024-01-18 20:34:05.000000000 +0100 ++++ r-inla-Version_24.01.18/inlaprog/src/eval.c 2024-01-19 13:55:57.883885401 +0100 +@@ -34,7 +34,7 @@ + #include + #include + +-#include ++#include + + #include "GMRFLib/GMRFLib.h" + #include "inla.h" diff --git a/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_remove-hardcoding.patch b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_remove-hardcoding.patch new file mode 100644 index 00000000000..747e9e81781 --- /dev/null +++ b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01-18_remove-hardcoding.patch @@ -0,0 +1,44 @@ +remove hardcoded paths from scripts +authors: Denis Kristak (INUTS) + Kenneth Hoste (HPC-UGent) +diff -ru r-inla-Version_24.01.18.orig/rinla/inst/bin/linux/64bit/fmesher.run r-inla-Version_24.01.18/rinla/inst/bin/linux/64bit/fmesher.run +--- r-inla-Version_24.01.18.orig/rinla/inst/bin/linux/64bit/fmesher.run 2024-01-18 20:34:05.000000000 +0100 ++++ r-inla-Version_24.01.18/rinla/inst/bin/linux/64bit/fmesher.run 2024-01-19 15:51:25.789786893 +0100 +@@ -4,17 +4,6 @@ + prog=${tmp%%.run} + DIR=$(dirname "$cmd") + +-D="" +-for d in {,/usr}/lib64 /usr/lib64/R/lib {,/usr}/lib/x86_64-linux-gnu {,/usr}/lib; do +- if [ -d "$d" ]; then +- if [ -z "$D" ]; then +- D="$d" +- else +- D="$D:$d" +- fi +- fi +-done +-export LD_LIBRARY_PATH="$DIR/first:$D:$DIR:$LD_LIBRARY_PATH" + + if [ "${INLA_DEBUG}XX" != "XX" ]; then + echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" +diff -ru r-inla-Version_24.01.18.orig/rinla/inst/bin/linux/64bit/inla.run r-inla-Version_24.01.18/rinla/inst/bin/linux/64bit/inla.run +--- r-inla-Version_24.01.18.orig/rinla/inst/bin/linux/64bit/inla.run 2024-01-18 20:34:05.000000000 +0100 ++++ r-inla-Version_24.01.18/rinla/inst/bin/linux/64bit/inla.run 2024-01-19 15:56:17.584566196 +0100 +@@ -13,17 +13,6 @@ + fi + fi + +-D="" +-for d in {,/usr}/lib64 /usr/lib64/R/lib {,/usr}/lib/x86_64-linux-gnu {,/usr}/lib; do +- if [ -d "$d" ]; then +- if [ -z "$D" ]; then +- D="$d" +- else +- D="$D:$d" +- fi +- fi +-done +- + for f in $DIR/first/lib*.so*; do + case "$f" in + $DIR/first/libjemalloc.so*) diff --git a/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01.18-foss-2023a.eb b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01.18-foss-2023a.eb new file mode 100644 index 00000000000..6691aea2a24 --- /dev/null +++ b/easybuild/easyconfigs/r/R-INLA/R-INLA-24.01.18-foss-2023a.eb @@ -0,0 +1,104 @@ +easyblock = 'Bundle' + +name = 'R-INLA' +version = '24.01.18' + +homepage = 'https://www.r-inla.org' +description = "R-INLA is a package in R that do approximate Bayesian inference for Latent Gaussian Models." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True} + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('GSL', '2.7'), + ('zlib', '1.2.13'), + ('SuiteSparse', '7.1.0'), + ('METIS', '5.1.0'), + ('muParser', '2.3.4'), + ('Rmath', '%(rver)s'), + ('X11', '20230603'), + ('libtool', '2.4.7'), # provides libltdl +] + +default_easyblock = 'ConfigureMake' +# all components are installed from the same source tarball +default_component_specs = { + 'source_urls': ['https://github.com/hrue/r-inla/archive/refs/tags/'], + 'sources': [{'download_filename': 'Version_%s.tar.gz' % version, 'filename': 'R-INLA-%s.tar.gz' % version}], + 'skipsteps': ['configure'], + 'checksums': ['ad166a01b8d774d52e4e9a1dc94547439c263af6539605f47735d3a3cc294145'], +} + +local_gmrflib_buildopts = ' -C r-inla-*/gmrflib PREFIX=%(installdir)s CC="$CC" FC="$FC" ' +local_gmrflib_buildopts += ' FLAGS="$CXXFLAGS -DINLA_LINK_WITH_OPENBLAS " ' + +# enable linking with fake PARDISO library (since PARDISO is not freely available) +local_rinla_prebuildopts = "sed -i 's@src/tweedie.o@src/tweedie.o src/libpardiso.o@g' r-inla-*/inlaprog/Makefile && " +local_rinla_prebuildopts += "export CPATH=$EBROOTR/lib64/R/include/:$CPATH && " + +local_inla_buildopts = '-C r-inla-*/inlaprog PREFIX=%(installdir)s ' +local_inla_buildopts += ' CC="$CC" CXX="$CXX" FC="$FC" LD="$CXX -lltdl" ' +local_inla_buildopts += ' FLAGS="$CXXFLAGS -DINLA_LINK_WITH_OPENBLAS"' + +components = [ + ('taucs', version, { + 'easyblock': 'MakeCp', + 'prebuildopts': "cd r-inla-*/extlibs && tar xvfz taucs-2.2--my-fix.tgz && cd taucs-2.2--my-fix && ", + 'buildopts': 'CC="$CC" CFLAGS="$CFLAGS" FC="$FC" FFLAGS="$FFLAGS" LIBBLAS="$LIBBLAS" LIBLAPACK="$LIBLAPACK"', + 'files_to_copy': [(['r-inla-*/extlibs/taucs-2.2--my-fix/lib/linux/libtaucs.a'], 'lib')], + }), + ('fmesher-R-INLA', version, { + 'patches': ['R-INLA-24.01-18_fix-hardcoded-deps.patch'], + 'checksums': default_component_specs['checksums'] + [ + '6dadd25dff99862f6271513cb97330549b74e29580209c0b204cd93192f98507', + ], + 'buildopts': '-C r-inla-*/fmesher PREFIX=%(installdir)s CC="$CC" CXX="$CXX" LD="$CXX" FLAGS="$CXXFLAGS"', + 'installopts': '-C r-inla-*/fmesher PREFIX=%(installdir)s', + }), + ('GMRFLib', version, { + 'buildopts': local_gmrflib_buildopts, + 'installopts': '-C r-inla-*/gmrflib PREFIX=%(installdir)s', + }), + ('fmesher', '0.1.5', { + 'easyblock': 'RPackage', + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/fmesher', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + ], + 'sources': ['fmesher_%(version)s.tar.gz'], + 'checksums': ['f6f7af8a88e87d1b0580afbea5284ca1140124686356da72c51fb3929791f85f'], + 'start_dir': 'fmesher', + }), + ('rinla', version, { + 'patches': ['R-INLA-24.01-18_remove-hardcoding.patch'], + 'checksums': default_component_specs['checksums'] + [ + 'fca2bab58ad0bfd08422c06af8991a85f537caccbfbfe1bd6cb5e6892503c7d4', + ], + 'easyblock': 'RPackage', + 'start_dir': 'r-inla-Version_%(version)s/rinla', + 'preinstallopts': "export R_LIBS_SITE=%(installdir)s:$R_LIBS_SITE && ", + }), + (name, version, { + 'prebuildopts': local_rinla_prebuildopts, + 'buildopts': local_inla_buildopts, + 'installopts': '-C r-inla-*/inlaprog PREFIX=%(installdir)s', + }), +] + +local_bins = ['inla', 'fmesher'] + +postinstallcmds = ['ln -s %%(installdir)s/bin/%s %%(installdir)s/INLA/bin/linux/64bit/%s' % (x, x) for x in local_bins] + +sanity_check_paths = { + 'files': ['%s/%s' % (p, x) for p in ['bin', 'INLA/bin/linux/64bit'] for x in local_bins] + + ['lib/libGMRFLib.a', 'lib/libtaucs.a'], + 'dirs': ['doc', 'include/GMRFLib'], +} + +sanity_check_commands = ["Rscript -e 'library(INLA)'"] + ["%s -h" % x for x in local_bins] + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.18-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.18-foss-2023a-R-4.3.2.eb index 48c86d2ed02..7d2ebad2d77 100644 --- a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.18-foss-2023a-R-4.3.2.eb +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.18-foss-2023a-R-4.3.2.eb @@ -1352,6 +1352,15 @@ exts_list = [ ('plyranges', '1.22.0', { 'checksums': ['fcdcad1082fadd1a365dd2d2cc7d955601b737ecd4a567d888d2b445756297fc'], }), + ('seqPattern', '1.34.0', { + 'checksums': ['6037d3685bab94e2d1f6046bdc19369a786a595ef421e6ce7d8a34408a6f4967'], + }), + ('genomation', '1.34.0', { + 'checksums': ['6c7e40caee1115a28617c2a0a0837c92701dbce7511277c078a5957a50e877ed'], + }), + ('ChIPseeker', '1.38.0', { + 'checksums': ['a0d4710fccda620b750f933916acac6d12999a077e1c17632d8823848a2fa82f'], + }), ] modextrapaths = {'R_LIBS_SITE': ''} diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.19-foss-2023b-R-4.4.1.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.19-foss-2023b-R-4.4.1.eb new file mode 100644 index 00000000000..f426b6ffbc5 --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.19-foss-2023b-R-4.4.1.eb @@ -0,0 +1,1362 @@ +easyblock = 'Bundle' + +name = 'R-bundle-Bioconductor' +version = '3.19' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://bioconductor.org' +description = """Bioconductor provides tools for the analysis and coprehension + of high-throughput genomic data.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [('pkgconf', '2.0.3')] + +dependencies = [ + ('R', '4.4.1'), + ('Boost', '1.83.0'), # for mzR + ('GSL', '2.7'), # for flowClust + ('arrow-R', '16.1.0', versionsuffix), # required by RcisTarget +] + +exts_default_options = { + 'source_urls': [ + 'https://bioconductor.org/packages/3.19/bioc/src/contrib/', + 'https://bioconductor.org/packages/3.19/bioc/src/contrib/Archive/%(name)s', + 'https://bioconductor.org/packages/3.19/data/annotation/src/contrib/', + 'https://bioconductor.org/packages/3.19/data/experiment/src/contrib/', + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'sources': ['%(name)s_%(version)s.tar.gz'], +} + +exts_defaultclass = 'RPackage' + +# check whether correct version is installed in extension filter +# (some versions in this bundle may be newer than the ones provided by R) +local_ext_version_check = "pkgver = packageVersion('%(ext_name)s'); if (pkgver != '%(ext_version)s') " +local_stop_msg = "stop('%(ext_name)s %(ext_version)s not installed, found ', pkgver, ' instead')" +exts_filter = ("R -q --no-save", "%s { %s }" % (local_ext_version_check, local_stop_msg)) + +# CRAN packages on which these Bioconductor packages depend are available in R module on which this depends +# !! order of packages is important !! +# packages updated on 24 June 2024 +exts_list = [ + ('BiocGenerics', '0.50.0', { + 'checksums': ['11d72e20c087911a58d08db7898d47424930e00265d6e65ae87d14d786f20014'], + }), + ('Biobase', '2.64.0', { + 'checksums': ['a21e35cdf4eeb71fc144712bb619d4ea5124c4013ceb14034a4d638231a0b627'], + }), + ('S4Vectors', '0.42.0', { + 'checksums': ['a94ac904e9e86cccefcade949f27992956727ce3ad2f15d8134421aac191002b'], + }), + ('IRanges', '2.38.0', { + 'checksums': ['62e646697a1dc2f292b2ea374abb1026ccbe2deedc2f1e5a87e2f99e2142e610'], + }), + ('GenomeInfoDbData', '1.2.12', { + 'checksums': ['f7556dc1a0e7b8c33ae7b86519f3f4af15d77c3e2a7be2f6e4a291bf0a95a355'], + }), + ('UCSC.utils', '1.0.0', { + 'checksums': ['349de171d96d28875fdbac104e4a10f0d6c891fdec6676d755d1fa6c5a2f2e71'], + }), + ('GenomeInfoDb', '1.40.1', { + 'checksums': ['80432e8531dc1573a573f940ac3da294faf1b801bbc66a9eef71b5754f90bc94'], + }), + ('zlibbioc', '1.50.0', { + 'checksums': ['0298d59b3bb87179a6accd506a51c80fb9ff922defd24208beb2c93e5032b894'], + }), + ('XVector', '0.44.0', { + 'checksums': ['42a35e3056f4289369082b3f04f6fdd66ea8cccf2dddb7388117f074ea49bb3b'], + }), + ('Biostrings', '2.72.1', { + 'checksums': ['fac10383d8a70ccf0f9b30fb0bc44676160462bbcc81b8edd46d5d7db6f0fb18'], + }), + ('KEGGREST', '1.44.1', { + 'checksums': ['3a4ae05edf81e8667c0b56145e987e52aa768d056873a79c5843c1f257d30d27'], + }), + ('AnnotationDbi', '1.66.0', { + 'checksums': ['3aa793c6888ad50a63d88e2a2df59655c6384ada9db2c5d84473ca76fafa5ebc'], + }), + ('GenomicRanges', '1.56.1', { + 'checksums': ['aaceaadc4562c1bd363370df53c8533ecf2a90fc36c5ceafe0bd5d54626a143c'], + }), + ('BiocParallel', '1.38.0', { + 'checksums': ['7e96e07beb4e59ab08d8064aaf6b4e414c9ccd7657e9949d7d9b2325b2113cd6'], + }), + ('Rhtslib', '3.0.0', { + 'checksums': ['dbecc8c9c6763f636eef38e207be238bd2e80feec0813149f6d8b1ce07592711'], + }), + ('Rsamtools', '2.20.0', { + 'checksums': ['689d914c78a085d15cf6d8a2511cd9ae2c6f2c95755ded799228beca7f039f12'], + }), + ('MatrixGenerics', '1.16.0', { + 'checksums': ['ccff61558f067237b96ea71509e4ca95ad465000294067eb21101892d02df6e4'], + }), + ('S4Arrays', '1.4.1', { + 'checksums': ['94b7e95a5f18e4106d8de1f4d8b1c25a8273aca0fe04519d227a7a6870b8bf71'], + }), + ('SparseArray', '1.4.8', { + 'checksums': ['b5c56eec735d429bafae4b9628818b0dae92e1813c6dc67480009c00a3d91caa'], + }), + ('DelayedArray', '0.30.1', { + 'checksums': ['a66af4adea2ab37be5b7bbc1322bb5d9c7f1f18a9171f6f2e3e839f1b3bad758'], + }), + ('SummarizedExperiment', '1.34.0', { + 'checksums': ['e0c2b2c512dcf273b6c74115bac49093932753b69bb0d95ff80fbcb7057e9b09'], + }), + ('GenomicAlignments', '1.40.0', { + 'checksums': ['fa68d1745004157501460f38d79b6ebb00975ad8a270bf97373665a0ac6c5f96'], + }), + ('pwalign', '1.0.0', { + 'checksums': ['67f1cc7342b2bf887e46fdee8e7ce41be9c4c61fffdfe952bbbab8284b0d12d4'], + }), + ('ShortRead', '1.62.0', { + 'checksums': ['550ead16ef1aa2dca0f221a570ca8216b077d1627701c824cf45773145c7b174'], + }), + ('graph', '1.82.0', { + 'checksums': ['1ba6c6c24905dd081880b9faeb8c3fdf11e67b267cd150a354d45ca4920641f1'], + }), + ('affyio', '1.74.0', { + 'checksums': ['10ed36d8317a1998e7d833e1d2268831f015202adc9f8a06b801f89fa48cda94'], + }), + ('preprocessCore', '1.66.0', { + 'installopts': "--configure-args='--disable-threading'", + 'checksums': ['b59794e3a0dce5b80392c88eef087e6c18a832c69a10a6bd84c2dd35550ca9b1'], + }), + ('BiocManager', '1.30.23', { + 'checksums': ['f7b45dbc49c97b2e6ec4b96ec1d472c6f1a5ad9bc0f933eea4c3ebc90dd8f34c'], + }), + ('affy', '1.82.0', { + 'checksums': ['be770650fec7477b478b7f03f0a3481b036bc2ee08a3dbcee4338fe60313e2a7'], + }), + ('GO.db', '3.19.1', { + 'checksums': ['0f6e6045e5cce6c842ad2ca73a13573b6838ed38f71661dd99d127033c993ba5'], + }), + ('limma', '3.60.3', { + 'checksums': ['ef46a3a924730d359df02f0f439ab2c3923a98b1252b977600e3789865a5c33b'], + }), + ('RBGL', '1.80.0', { + 'checksums': ['63376ec40804f76035ef64dfe6f697ae179071b43a6d33feaf263eba5976d9d8'], + }), + ('org.Hs.eg.db', '3.19.1', { + 'checksums': ['1932eff4d5d46c1ab219565dfff6706c93cfddc6bcbc65223832cc583f702bf7'], + }), + ('AnnotationForge', '1.46.0', { + 'checksums': ['c1b234391b582f5d10b87a80a3bbe00d3d2800d5fc3acf03ff12e8b0608a79c6'], + }), + ('annaffy', '1.76.0', { + 'checksums': ['b22e1f1b513684ffa1f2b7328e96afad1857aa27eda21838c62092ef91ad2889'], + }), + ('gcrma', '2.76.0', { + 'checksums': ['e35a659cbd927fd21341888e9ca04f0eeed4bd0f8272254a1104fa1436596905'], + }), + ('oligoClasses', '1.66.0', { + 'checksums': ['962c4f90080dd104bdaeb91178baa1552f761d3261130695bfd2667e2b732c96'], + }), + ('edgeR', '4.2.0', { + 'checksums': ['0f4343a340dbb609b6688d9b1eecb99bc474572c720c8ae7a21e4b30e0b86df0'], + }), + ('PFAM.db', '3.19.1', { + 'checksums': ['737392dc9e92499052761f547771f624b7aa06546f280da3758c747485504b4a'], + }), + ('perm', '1.0-0.4', { + 'checksums': ['561e01793a9032b6a3676a7819fe24175eeb9e96a5314bd78b9c48d46e627be9'], + }), + ('baySeq', '2.38.0', { + 'checksums': ['343d1ffece90f2ce5da7a37f41b471f2e6ad35abb7ed811272867619bff5935a'], + }), + ('qvalue', '2.36.0', { + 'checksums': ['4a3cf7ec1f241779f893e15858c44ea4b74f4a5669c602c26ac8e5a0d7cef3c1'], + }), + ('impute', '1.78.0', { + 'checksums': ['7929cc5eb5895d7f2498e96d4f8e67c3a79ce769b9b03ab09570668d924815bc'], + }), + ('shinyFiles', '0.9.3', { + 'checksums': ['4a72e165ee8a6e8256988f27286a2cfc4d7a42e2a902f4f2a728b1c237c07286'], + }), + ('samr', '3.0', { + 'checksums': ['25f88ac002c2adce8881a562241bc12d683810a05defb553e8e3d4878f037506'], + }), + ('DEGseq', '1.58.0', { + 'checksums': ['e098ca226955c0ca72e1c1e18e7478b778322c8063b79b1dadc8811dda7442c5'], + }), + ('hgu133plus2.db', '3.13.0', { + 'checksums': ['ddde58e777a8341536a664c7d4be874a2f395f8aaa019c1f738462a8ce74cc44'], + }), + ('illuminaio', '0.46.0', { + 'checksums': ['dbeb46b6a2c73bb59d47778595ff92eece58c709a8aea080576ddbf2e90d7650'], + }), + ('BiocIO', '1.14.0', { + 'checksums': ['9010bd8bdf810f571825bc055464219365168c6daadb2d6b8c74ed616fa3fa5e'], + }), + ('restfulr', '0.0.15', { + 'checksums': ['40ff8f1fb2987af2223e1a855bb1680c5ce2143fbce7ebc42f1edb291f80e692'], + }), + ('rtracklayer', '1.64.0', { + 'checksums': ['6f8cbfd14ac9919c28778f8745f72ee6867a2fa2eed98bebdc1d632c43c64c40'], + }), + ('filelock', '1.0.3', { + 'checksums': ['2dcd0ec453f5ec4d96f69b0c472569d57d3c5f9956a82a48492ee02f12071137'], + }), + ('BiocFileCache', '2.12.0', { + 'checksums': ['2e716d10a27ecb677095144dd707273c534f8d1f11d248fed63aa45ea285664b'], + }), + ('biomaRt', '2.60.0', { + 'checksums': ['78e2ad6c877e2b38f12c07fffcf7ce3121423f5e1359a7ce37fa4daf67a3526f'], + }), + ('GenomicFeatures', '1.56.0', { + 'checksums': ['854d651450c227e9ba791e4424ad3905cc3096abaf8b2fb621c917bccb4b2de4'], + }), + ('bumphunter', '1.46.0', { + 'checksums': ['c8f0815529fd7cc8eb147894a1acca2b5ce8547b0636e77cbe65de9a1f686521'], + }), + ('multtest', '2.60.0', { + 'checksums': ['e4cb2c1a8bec46b6b097f67d828622fa2d2f21926cc3214f8d605f8e592ebb11'], + }), + ('scrime', '1.3.5', { + 'checksums': ['5d97d3e57d8eb30709340fe572746029fd139456d7a955421c4e3aa75d825578'], + }), + ('siggenes', '1.78.0', { + 'checksums': ['d53e262aed40e60c4de944583367f84065ca4ea284135e7a0af9378170839648'], + }), + ('DynDoc', '1.82.0', { + 'checksums': ['5a9e0a67e0b628336d687ca5a7b14a265960cd70b3d5cd8fddf5bc837d73929c'], + }), + ('NOISeq', '2.48.0', { + 'checksums': ['7fd5002ed01dd9371cb971cba591ae8f0ef89bb1b6e7adde9dc4a1f2e025f0aa'], + }), + ('Rgraphviz', '2.48.0', { + 'patches': ['Rgraphviz-2.28.0_fno-tree-vectorize.patch'], + 'checksums': [ + {'Rgraphviz_2.48.0.tar.gz': 'a5186c8834061f77da944f562d1561ee2e332942529f63ccf2781f8314392126'}, + {'Rgraphviz-2.28.0_fno-tree-vectorize.patch': + '15783e9daba6f63c8e655858468a99e9f4f088468dbe3b414825e5844cf6b4a9'}, + ], + }), + ('RNASeqPower', '1.44.0', { + 'checksums': ['41b9b5bb5d5cafa88ba92f8b1d4e57a4f5233d30f024214d97ef18224965614b'], + }), + ('annotate', '1.82.0', { + 'checksums': ['0e688a52c2234dc5e30032aa7633899b73840e8d123c05392814664e85c09aec'], + }), + ('GSEABase', '1.66.0', { + 'checksums': ['80e055587af68f40dfb8bd790fa79b5f374026c748e1bc5942f59d796b46cdde'], + }), + ('genefilter', '1.86.0', { + 'checksums': ['f956579624e4445e6c83e7d9655cb4f2c6481fa4682669ce057a85f5df96e74a'], + }), + ('Category', '2.70.0', { + 'checksums': ['9cb2c5ff698299d8d16eaf7c4150966f79650e652836227ba71b2f9d11345f5d'], + }), + ('GOstats', '2.70.0', { + 'checksums': ['9a99832199d42aa749167435d2c393973922613b665200e6757a626a51d6cfb7'], + }), + ('BSgenome', '1.72.0', { + 'checksums': ['98541684ea234a3c102338b4a4d055817d92a088b9e67ea88b6a339fa79a4bde'], + }), + ('VariantAnnotation', '1.50.0', { + 'checksums': ['e7b91042f123b6fbab0d9f84a1dae68e56a308886fe84fffd572c2622aa49b6a'], + }), + ('interactiveDisplayBase', '1.42.0', { + 'checksums': ['ebcb21c762d19262aecab0f8070a5c7cd695ed4c04335ee12628bf80ac590946'], + }), + ('BiocVersion', '3.19.1', { + 'checksums': ['b096e4e98c2000dcc3aaf2aa0628b1c7ecb2f68f7835071dd34bbf11061215fe'], + }), + ('AnnotationHub', '3.12.0', { + 'checksums': ['a138dc289305b598fa7c7ea732c1b5947a54bfd127fe7242b3da772147b042b5'], + }), + ('AnnotationFilter', '1.28.0', { + 'checksums': ['805c593c97cc38a1f52b429fd0c903fffd5cd98f7e40f9e4c23535427541b5e9'], + }), + ('ProtGenerics', '1.36.0', { + 'checksums': ['96ba5d3743bf140911350b45b1c0dd47eceeb9d9cc6f778baad0efa75f231140'], + }), + ('ensembldb', '2.28.0', { + 'checksums': ['8750dacf2b39d9c26fc0972bfd43cb6a18c1251e6000a7e768c0a784f9b30382'], + }), + ('biovizBase', '1.52.0', { + 'checksums': ['e79e81845d095a48ea2a994635fff3f9545f7cf0ee2d0fbcfbc7cbc6a5b46cc9'], + }), + ('txdbmaker', '1.0.0', { + 'checksums': ['b5b40f7832f23c16e0ae956400cb7ee7f5190000f246fc981c25ddccc8363d25'], + }), + ('OrganismDbi', '1.46.0', { + 'checksums': ['53824caa128dbbae0baee8a551c59c625e11818f7c45569aaf74d69bc530d0b1'], + }), + ('ggbio', '1.52.0', { + 'checksums': ['37ac8ba40da018bc7c4162198310b563dc878a3b26a107eabfe9f8af100cd03c'], + }), + ('geneplotter', '1.82.0', { + 'checksums': ['557a3f5b07f83b87509482a3677d380ab56df4a911781e25411d88cbf7c8f6a7'], + }), + ('DESeq2', '1.44.0', { + 'checksums': ['b6b1f0e1d1c626196220e8d8238a71bde6aa36e227b54461ffb01cb6fadcf1c8'], + }), + ('ReportingTools', '2.44.0', { + 'checksums': ['27d0fd4af8a36a2a2500016e910bcb99ec34cd521571665c95358e2d6433046f'], + }), + ('Glimma', '2.14.0', { + 'checksums': ['8afaeb8ec52790b8fbe2c3613414389f699a98e842cbe79672c08e9be3c0f9b4'], + }), + ('affycoretools', '1.76.0', { + 'checksums': ['dc49547685085c9cdc68e0865193388b978bdc0e284d6b23c8cd22e386452370'], + }), + ('TxDb.Hsapiens.UCSC.hg19.knownGene', '3.2.2', { + 'checksums': ['063de2b1174782a0b2b8ab7f04a0bdf3c43252cb67c685a9f8ef2b8e318352e9'], + }), + ('Homo.sapiens', '1.3.1', { + 'checksums': ['014809fc6ef6410be8dc1094c9cb083719f20d999065ae4bf388855be0913b94'], + }), + ('BSgenome.Hsapiens.UCSC.hg19', '1.4.3', { + 'checksums': ['5bfa65d7836449d9b30c356968497cdfaa98be48c4e329e71e8f8a120f3e9d1a'], + }), + ('AgiMicroRna', '2.54.0', { + 'checksums': ['427378b7d953a52da83a997592cd96a5a08c11f00b9ce810e90eb4d75ccfa8ae'], + }), + ('geneLenDataBase', '1.40.1', { + 'checksums': ['689efdfe8d896720a2d43162ea8d877f6cced7efa9c5a4b760f9bcfcb0060e31'], + }), + ('goseq', '1.56.0', { + 'checksums': ['f91ace836dc5a9e2a210e63657cadfea425f5501ee29e40461eb29f02f6b872d'], + }), + ('KEGGgraph', '1.64.0', { + 'checksums': ['e71a46e0d81999c3b473fc07fc1c5e7094b5ed4f26e55e7de14bbacaf7c2ce51'], + }), + ('GEOquery', '2.72.0', { + 'checksums': ['f4da8a7d18af93bd6916f7509c2faaab06792a3c796cc83d327a40444bda1e67'], + }), + ('mixOmics', '6.28.0', { + 'checksums': ['72f37405011a34e5a001c0feeb397488f334154a20ada9f08bde72f2a178ed0e'], + }), + ('Rhdf5lib', '1.26.0', { + 'patches': ['Rhdf5lib-1.20.0_fix_hardcoded_path_to_mv.patch'], + 'checksums': [ + {'Rhdf5lib_1.26.0.tar.gz': '4b3147da31b60c1f2b37db770059762862da7d28cab66d2aaf3799fcede89160'}, + {'Rhdf5lib-1.20.0_fix_hardcoded_path_to_mv.patch': + 'fd35fd20166aa67cf5fbc194861d9196a2220fd40057b0524722ecc3de4774e8'}, + ], + }), + ('rhdf5filters', '1.16.0', { + 'checksums': ['1df1452264bdb9057c682d6c5d90178046bdd34addd923c100b32c77c9b84e3b'], + }), + ('rhdf5', '2.48.0', { + 'checksums': ['9683e5b11da8bda62894f1fefd488490592ed6b739ac4954fa03735a3fb7cb20'], + }), + ('HDF5Array', '1.32.0', { + 'checksums': ['e11ad98c43a280d9a14efaf09921b35546c6f4cc67b3e246d531078e53fa1949'], + }), + ('sparseMatrixStats', '1.16.0', { + 'checksums': ['eed13a7335ef09168ece41481484a5e43c5281644d1e296af76d20a84d4e1312'], + }), + ('DelayedMatrixStats', '1.26.0', { + 'checksums': ['da8c23a5ab6328ce70ef2a9de7f48809b139b5956dbb27c34e86a0e080370eb3'], + }), + ('minfi', '1.50.0', { + 'checksums': ['32b6af0856e91f988224a1a353836fb83808c8052bc82a8f24f079d61a2764c2'], + }), + ('FDb.InfiniumMethylation.hg19', '2.2.0', { + 'checksums': ['605aa3643588a2f40a942fa760b92662060a0dfedb26b4e4cd6f1a78b703093f'], + }), + ('methylumi', '2.50.0', { + 'checksums': ['4a0ea9667c5ac2fd8469739490f2a5b2f0392e8689d666720501f9ed07e143d7'], + }), + ('lumi', '2.56.0', { + 'checksums': ['fe5faa1b13eb5a273cfbf55da2d12eae94cb693a90570381ee596e0f006f2713'], + }), + ('widgetTools', '1.82.0', { + 'checksums': ['1b9b1bf9e611519244f7c7674fc03b8e5625b55b189154f697b6d9ab5cfeda4e'], + }), + ('tkWidgets', '1.82.0', { + 'checksums': ['f4ebf026463b09f89c6e1c6e417ba5bda911a221e2627f20f0795503462e2d4c'], + }), + ('Mfuzz', '2.64.0', { + 'checksums': ['b0681da31f1f5cc19f9e6905e436ced2b9423df47a700ff81682e3f2d6305d03'], + }), + ('venn', '1.12', { + 'checksums': ['ed86b69bd99ceea93352a30699a0baba3fd8cdcde907a9476e92be202ad8721d'], + }), + ('maSigPro', '1.76.0', { + 'checksums': ['3e57ab4633fda25995e4dc0e443e8b57bceb2d1879cfa2db887949829eec65cd'], + }), + ('SPIA', '2.56.0', { + 'checksums': ['88683c83f5355a52d8402d216a34020545ca84317d9a12adc39007718b4fd32a'], + }), + ('Gviz', '1.48.0', { + 'checksums': ['17f80b8e6babc59150a04376d4fa7e7217c12bcf8bb80850fa29f56ff03c831f'], + }), + ('cummeRbund', '2.46.0', { + 'checksums': ['34a9184fc869277201315302d4d4b54ac889888e9d18919717e02b4e8210b541'], + }), + ('GenomicFiles', '1.40.0', { + 'checksums': ['d16cb66995e761aafe533564b80d0ce376c96ab3fdcb196f364b9ab7b12a16ac'], + }), + ('derfinderHelper', '1.38.0', { + 'checksums': ['416cbee2b98043f5d0507f9a79eec1dbb1d197a2abd515ab2accb8afb3e40605'], + }), + ('derfinder', '1.38.0', { + 'checksums': ['31d0ef6e605946d8cd65448c339f6f8fe4d216a2b204f2f564f623b0381095c4'], + }), + ('polyester', '1.39.0', { + 'checksums': ['7d3c5cb370103df7a0d6470200f41cc3ba9ed19a11fbab7d26583ebf2ac4803b'], + }), + ('Rsubread', '2.18.0', { + 'checksums': ['cfdd2848a54098ae9748869f75b4631290b9d7730174cc4772b7eb066658a559'], + }), + ('pcaMethods', '1.96.0', { + 'checksums': ['f15662bdd30fa86cde65a7a2bc17cbc271a80cca4953133d2c89867c6b0738c3'], + }), + ('marray', '1.82.0', { + 'checksums': ['1e742111e2d7e3dfdf40f21591089939bd867ee37de79a994fa6a925125626c1'], + }), + ('CGHbase', '1.64.0', { + 'checksums': ['f3eff2a421b065a6945eefce5179a39a2372378e74bb9b4cfdd06d379b4be3bb'], + }), + ('Wrench', '1.22.0', { + 'checksums': ['87ee979194e17814eefaa6594d9453d7b8688e5f2bab908d616868769fc28bdb'], + }), + ('lpsymphony', '1.32.0', { + 'checksums': ['e15601377a7dbd47dafeadfe22203858cc77b6ec6fec60e04d68cc520caf92f1'], + }), + ('IHW', '1.32.0', { + 'checksums': ['46071fbf7a98644049d4d160acbf05e31fe0e376145e2fb7ff1fe57fa177f948'], + }), + ('metagenomeSeq', '1.46.0', { + 'checksums': ['d30829dae478914884252f3a0a903b174c5c2186b96cf98c049b02fd168f4b2e'], + }), + ('gdsfmt', '1.40.0', { + 'checksums': ['275595c55e959234e3f80fa565c1dcc333e308b697466962d7b5028002366aea'], + }), + ('SNPRelate', '1.38.0', { + 'checksums': ['ae7c666147e00c6a417fb735b2ca31b907727d0e59a09e67bd7e4265f74ed37e'], + }), + ('biomformat', '1.32.0', { + 'checksums': ['ebdfa810c311afb2f72cbdd13a5fc957f93b63530136b74dea6a0c74ab05da4b'], + }), + ('phyloseq', '1.48.0', { + 'checksums': ['7131f8be736a7879c3bfb4e2cbf6f2161a7d07782bbdbec64847778619271829'], + }), + ('NADA', '1.6-1.1', { + 'checksums': ['670ff6595ba074ed0a930b7a09624d5ef20616379a20e768c1a7b37332aee44a'], + }), + ('zCompositions', '1.5.0-4', { + 'checksums': ['73188e1e065a042723ed7a48df04e22317b204222d40744b83e8c392aae16aaf'], + }), + ('RcppZiggurat', '0.1.6', { + 'checksums': ['9c78255ca476c945c05a564d1e4da363de714d890e0e27f3b252fd73c50eed71'], + }), + ('Rfast', '2.1.0', { + 'checksums': ['f9e46cac99db756cd49c9cd83be8adc0d381e6c03102389bfdcb8258d02418ff'], + }), + ('directlabels', '2024.1.21', { + 'checksums': ['bb3ba484ff9486fd8e9ce65073b69ce38e42f1fab2f42822eecfec7823f6b6fe'], + }), + ('ALDEx2', '1.36.0', { + 'checksums': ['7ec4afcf6be7b369aad32a81e02d7b12b0d98643a691529be052f9b5469a17af'], + }), + ('dada2', '1.32.0', { + 'checksums': ['eb2c84383a0c9109d858d8e8d982c96a60dc8db6b5c93de2c5f557b6cab280a9'], + }), + ('LEA', '3.16.0', { + 'patches': ['LEA-3.0.0_support_aarch64_and_ppc64le.patch'], + 'checksums': [ + {'LEA_3.16.0.tar.gz': 'd51945ec3f0b3d724165f0da18153cd90f1764d6a42f17715dd09d339991d664'}, + {'LEA-3.0.0_support_aarch64_and_ppc64le.patch': + 'caeaae7aa0577540bc9c03b54ce5a0fe4ff1a28ac503106e2b3acd1b9db82881'}, + ], + }), + ('tximport', '1.32.0', { + 'checksums': ['6607361be244ae3000ffa6f2217b85256e57cb77ebf5e476e4e6a459c08a5e71'], + }), + ('SingleCellExperiment', '1.26.0', { + 'checksums': ['76e080bbed5634caf152a02799d722750ede9ecf2b97bd9743bd949732984b27'], + }), + ('beachmat', '2.20.0', { + 'checksums': ['deec903046f14e656a92076e4c7bdf1c1ecdb456d942e83d661ac52a78fa7d3f'], + }), + ('RcppAnnoy', '0.0.22', { + 'checksums': ['9f2121d787c4d3e7beccdd65f5d1de81f31c99d57d5d61ca3cc5af7169dd8f65'], + }), + ('RcppHNSW', '0.6.0', { + 'checksums': ['a5a6ed00a84143aa62aa67df66fcccae657d5db0a1f9bb4b955a8e94c2ff580f'], + }), + ('BiocNeighbors', '1.22.0', { + 'checksums': ['2d727fa9e983afd7ff268eef5f6692846e44b50c7248868f98d51b4034232fcf'], + }), + ('rsvd', '1.0.5', { + 'checksums': ['e40686b869acd4f71fdb1e8e7a6c64cd6792fc9d52a78f9e559a7176ab84e21e'], + }), + ('ScaledMatrix', '1.12.0', { + 'checksums': ['f15ea729ef6162a68c437d887d40981aa7f0d613ac777a727e3e0c7d6db9da30'], + }), + ('BiocSingular', '1.20.0', { + 'checksums': ['5ef96e2b745641e3a87429558d57e79d7417c115f8a3459fe47e48aa87e589f6'], + }), + ('scuttle', '1.14.0', { + 'checksums': ['9a0f97f30de69a7f4912f781f110fc54303702dc5df526410f71175fa6294ab2'], + }), + ('RcppML', '0.3.7', { + 'checksums': ['325c6515085527eb9123cc5e87e028547065771ed4d623048f41886ae28908c6'], + }), + ('sitmo', '2.0.2', { + 'checksums': ['448ef8d56e36783354011845daf33f1efb83ea3b9685eea75eaf5134e24fa8c2'], + }), + ('dqrng', '0.4.1', { + 'checksums': ['3d9df935020c3c2538bc712456079925c4b379d67407c83fbc008340e353288f'], + }), + ('uwot', '0.2.2', { + 'checksums': ['d9938c43d29530d4b36d1b2649cc679b09945a740db2cd3a266242b1aa9a6cd1'], + }), + ('ggrastr', '1.0.2', { + 'checksums': ['cb27406dca99cea6440adf6edb7eb53141b60322452f5a5d4409e36516ad20d1'], + }), + ('scater', '1.32.0', { + 'checksums': ['38ca230af45593033d10a9b7f21b4f5a759beddb26fae9af8027265526cfcc24'], + }), + ('bluster', '1.14.0', { + 'checksums': ['8a7b1818ca21442a1d1166f82e248e8eab5d02c21557d69fd87971db44e747ae'], + }), + ('metapod', '1.12.0', { + 'checksums': ['16b9a417ec3bcb68a18e859f24e6ba1b3764892d53af32fbc9c980e3c5d31c80'], + }), + ('scran', '1.32.0', { + 'checksums': ['4129cc3487c32e184edfa75133de244c5b96661d24eb7211ecdca4b209163e68'], + }), + ('SC3', '1.32.0', { + 'checksums': ['d9ead64f1b2ab75aec2487db9b4195905e5c59e6bf40557478c7572ce599977a'], + }), + ('ComplexHeatmap', '2.20.0', { + 'checksums': ['1bed53e570d491a6d5d7b6565d37c816f074d820f9bdd8c5876d6f0b0aeaffde'], + }), + ('GENIE3', '1.26.0', { + 'checksums': ['8f05b94ed052fe11b177919276095c88a4e8071b868d2344d10a2b2d48f75c46'], + }), + ('dupRadar', '1.34.0', { + 'checksums': ['b2b3179e153513b74f55788c283a94aa02ae30061c05806cd8f9568cc71ea071'], + }), + ('DNAcopy', '1.78.0', { + 'checksums': ['b45f09b751ffff9f65737b89f6ff041dfc01c9f2ed552fa7ab2ced6856369ae0'], + }), + ('sva', '3.52.0', { + 'checksums': ['7f3ca65871666e4d1a41e997b0ae2932bb2037bb03092a3b33a615574942381e'], + }), + ('ballgown', '2.36.0', { + 'checksums': ['3b4965a6e33830631a07df7bc8a1508b84d716844cb8afc159f546e0f0da6a74'], + }), + ('DropletUtils', '1.24.0', { + 'checksums': ['8fce3364079e446fc0fedd61fb3dfe0b0323515f756fff64b05a80182d43c807'], + }), + ('DeconRNASeq', '1.46.0', { + 'checksums': ['2fa0a09948d34b22fdfdf3149e7c2d55fcc8bc481198bfed8053354498769b43'], + }), + ('SpatialExperiment', '1.14.0', { + 'checksums': ['99d4de41a441f9adbcb0a1ed8796c8af722d791035b0ba2e5b91696ef4570438'], + }), + ('GSVA', '1.52.3', { + 'checksums': ['64223ed3c067ad4e586621a0283664f46446f007cbe472927bc58232f078dd22'], + }), + ('PureCN', '2.10.0', { + 'checksums': ['6e599102c314a3fbf2085c97f4e74f600d9bd58de6195bd5fa146f0b12dddcef'], + }), + ('globaltest', '5.58.0', { + 'checksums': ['85242a695aab61081a39a75bff818ecc783d21dc78cd6b808e2ba6cb64d0fbb2'], + }), + ('GlobalAncova', '4.22.0', { + 'checksums': ['10af604e16b124e4be81f568fc4885face40bbdb4a11d42198801c4f6051e17c'], + }), + ('vsn', '3.72.0', { + 'checksums': ['15b96f588284cdc966bb5c57eab21a9838c962574e07efdb279d76d2446acce4'], + }), + ('mzID', '1.42.0', { + 'checksums': ['4536c5e31a94f81796bea5c52cfe7e356821dc08f93162223671c3013fd7094e'], + }), + ('mzR', '2.38.0', { + 'checksums': ['b30140c44ff74872359d7fff40fded93159c20323cdc6851fa3e276dfb10bf09'], + }), + ('MsCoreUtils', '1.16.0', { + 'checksums': ['8aa0d960ce488c83d7c644ccd519fed832387e09369edb74d6dfdc41e4c2a6a2'], + }), + ('BiocBaseUtils', '1.6.0', { + 'checksums': ['a4d8aa652a1ab929cd66172b315d2fb79e489f06a2ddbdb4288a76132ffc0b39'], + }), + ('MultiAssayExperiment', '1.30.2', { + 'checksums': ['5ffa2a920e8d3f247d1b2d2523c482c6ad5edb554e32e2b404ae8b4f01c5e4c8'], + }), + ('QFeatures', '1.14.1', { + 'checksums': ['a8250c5e5885d440d0a5a707805113cba7421187c727425e5ef18fa6dc52fbe9'], + }), + ('PSMatch', '1.8.0', { + 'checksums': ['708056aec441ab0e52c9e47f09e4ea91d15c07c406378c451a25b5a16321818f'], + }), + ('MSnbase', '2.30.1', { + 'checksums': ['ce5c78305083a0657210351095dac9f057dbf29f73c02c3a8240c22dab88bb31'], + }), + ('MassSpecWavelet', '1.70.0', { + 'checksums': ['426a6dfa39f95fbfca9f04f940ac67b7dbe0c70493e7471533bf4c06a0b27b32'], + }), + ('MsFeatures', '1.12.0', { + 'checksums': ['6abea027683a04f32f3ac6f8dc34f204a90238f035ea8bd048463245772136df'], + }), + ('MetaboCoreUtils', '1.12.0', { + 'checksums': ['04640049d68077124cdab054c5a6c48bf8d13ebda5c686a8ee9b5d607ac0b4f8'], + }), + ('Spectra', '1.14.1', { + 'checksums': ['54a1cba7a5e664685867bf3e864b3fc9b6c59f1f8da55d7fce6a1f7b5ab36e57'], + }), + ('MsExperiment', '1.6.0', { + 'checksums': ['cd8092c88876873eb025fa0b0c6e3ed10879c3006cdc8cf738314855b81cbb37'], + }), + ('xcms', '4.2.2', { + 'checksums': ['9e1c8f0c283cbaed63a87d40618df04bbc09859a723f9b817487804129a169fe'], + }), + ('CAMERA', '1.60.0', { + 'checksums': ['843476e9fd99a06444f8ba8d1a00bc76357cc96aec6431672fabfd7da28391f1'], + }), + ('fgsea', '1.30.0', { + 'checksums': ['5efa96dd094a5ee6f464f38c49c6d9c03f495c9a94228e912f900899bdc6db5a'], + }), + ('GWASExactHW', '1.2', { + 'checksums': ['d3137a478338f03de52b75b3eb1b9cce135c82b81ed39fde692b1e0157ddecf7'], + }), + ('quantsmooth', '1.70.0', { + 'checksums': ['ec1d0c5271edd34a9719222c098d86dbfcc919030026e2074d62110930ccedd5'], + }), + ('GWASTools', '1.50.0', { + 'checksums': ['84db4b6f555a88585d64ef4c8c423ed8e1d808fe7c8994760e1a24a6b8d87804'], + }), + ('SeqArray', '1.44.0', { + 'checksums': ['13a1b9b44dd66e6e4141ae089f2c9f762bdbf9090c6ac14186113963fc3108bd'], + }), + ('SeqVarTools', '1.42.0', { + 'checksums': ['fe5d89902b14e86cdb439502396bc38275dae6319b1e0f5dd8c196548258a3d7'], + }), + ('GENESIS', '2.34.0', { + 'checksums': ['998cd2df615dbb1d6beb3482c4d68c229bca1daa7ca2d297ea56ec8102af60ca'], + }), + ('MLInterfaces', '1.84.0', { + 'checksums': ['f6628090dcbe5eb440c0f03a521bc72b828db066a9d0cc9dd8dffe5cd6a40cd5'], + }), + ('pRoloc', '1.44.1', { + 'checksums': ['ff5f59eef3447f96ff27afb377657aed7de28af57a8ac97686857d8cc0007527'], + }), + ('pRolocdata', '1.42.0', { + 'checksums': ['4da950b0f8eca905c5cfe1bfe27394c086334276170079f0953f3bf1b2462c37'], + }), + ('fresh', '0.2.0', { + 'checksums': ['a92db254ae88e8371efac44efe2cf1f5be7cce62291fdf994ebd68c14dad079d'], + }), + ('waiter', '0.2.5', { + 'checksums': ['9ac25e979db9242598bd0492ff862360009b51ce672184ec9f4eeb2232164979'], + }), + ('shinydashboardPlus', '2.0.4', { + 'checksums': ['b87cd038ed94235d6210a434d1fa80abac3ecea47e01ad8d9892ec4023ea9385'], + }), + ('shinyhelper', '0.3.2', { + 'checksums': ['f7ed62543ab4d05a34b69a9183517a09e93e1b2da85b113282de0f9982db90b0'], + }), + ('anytime', '0.3.9', { + 'checksums': ['1096c15249ac70997a8a41c37eeb2a6d38530621abeae05d3dcd96a8acc7574a'], + }), + ('shinyWidgets', '0.8.6', { + 'checksums': ['863c245891953795c50f3998d5b17335c5f2a0de9fe902ec6081f53c2e5f60b7'], + }), + ('pRolocGUI', '2.14.0', { + 'checksums': ['0859266cedc16d48d53f46b7f1f502fdd6372ea71047d7aaf3ea9f0e05dcb653'], + }), + ('EBImage', '4.46.0', { + 'checksums': ['5c343d8f0438bc9e1d317e9d8f1300ef4af86e1a8f1c783d9099d34493754a61'], + }), + ('GenomicScores', '2.16.0', { + 'checksums': ['2a9e929c00706bdd18741413304f4bed0107b1dc26cb961363a14a91595c4a87'], + }), + ('BSgenome.Mmusculus.UCSC.mm10', '1.4.3', { + 'checksums': ['dcf602bf9fadf1ef4ce70e0c0fc92b6435467df5affe7d0872d88a93b99ff9ee'], + }), + ('TxDb.Mmusculus.UCSC.mm10.knownGene', '3.10.0', { + 'checksums': ['696281749d01737c94894564d62093433045bc007a4528cc3d94f205edb54977'], + }), + ('regioneR', '1.36.0', { + 'checksums': ['2bef2e8c0d08e9bc092123a485aec22d7e1fe21de81c221aaec5040737a6edf9'], + }), + ('InteractionSet', '1.32.0', { + 'checksums': ['1a06acb7baab7846de9fa437c0f9634453ba2a86495eefab9eb0e6673eac7346'], + }), + ('universalmotif', '1.22.0', { + 'checksums': ['fed7c59661771c859e093f9a51668468df773e1af0e3e40abec85c3a56ac5acd'], + }), + ('ChIPpeakAnno', '3.38.0', { + 'checksums': ['f4e5b298a7c8a6df79c1a02291aecf20bcba400a4e343541e8a3f790de28f7bc'], + }), + ('seqLogo', '1.70.0', { + 'checksums': ['397e7f06b2c5074eb53d4370bf4d13678cec296a844b3e378ada6a13c91b8c94'], + }), + ('rGADEM', '2.52.0', { + 'checksums': ['cace9996ff0b67fa5b5b640e5eac1e11ecd1c9eeb32e4f0e089edc20bb753bb4'], + }), + ('MotifDb', '1.46.0', { + 'checksums': ['707d54cd3bee0064c8ff5ea473cf98f4a5805d0d20a4977e2fc200f49e391ed5'], + }), + ('poweRlaw', '0.80.0', { + 'checksums': ['713556af1f47e1de749670d08f963688908cfa80e9dfda590efd1a28441772cb'], + }), + ('CNEr', '1.40.0', { + 'checksums': ['5b1b172b23847768ff56f1d823634b02797ccf0ad1487df9b261d18fee816ea6'], + }), + ('DirichletMultinomial', '1.46.0', { + 'checksums': ['0b7f0d48ac584d1f50ab89ab928b7ef40cc577c6d317514d9653136737414d36'], + }), + ('TFMPvalue', '0.0.9', { + 'checksums': ['b9db56e75e2cee840d8b7861686dec07ee2c40cbc7d55361e5d04f1bf0c65de7'], + }), + ('TFBSTools', '1.42.0', { + 'checksums': ['505bc906a725f0093ce833f06a29ef317cb2818e737aea725ba984d3ebd3b52e'], + }), + ('motifStack', '1.48.0', { + 'checksums': ['72ea38e4e05695e4bb92433a6d0a61868a7856623f5f15026191bc0954f86497'], + }), + ('ATACseqQC', '1.28.0', { + 'checksums': ['beea902891ff101d81bb71a2f00626b864b948ce446f0b81aab41b08ff6d2c52'], + }), + ('ResidualMatrix', '1.14.0', { + 'checksums': ['f63df941d0df726562ead6d3b8ff87e65c728cbaf6ca4ea615028353e8ff47e0'], + }), + ('batchelor', '1.20.0', { + 'checksums': ['80661ba295afddc1cd9b95a7b97994d71a979a07018f3f936c36840341cde0c0'], + }), + ('gsmoothr', '0.1.7', { + 'checksums': ['b75ffd2a4a0f357762e02e46e355b45cc90ea637830f0a1b01f216bb4541e903'], + }), + ('R.devices', '2.17.2', { + 'checksums': ['403eeaf552dd696142096973dee3460dc52c19b73fd194841dd4638e2bdcec95'], + }), + ('R.filesets', '2.15.1', { + 'checksums': ['08f5e9269b4f5ffb86f9a369fba792d864240d5f5c02dab435007b53ee989de3'], + }), + ('aroma.light', '3.34.0', { + 'checksums': ['9fef7be410af21d4a02217f3f459168147d9f745fbe7f909e1576a3b075944ec'], + }), + ('PSCBS', '0.67.0', { + 'checksums': ['2695d18d197a3bd729cca0940248ddc1880e4f54da95b9ecc5eda002a715cdbe'], + }), + ('aroma.core', '3.3.1', { + 'checksums': ['fa26bca509750eb44e85cae2d78b03870c003d4f7e0360977e924a7838805e44'], + }), + ('R.huge', '0.10.1', { + 'checksums': ['05cb1edaaa0ad120c2946a80405c8c8da6a778873f08ff203391452527786ce8'], + }), + ('aroma.apd', '0.7.0', { + 'checksums': ['9d60ead247edb7bf8d172f14881222adda0893a693f997b0da00c29cfd37d1f6'], + }), + ('aroma.affymetrix', '3.2.2', { + 'checksums': ['18e1c9479e3e41bdfff06769d0ff2d85fcae16042cfd0eefa4dbcd0c4f3c9c40'], + }), + ('Repitools', '1.50.0', { + 'checksums': ['2fbd368ccfaeac7b5e8665ec3f780c6d1eafff0b2bb1f1bd42b2dc79228ff1fa'], + }), + ('BSgenome.Hsapiens.UCSC.hg38', '1.4.5', { + 'checksums': ['b49277e4fd955be76571f187630993b02a459c7c5b69ef62a01a75dd5226e952'], + }), + ('MEDIPS', '1.56.0', { + 'checksums': ['988719a4130d7df5031fae9796b2c8b6b51705cd086c7a888d4bbda12be96453'], + }), + ('RProtoBufLib', '2.16.0', { + 'patches': ['RProtoBufLib-2.8.0_fix-protobuf-build.patch'], + 'checksums': [ + {'RProtoBufLib_2.16.0.tar.gz': 'e98f91b14ecebaa4e8a8a13537ad41e1ad3f27dbef4f408497d4ce28e82017ee'}, + {'RProtoBufLib-2.8.0_fix-protobuf-build.patch': + '8775d74e2288000c57575f4ef45a875b4a377ac02f89efa947699ea786bedf64'}, + ], + }), + ('cytolib', '2.16.0', { + 'checksums': ['381aafeb1bc6cfd9e22c66d547ea1bdf6fa005a171448dca7624c2284542325b'], + }), + ('flowCore', '2.16.0', { + 'checksums': ['d62d608e552db755e033145014e3f49e73dcdcf3d58192116934cd5fafc703ff'], + }), + ('mutoss', '0.1-13', { + 'checksums': ['b60f6fcdce44dc60c7d34c6510047f756f1442366a3566661b22aae12f4ff141'], + }), + ('qqconf', '1.3.2', { + 'checksums': ['9405d627adf9447a003e14dac43701ea3e03ee73244038aa4a6e3dd324dd8ea3'], + }), + ('metap', '1.10', { + 'checksums': ['fd57804c9ebd4c01232e5a9db50699a5a930993f30100e63bbe09567043088a2'], + }), + ('scattermore', '1.2', { + 'checksums': ['5534a87b0bdd1375f0fbffc1a5c980ad64e33a108435a67469b8324b580602d1'], + }), + ('SeuratObject', '5.0.2', { + 'checksums': ['ded30d21f445b7e353fe4a0c4954d45ad19fbe162615d9addf6732f9318ba0cf'], + }), + ('Seurat', '5.1.0', { + 'checksums': ['adcfb43d7a8cc55eaa7a0954a082ac95e14059a82901913379bfec115e224d59'], + }), + ('ALL', '1.46.0', { + 'checksums': ['0a660bf324dadfe32e3b75cbe76857a425db13f6d0461e37e9338588305a88fa'], + }), + ('ConsensusClusterPlus', '1.68.0', { + 'checksums': ['2efad4804e9ed6661a30643d1744e1d1b524a965629002ca6ccaaf61c39f2179'], + }), + ('flowViz', '1.68.0', { + 'checksums': ['f2ff410723412bbf079482b95bd3bce9d6141ca55db9998a124f22a3ddd4e4c7'], + }), + ('ncdfFlow', '2.50.0', { + 'checksums': ['965dba9526063e45afaf305a16836acfbae48a13fa445496839f760b521878d5'], + }), + ('aws.signature', '0.6.0', { + 'checksums': ['f7fe4f686979be21e5a8ba7ae11f0fade4f5aaf4e98063b5349ee0962dbb9496'], + }), + ('aws.s3', '0.3.21', { + 'checksums': ['bd21054ab63555d294e7465dcb6c86f107db52ba841aeac5bdf4d00af0674c8c'], + }), + ('flowWorkspace', '4.16.0', { + 'checksums': ['bf83489eda881fd2c591bc2a270e4876fee34d0bee0d9478ec606bf25c84424c'], + }), + ('ash', '1.0-15', { + 'checksums': ['8b0a7bc39dd0ce2172f09edc5b5e029347d041a4d508bbff3f3fd6f69450c2ab'], + }), + ('hdrcde', '3.4', { + 'checksums': ['4341c6a021da46dcae3b1ef6d580e84dcf625c2b2139f537d0c26ec90899149b'], + }), + ('rainbow', '3.8', { + 'checksums': ['eca456288b70fe4b6c74a587d8624d3b36d67f8f9ffc13320eefb17a952d823d'], + }), + ('fds', '1.8', { + 'checksums': ['203a5e7671e542dcb83d4c75d0f4012aaebc32d54f94657afaf9e71e99dd0489'], + }), + ('fda', '6.1.8', { + 'checksums': ['ef8d858a2879491aa2c441d171ba14462bf27852d16e8420fa49aab83f42c407'], + }), + ('flowStats', '4.16.0', { + 'checksums': ['db48062ef4489fc7c4a74d730e39bee7cbcf34251bfa61567636c255b11e0f61'], + }), + ('flowClust', '3.42.0', { + 'installopts': "--configure-args='--with-gsl=${EBROOTGSL} --enable-bundled-gsl=false'", + 'checksums': ['cd6ea594f5cdb962b054b5fda12e49a28a7af24377cff4203d726d0b82fd52fe'], + }), + ('openCyto', '2.16.1', { + 'checksums': ['940a8708a815998b31b3e192bc4ccf03e3161b3a17afb39f0cf4163aea96cd8e'], + }), + ('ggcyto', '1.32.0', { + 'checksums': ['350b154dca9d91a70bce97cd44f8fb37c36ce57525bc2f2993c30b49fd758c7c'], + }), + ('CytoML', '2.16.0', { + 'checksums': ['791e4bcf3a91354c7ea50afeac1e4ec6170a49bb2f8b6ea8ec8742e547a76e86'], + }), + ('colorRamps', '2.3.4', { + 'checksums': ['3cdf311123ea1924ee1446b9b5bd7aa3282ca00addb6e7181f98578eb6b18ff8'], + }), + ('ggnewscale', '0.4.10', { + 'checksums': ['9fd61539674d056c7b18d6d6014604ba534c710bcd8c05c77590368845280dc9'], + }), + ('ggpointdensity', '0.1.0', { + 'checksums': ['3ea646cf183c8bf7869b122a4ee972b53709056ff443ea71551b823524092a31'], + }), + ('FlowSOM', '2.12.0', { + 'checksums': ['3ad6ae2bb1192d971997551b0cea3ae95d8ab2b8b535e3fedf17804b50b81977'], + }), + ('HMMcopy', '1.46.0', { + 'checksums': ['46808647373e1152e0cf4d30ba4235e1cc0e17dbe1435e597b0ef7b9492456c4'], + }), + ('diffcyt', '1.24.0', { + 'checksums': ['2117cda90702f9c035949ad085f1b0f0ceae7f6084b4a953d0a5c8f2acdad8c7'], + }), + ('blme', '1.0-5', { + 'checksums': ['679a4f19d34a584c2390ffab37810a31f6834b913fceaa2409d297ccdf912310'], + }), + ('remaCor', '0.0.18', { + 'checksums': ['57e4ffba44392f300525b18db36a44437a6fafce38a06eff065f5482e4171631'], + }), + ('fANCOVA', '0.6-1', { + 'checksums': ['c3ea3640d9a87abbfeae713141d606ece93bc88b9952f41a37b3f1fbe802bc12'], + }), + ('variancePartition', '1.34.0', { + 'checksums': ['c9564c6731bc51d688bac4f795574415aaf94150d62c95fd814e16d0ef8f1902'], + }), + ('muscat', '1.18.0', { + 'checksums': ['f105ef9ccbf35853b21e25215892923fb54e2b9a10ddf11f126e247307664ebd'], + }), + ('IlluminaHumanMethylation450kmanifest', '0.4.0', { + 'checksums': ['41b2e54bac3feafc7646fe40bce3aa2b92c10871b0a13657c5736517792fa763'], + }), + ('IlluminaHumanMethylationEPICmanifest', '0.3.0', { + 'checksums': ['e39a69d98486cec981e97c56f45bbe47d2ccb5bbb66a1b16fa0685575493902a'], + }), + ('IlluminaHumanMethylation450kanno.ilmn12.hg19', '0.6.1', { + 'checksums': ['3627d75a6303f4d307fa6daf0c5afd57649c60a268b3d4be7e8ac8edc4b1e288'], + }), + ('IlluminaHumanMethylationEPICanno.ilm10b2.hg19', '0.6.0', { + 'checksums': ['4decdbc78a6a8d02bf8aecb0d6e1d81134ae9dbc2375add52574f07829e8cd69'], + }), + ('IlluminaHumanMethylationEPICanno.ilm10b4.hg19', '0.6.0', { + 'checksums': ['2c8128126b63e7fa805a5f3b02449367dca9c3be3eb5f6300acc718826590719'], + }), + ('conumee', '1.38.0', { + 'checksums': ['5581c863812d7730c06cc1a7587d91e98ebf6a4c25d78070236f55fb3af9487b'], + }), + ('BSgenome.Cfamiliaris.UCSC.canFam3', '1.4.0', { + 'checksums': ['99c55b6f7808822a3dae6679e60ecfb88a2b618159484bc35303c000bd4820c7'], + }), + ('ExperimentHub', '2.12.0', { + 'checksums': ['1081ac5bc7bb90dd5a257b0ef52024a978ed65a46972076ab195a0eb3b564156'], + }), + ('SingleR', '2.6.0', { + 'checksums': ['26605843ba9e6d5c916008349e99c6a0437813827047fa217147ba1fa25e6350'], + }), + ('FlowSorted.Blood.EPIC', '2.8.0', { + 'checksums': ['7037d68a13befd81389d6915c4b5c21f383178b462efb04d44e08949b5ff0aac'], + }), + ('FlowSorted.CordBloodCombined.450k', '1.20.0', { + 'checksums': ['7be9c60cba470938a8e68b7c1f5049f1f4522f8cc33fed6295410ecdc8368890'], + }), + ('DRIMSeq', '1.32.0', { + 'checksums': ['bda8198b730f5c45eeba25de163c1bf8c4a51e63ada544c20d77a73cece85383'], + }), + ('stageR', '1.26.0', { + 'checksums': ['706d4c7805fd3c967cc19b31b3859acca73f7f9fdfc37f0bfe0de114c5e6d22b'], + }), + ('isva', '1.9', { + 'checksums': ['9fd016e0b34034d271d45f8a0d0db62780bf0187112e45f610aa9237014e1d17'], + }), + ('org.Mm.eg.db', '3.19.1', { + 'checksums': ['47cee87aff4ccb7879eb33a50839f45578ee99acb8aff6bbfb78f7655ca6a889'], + }), + ('org.Rn.eg.db', '3.19.1', { + 'checksums': ['76e29f7d3e99c4cba0738514c373136dc245efaff053a245fcad49220516042f'], + }), + ('ROC', '1.80.0', { + 'checksums': ['cb83c39a6c3d0075f85aa59bce06915f23199133e5dd1f278323fb069e348c1c'], + }), + ('wateRmelon', '2.10.0', { + 'checksums': ['3bfcab486704bca8253fd39015016ed2aab9484a9c5a2607969a52fa54daf4a7'], + }), + ('GLAD', '2.68.0', { + 'checksums': ['2167c37a552dcde5804bda5bec6e30483d8ac8ab5fda007e1bc3acb3ce261607'], + }), + ('missMethyl', '1.38.0', { + 'checksums': ['3c4addab6ac17add59fcfa6964195144aa713cfded6d8bdb258d3e6af651d83a'], + }), + ('MethylSeekR', '1.44.0', { + 'checksums': ['a5fdcbc6a41e787839a54c5a293b6031a2876b244f42d2c9b946905f1aa86381'], + }), + ('affxparser', '1.76.0', { + 'checksums': ['626298d9c5235b780ecfe7fb6ef289cbdc466d9e125a9006ade28531b0160c63'], + }), + ('ccdata', '1.30.0', { + 'checksums': ['43ea7ee335b0b0a00a125c175beba49bb7e0ba1f3ea82758b897bb98d36ce760'], + }), + ('lsa', '0.73.3', { + 'checksums': ['f07f1159f215501495d7a077911e7ed2ac61e1705899f3be3a5cf9012778619a'], + }), + ('ccmap', '1.30.0', { + 'checksums': ['861b9bedeb60336520efdcbfac96d2dc1be39288e3ec54f6c31f2bbef3f8c09a'], + }), + ('oligo', '1.68.2', { + 'checksums': ['c7a0be101a56554a9fc57d8114257fd8da17fa8b1147fb1c90ceecf232590632'], + }), + ('SMVar', '1.3.4', { + 'checksums': ['aaea3ef7da6cee1bb86fef166df766229c8b7cac9fcf5bc28da7adff5e2c01d6'], + }), + ('metaMA', '3.1.3', { + 'checksums': ['3a0c0351b83419984095cb2c1d77d222d1cdb7158dd8c80fc384bf175ab9358e'], + }), + ('randomcoloR', '1.1.0.1', { + 'checksums': ['cbae51a47a92b2cc3d5ab48877818404429fb73fc795430ec622a8dff20f1067'], + }), + ('shinyBS', '0.61.1', { + 'checksums': ['0aed72473060531d0e782ba62092493002137df6b251af9e2294e2a40a32a140'], + }), + ('shinypanel', '0.1.5', { + 'checksums': ['3264a5a75a306881e6a1622413298d7f3cda3dc78f54446171925774bab97a00'], + }), + ('crossmeta', '1.30.0', { + 'checksums': ['ca19a9fabcb6075aecb7648365954f4844e0402991dee81b8577d01cfc720fbe'], + }), + ('snpStats', '1.54.0', { + 'checksums': ['03d858ea1e808d074a35140053a3bf44ab1b1fee5018d1418a09ede3dba01798'], + }), + ('mixsqp', '0.3-54', { + 'checksums': ['f7d0de918a221c58b3618dc3290a0ebe052256999ee3be35a19384f26b1dfb8e'], + }), + ('susieR', '0.12.35', { + 'checksums': ['ede62644fbbeb5e534e4d049638a990f8e2ffcf54f9c67054c9a5038e9600d3a'], + }), + ('coloc', '5.2.3', { + 'checksums': ['259dbd9613d809aa60ad148f6e187249642510f0dbbd15a50b25588d9a426150'], + }), + ('SCANVIS', '1.18.0', { + 'checksums': ['f7cc6089b4ea7a7a747e1e62b9ddf2006f5b60d31736af7a820f8fbb4af4dc5b'], + }), + ('EnsDb.Hsapiens.v86', '2.99.0', { + 'checksums': ['552c07bcc2a1420089d4330deafaeb5303e03d0fa75c96b78075dfd67eeee7be'], + }), + ('agricolae', '1.3-7', { + 'checksums': ['c5ade90ee23299de1d20e93406d9f4cb39bd92c51094e29306ec74baa1b34a7d'], + }), + ('bookdown', '0.39', { + 'checksums': ['3577ad9e05adeac61770ca0a8057a6486407b917c9a2d0483b55244c41d92eaf'], + }), + ('BiocStyle', '2.32.1', { + 'checksums': ['79ceb7377b7fa27ad4f9c7de99034682c89e44afa857730a37e22052aab016d4'], + }), + ('ggdendro', '0.2.0', { + 'checksums': ['1940c34ddb30083a4c3bc3be98b6b466dcc78e03ac22a32088744db8bff7aa69'], + }), + ('pmp', '1.16.0', { + 'checksums': ['32c062e1b825b696c0956981014ad8d4152eb63596ca18aabff1db615ed8d267'], + }), + ('MultiDataSet', '1.32.0', { + 'checksums': ['1cfb18f3e1a5498e723677c4e9fe61e083b6a7106104ab658f9b8912b72e32f8'], + }), + ('ropls', '1.36.0', { + 'checksums': ['2154c3003759b03d3ee9bb11fc3a0c954a11611206363ca26b019abcf2e7b331'], + }), + ('ontologyIndex', '2.12', { + 'checksums': ['a8e5d67a5ef4acb099edcc0d4ee47aeb013557fafc7ee1c071c405f636f8c03d'], + }), + ('rols', '3.0.0', { + 'checksums': ['ad07add16abfcd82b204d3bbe1a9e1d378881b37f4c14473ec936eb5c1727712'], + }), + ('struct', '1.16.0', { + 'checksums': ['930682e8718f80d22b7fdb81119ad0bc572ee773497ccb7c6428725f6195ce20'], + }), + ('ggthemes', '5.1.0', { + 'checksums': ['074819acfe8bb2233426a0fef3bb448c5ce817bb14d517252fa05932e28bbd0e'], + }), + ('structToolbox', '1.16.0', { + 'checksums': ['84237c505f2e4724d3c9b64ba80b9055903b0938d5c99d6a307a3d6624df3029'], + }), + ('EnsDb.Hsapiens.v75', '2.99.0', { + 'checksums': ['2c59f95959f344b2a3eaa65a00086b01a420823e30b0810fc81e49b08dcba64b'], + }), + ('ggseqlogo', '0.2', { + 'checksums': ['1cbfd532032dd51316a1fa084bc8cdabe5517bc6ce7b3abafc0d94340e6736b7'], + }), + ('sparsesvd', '0.2-2', { + 'checksums': ['bb40cc69ee3aec28ff1418fd16cd76d953701a7b0d6bdcb0424c71793d96d836'], + }), + ('docopt', '0.7.1', { + 'checksums': ['9f473887e4607e9b21fd4ab02e802858d0ac2ca6dad9e357a9d884a47fe4b0ff'], + }), + ('qlcMatrix', '0.9.8', { + 'checksums': ['5b23fde80b0835f673f95cc6b867755149aa1e4fcc6bf40ad0079d51cc926834'], + }), + ('Signac', '1.13.0', { + 'checksums': ['d9b4103c6437391834b2d9e2aab8829f186b6e09d070dfe2a66cc12583241b2a'], + }), + ('motifmatchr', '1.26.0', { + 'checksums': ['b40be9bc37fd17a33ba4bdd783aeceda1d98e8075a68a2f0fd8b85d2cb6bfbf2'], + }), + ('extraDistr', '1.10.0', { + 'checksums': ['f4264a6c2c95bb7a865655b0e84f48e30dcd584498b49d626a71adaec8eda3a9'], + }), + ('PRROC', '1.3.1', { + 'checksums': ['479118ce47c527bc97fb58d531a31cabc094d9843d62f16922009dc62e8248d4'], + }), + ('TSP', '1.2-4', { + 'checksums': ['30bd0bfe9a7ca3fdf4f91c131f251e2835640f7d61389b50fd5564d58657c388'], + }), + ('qap', '0.1-2', { + 'checksums': ['47a4ada3ae7a3a5c9304174bd5291daad60d329d527c0c6bb5ec1ac257584da5'], + }), + ('ca', '0.71.1', { + 'checksums': ['040c2fc94c356075f116cc7cd880530b3c9e02206c0035182c03a525ee99b424'], + }), + ('seriation', '1.5.5', { + 'checksums': ['f7834c86fd68330ae706d33dfaeb3ee53fa58c2137a29f2b5b37a38158bc046d'], + }), + ('egg', '0.4.5', { + 'checksums': ['15c8ba7cf2676eb0460de7e5dfbc89fc3175ac22a8869cfd44d66d156fd6c7bb'], + }), + ('heatmaply', '1.5.0', { + 'checksums': ['aca4dd8b0181aa97969c8c25c73343e294c4d9c24e7cbf52e97fecbed5a92db3'], + }), + ('OUTRIDER', '1.22.0', { + 'checksums': ['447e64abc7fb0965d1a093d1f791c9cd20019c2cdd7622f6355e0ba32b22bbfd'], + }), + ('FRASER', '2.0.0', { + 'checksums': ['a8899f07f42ce5baa018d81908809cb45e4ae767a65fd9da191802e700ba6660'], + }), + ('JASPAR2020', '0.99.10', { + 'checksums': ['b9b92d141a317ebb32a14708229f6b82522ceeb5f1b88360d93b0a7cfe30375b'], + }), + ('AUCell', '1.26.0', { + 'checksums': ['80b25d75c80cde5d3c311227936b300ea1582f8a557057f755f18d3404523001'], + }), + ('RcisTarget', '1.24.0', { + 'checksums': ['1bc4c94d42c15f6c17f448b3f3e7c6a749b994e0845a0b8b14213385b795a6a0'], + }), + ('NMF', '0.27', { + 'checksums': ['af4302efca4a7654fecd31c376f1bb3496428279a50b8d5691c8a7e66e3f3ef9'], + }), + ('densEstBayes', '1.0-2.2', { + 'checksums': ['8361df9cd4b34fabfca19360bb680a8a3c68386a72bb69cf00dfa19daf97b679'], + }), + ('reldist', '1.7-2', { + 'checksums': ['d9086cbc14ed7c65d72da285b86a07e77cbfebc478ba7327b769bd08549229c9'], + }), + ('M3Drop', '1.30.0', { + 'checksums': ['240728ddf03b7f0089ccf49ff63a3c0c858890978bd099d26d519f50eec94dcf'], + }), + ('bsseq', '1.40.0', { + 'checksums': ['dd6b5d3d886f3af35804dd9d3af421c13568e64a73447b85c7e653427d4eeaac'], + }), + ('DSS', '2.52.0', { + 'checksums': ['68cf758ebad3444b7c76a52e9398a4f3d9d32c6cdd6fe7b9ee03a8c1a2793df9'], + }), + ('pathview', '1.44.0', { + 'checksums': ['1bf462a43f52b891663f95496d18f7a0762440ed83356250ad7842d886e057dd'], + }), + ('chromVAR', '1.26.0', { + 'checksums': ['5b0f0601b36d6feb4eb17c9a4909e37c711344c962eb932bcf72e3a5430f5e24'], + }), + ('EnsDb.Hsapiens.v79', '2.99.0', { + 'checksums': ['eff1ae8d7f4ed5c6bed335de63a758be593750fb0b3483c01cf50402688d244d'], + }), + ('WGCNA', '1.72-5', { + 'checksums': ['03439143ff235c17f0dbca7dd6362afa8ddb5a72594f5c2df1c6df1caca2e79d'], + }), + ('DNABarcodes', '1.34.0', { + 'checksums': ['1312bffc66918b9602da7af6d78726e914d046df64d29b2e2066b2379d79bd6f'], + }), + ('GenomicInteractions', '1.38.0', { + 'checksums': ['af7795cc67e3c178d9f5f3118723122d52064ac207f10fc3b3c5876c89524a99'], + }), + ('CAGEfightR', '1.24.0', { + 'checksums': ['1222c97ec7200ca658d159a4c2f60ea880f16092060ecf9a8fa395f2f82ad8c4'], + }), + ('CAGEr', '2.10.0', { + 'checksums': ['e4668be44971a95d4845de2bd29bea05b1d544e529577969650cede00b3dbdaa'], + }), + ('SPOTlight', '1.8.0', { + 'checksums': ['ebdb447105f5edcdbf0423056555e6a8d4a54c960874e1af16f791414da59621'], + }), + ('CGHcall', '2.66.0', { + 'checksums': ['4733d74916b7f275cb26c0d297e4554aa1a4a238242cc914e36c241edf1b4dbe'], + }), + ('QDNAseq', '1.40.0', { + 'checksums': ['8ea0d0cdd52027e82bde7f54f80475ae54d45062dd746d383eca17421f36d3d7'], + }), + ('HiCcompare', '1.26.0', { + 'checksums': ['ac4f29d0483aaa250699731480960d758a3142e28f961fa867496f0a64c4ede6'], + }), + ('ROntoTools', '2.32.0', { + 'checksums': ['1ffc55647309527c81ea4e2d503875c1c6cb2dd135d1e4f474f5f216a6a7ac45'], + }), + ('scDblFinder', '1.18.0', { + 'checksums': ['802774ce4480105ed3137e27d848f05bf1bc30b62072109171f1f52e6156e3da'], + }), + ('treeio', '1.28.0', { + 'checksums': ['01fa3dba09a75ab99f3726c3320dc463753429305538fa7f3bdfe5e847c0d275'], + }), + ('ggtree', '3.12.0', { + 'checksums': ['b0d6682a3686d487471828c715747abb81c6dc59e51044b7946a61340d61a7ae'], + }), + ('scistreer', '1.2.0', { + 'checksums': ['6c445f61042866d1aef2e8ccae402d79dab657f880a1b07d02db9819cf25cd0e'], + }), + ('hahmmr', '1.0.0', { + 'checksums': ['0990f1eef3afcffd54658f2a6f503f16c633c359c58ce05b38b9c67909d26da5'], + }), + ('numbat', '1.4.0', { + 'checksums': ['4457991d89c3482183b233b6c8376aea6d2d06fe9c37d44c819e9e5a946539a9'], + }), + ('HiCBricks', '1.22.0', { + 'checksums': ['d60a6fe51123b13b491491a95d915bf8752235cdfba14d4536769807f7f17541'], + }), + ('dir.expiry', '1.12.0', { + 'checksums': ['716764398f3058886b65d892bbf6d3339149e75c39686d282e5473cf7947250d'], + }), + ('basilisk.utils', '1.16.0', { + 'checksums': ['d0bd6f0da84ca110f7ee576b1e852ebfb3f8b820b44d9ef20f1e3e0247605511'], + }), + ('basilisk', '1.16.0', { + 'checksums': ['364aa07b07436f2f9aa41841b8c97f9a54928095de1e461af2947c224a560aca'], + }), + ('zellkonverter', '1.14.0', { + 'checksums': ['b61120b1e1957884a7aa71c142bd1ad1be2fd8eff318a395233a96dd5492138f'], + }), + ('DO.db', '2.9', { + 'checksums': ['762bcb9b5188274fd81d82f785cf2846a5acc61fad55e2ff8ec1502282c27881'], + }), + ('GOSemSim', '2.30.0', { + 'checksums': ['9841cb34a7a840db640b0cf2c3f1a6c06ba8ffad78bbea6f5df2f02856e20525'], + }), + ('HDO.db', '0.99.1', { + 'checksums': ['c17cf28d06621d91148a64d47fdeaa906d8621aba7a688715fb9571a55f7cf92'], + }), + ('DOSE', '3.30.1', { + 'checksums': ['a348862714fcfaf1423dc1fea78ba751ae4384d89a13ecad2fc445d67bc8d9cf'], + }), + ('enrichplot', '1.24.0', { + 'checksums': ['88609b8f4cab9edce9901b120458f61cf09d40d958922a4023908cdfe20f7766'], + }), + ('gson', '0.1.0', { + 'checksums': ['14ddbee5be66d0b1dc178e41175a50ab6ed9ffed04d4361ecf5eef3548d9a381'], + }), + ('clusterProfiler', '4.12.0', { + 'checksums': ['1f5aef1116f9767e3a76a820e19563e616bc33b62fd1371e7a352864495eae72'], + }), + ('reactome.db', '1.88.0', { + 'checksums': ['8762f24cab5c1056aacd714e0dc355576c8f3b5a325e638dc21bd2b947718bbb'], + }), + ('graphite', '1.50.0', { + 'checksums': ['fab5eb46d8d48d149a2ad4ca42d2970dd074d4560fff71629a2113f9e07bd5f7'], + }), + ('ReactomePA', '1.48.0', { + 'checksums': ['667e432e42ea75ce3d39d7f4d0360cb1d3634843d8670aba0c9a7df37ecbb244'], + }), + ('flowClean', '1.42.0', { + 'checksums': ['59cbcb27f4e291c8b71cd419939b7af9c6678108c00d7efaa520e0613a47a8a8'], + }), + ('flowAI', '1.34.0', { + 'checksums': ['0aa7cd379275346141554b9b0b634909d7dc2cb6df2d88c6a765aa2892fa38ea'], + }), + ('flowFP', '1.62.0', { + 'checksums': ['0c8e7ca9ea8f2c44bc16990a758dd16de8b7fafffe3eff80e56629c2c9c4f5e6'], + }), + ('simplifyEnrichment', '1.14.0', { + 'checksums': ['1166ba940119c40865320791896333f96007d1608bfcb8c224fdb127e8cc6180'], + }), + ('RPMG', '2.2-7', { + 'checksums': ['c413de3c126bc377fe31a948887d27f404a9637c57fe0e07b087d5509cb99f11'], + }), + ('Rwave', '2.6-5', { + 'checksums': ['6c9ef75bb376f2e3f5c5dcd3b3fdca7d86797ce809da34f444632657189be2e4'], + }), + ('RSEIS', '4.2-0', { + 'checksums': ['93ec391f69660fffdeee79a16b312522dada399a83a35758e69422145e682d14'], + }), + ('splancs', '2.01-45', { + 'checksums': ['8bccf1d61d7feaab52da07a9c95aa66bcd3986a6b214f13b232c1e2bea4b76d3'], + }), + ('MBA', '0.1-0', { + 'checksums': ['78039905c5b98be2bb79a5f292187a2aca21ef449daeefea58b0cac53a5283af'], + }), + ('GEOmap', '2.5-5', { + 'checksums': ['8a17a78926cda3f885584f797db6765d218f89b39eda512ff8af379651fb483f'], + }), + ('RFOC', '3.4-10', { + 'checksums': ['b1211db8960b482ebb516233c86b075d1a1f006a88191a72fa98babd5a8e2100'], + }), + ('flowDensity', '1.38.0', { + 'checksums': ['8cc17c977423544785dda174e8ffd44292ffb7cfbb09f500e709bc97b51c649f'], + }), + ('flowPeaks', '1.50.0', { + 'checksums': ['c5dd336f4819ed27f4bc32fd6ca1026398e41a2669e8b9cce00218151b9db618'], + }), + ('SamSPECTRAL', '1.58.0', { + 'checksums': ['8abe70ee30a05ce4a3da9a012e90b274c27bbe4337d02f287aa0a7a80c7d2317'], + }), + ('ddPCRclust', '1.24.0', { + 'checksums': ['b789c218722571e5bb1d6c643f235ba71eb6f98325ba119317ceafcfa787b65a'], + }), + ('feature', '1.2.15', { + 'checksums': ['de38292b7e800068a20824e2a9e7d5d4d0b465b7925db0d165346aa5030ff67b'], + }), + ('flowMerge', '2.52.0', { + 'checksums': ['ddbb80ed0ac59917d6be9e987ad397880500be087cd9017ab2206a39642dc7fc'], + }), + ('TrajectoryUtils', '1.12.0', { + 'checksums': ['30612e70306819f030dba4b462a8a82b67970e4ee66cc130158e328b08ae0197'], + }), + ('slingshot', '2.12.0', { + 'checksums': ['cc2622ffd37dcb60e54b807730e0bec12e0a7a87380904229c24d92515f5ad14'], + }), + ('TreeSummarizedExperiment', '2.12.0', { + 'checksums': ['b1b4b15858730b62cf07cbaa8506a8a8fe0f393e55a315577efd16b56ce2ff79'], + }), + ('decontam', '1.24.0', { + 'checksums': ['67bdfd2d95036f0d70c03a0c406fe9c5f38083a8ff79eb4c73cf48dabf4c4df6'], + }), + ('DECIPHER', '3.0.0', { + 'checksums': ['95da04138348bf370254893a41d96bc2cee7770b1ff199fb73bd50e2f5a0ffad'], + }), + ('mia', '1.12.0', { + 'checksums': ['512805cf6f77c62b25d95ebc3ed16988cf3297be5b712934c3f8130bcfa2c2f2'], + }), + ('ANCOMBC', '2.6.0', { + 'checksums': ['a8ac172f3308c60d17823c064aac2e9f2edf70ab42fee3c40f143e3836734d92'], + }), + ('decoupleR', '2.10.0', { + 'checksums': ['2c561626029234a3d9ed191c4e6b2db80b1d7eb6218aa20edc0dcc4f61e11c18'], + }), + ('UCell', '2.8.0', { + 'checksums': ['bb8617224382e61a190fc2c5a074a24440dd8edd7f1787f0defbf1e673262627'], + }), + ('intervals', '0.15.4', { + 'checksums': ['50c0e1e3aab3e7b72cc1f0a6559d96caa3a360e969c38538479907e6cbe39f8f'], + }), + ('oompaBase', '3.2.9', { + 'checksums': ['14ca2b8e713a6a7ce13758f7f5c183dbc4fdfedc4f1244ca31bbdadf8a16bcb2'], + }), + ('oompaData', '3.1.4', { + 'checksums': ['06252409a94f9eaf4ef723becd24d17e1ef7b495aada44853f4661d942292d3d'], + }), + ('TailRank', '3.2.2', { + 'checksums': ['21ed95ea47d21155f08ae2ad7bca9547f89f492000bc1defe1cc5ec172739d09'], + }), + ('RnBeads', '2.22.0', { + 'checksums': ['720b927f27713b7a16d703a1c77c1cb481f2c263b625a064dd004fed57fded6c'], + }), + ('RnBeads.hg19', '1.36.0', { + 'checksums': ['c991085a2420b01c075b1f3a27645ed4c7a3b8e11b5c9efa52e6c4b4ffb0c77a'], + }), + ('RnBeads.hg38', '1.36.0', { + 'checksums': ['1498b7131f3e30fc3860977829f8c457306bdd364e3a8807b5367d7314eace15'], + }), + ('RnBeads.mm9', '1.36.0', { + 'checksums': ['0b9456e3c19d7f9cd62a36290bc6d048d5eeae2fa09fbe701d2d4c59a292a5ad'], + }), + ('RnBeads.mm10', '2.12.0', { + 'checksums': ['d4b5f53c0b5da080f7c252965032e250a657e41a80c8181c28c8b9327cdd3194'], + }), + ('RnBeads.rn5', '1.36.0', { + 'checksums': ['8e384bffbe6de580c00779415fd7fefb7f01a7b9e0090a11200f284680f11b25'], + }), + ('log4r', '0.4.3', { + 'checksums': ['dfe3d49d35a8d8f3ad63f156d18e860540a01bd0af0e343cbab3e31a2cf5904c'], + }), + ('MSstatsConvert', '1.14.0', { + 'checksums': ['f55f9381d611b80027c489e52de539d8261d84671817b82afeaa617266e45de0'], + }), + ('MSstats', '4.12.0', { + 'checksums': ['773bfef999416c0c0f5f207984991e9cf209598cd6ae32411aae76bd2404305b'], + }), + ('MSstatsTMT', '2.12.1', { + 'checksums': ['f676d71dcd9abfe2eb88b909dc9945622ed19e50bd482f486a7ce4850be4d60e'], + }), + ('MSstatsPTM', '2.6.0', { + 'checksums': ['7063d7c540b188cbf20c083c94d28431e2ecd8fc47c7630d8c5c67ae44eb6c47'], + }), + ('factoextra', '1.0.7', { + 'checksums': ['624ff01c74933352aca55966f8a052b1ccc878f52c2c307e47f88e0665db94aa'], + }), + ('MSstatsLiP', '1.10.0', { + 'checksums': ['40a60aef2d736da2936f1a4b624a962ed69490e6e38a2587df8b6cf5eff2eece'], + }), + ('babelgene', '22.9', { + 'checksums': ['ce6601dcb78352516d3b0355042c52a20e154b39d3b27b93ff52150a59c885e2'], + }), + ('msigdbr', '7.5.1', { + 'checksums': ['dc30487bdf3594425ae9faec1ca0d7d0cd7278f4f177689133f92880e74acaca'], + }), + ('escape', '2.0.0', { + 'checksums': ['5dfcdaf7d1b1836c276a1284ebbc6bbcaeb35da11805a2491bd4cb795acf8b0f'], + }), + ('plyranges', '1.24.0', { + 'checksums': ['a8505d774d0cf9c1488205343abd1817dd5d016082597bb173d002d496a10566'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['AnnotationDbi', 'BiocManager', 'GenomicFeatures'], +} + +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 90c7f3f7665..972a8488f6a 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 @@ -867,7 +867,10 @@ exts_list = [ 'checksums': ['8e50415e415702402473caf622d86b89ddc881f6e5d888079a4818a8807ac9a2'], }), ('bold', '1.3.0', { - 'checksums': ['0ead11d4386c4c0cd578d3a956f809db2001e387e449a431b4ad503f3da38f5f'], + 'checksums': [ + ('0ead11d4386c4c0cd578d3a956f809db2001e387e449a431b4ad503f3da38f5f', + '4920fbebd22fb1d0f1a31ccc09c98aec446bb6cb5f65a2610437e405c0512c68'), + ], }), ('rredlist', '0.7.1', { 'checksums': ['92a10c37a211dc19b41b93f9ceb13d7ce1c3d3a7290cbba4c1688d944353ae85'], 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 ce8233bc4a5..09e8f65ae06 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 @@ -870,7 +870,10 @@ exts_list = [ 'checksums': ['405c77f191f30ffdbf8c05542ff5dff61059e9c731d2dc5ff0bfccb616314147'], }), ('bold', '1.3.0', { - 'checksums': ['0ead11d4386c4c0cd578d3a956f809db2001e387e449a431b4ad503f3da38f5f'], + 'checksums': [ + ('0ead11d4386c4c0cd578d3a956f809db2001e387e449a431b4ad503f3da38f5f', + '4920fbebd22fb1d0f1a31ccc09c98aec446bb6cb5f65a2610437e405c0512c68'), + ], }), ('rredlist', '0.7.1', { 'checksums': ['92a10c37a211dc19b41b93f9ceb13d7ce1c3d3a7290cbba4c1688d944353ae85'], @@ -3433,6 +3436,39 @@ exts_list = [ ('rhandsontable', '0.3.8', { 'checksums': ['901ed9c59936f7fa52ad8db3111c8904ab962f9c74f1b6cd40f81683af35d21d'], }), + ('missMDA', '1.19', { + 'checksums': ['f9675884829b2fef75237c335b21991d163674320e766523c71c7a853f95e65c'], + }), + ('insight', '0.20.3', { + 'checksums': ['b60e189849cd3c368e9c2b2174e89c2dfbba3b34e84feb8a20af1bb758116bb2'], + }), + ('datawizard', '0.12.2', { + 'checksums': ['fee36520440131596394878eb19f295609ef5d7997a3a5614c059f2a8d2be081'], + }), + ('bayestestR', '0.14.0', { + 'checksums': ['fa0f94204b414df05ecf7340b37fbb5fbe6dff2d057e2425a6990b6510054880'], + }), + ('performance', '0.12.2', { + 'checksums': ['b55e663eb45b8e88625c704506f20c4068a1c892c5a6a94d7bd0c0e3a7ed4028'], + }), + ('fastlogranktest', '0.2.1', { + 'checksums': ['457c411240b5ee73108042370ccea0f8fa1999e876b2306456d4723be27eb5c8'], + }), + ('pbmcapply', '1.5.1', { + 'checksums': ['7ffc2854a384962f0dd523aa9ef33ce8fc290997206b71b840a49049d87112dd'], + }), + ('PWEALL', '1.3.0.1', { + 'checksums': ['6fb7eaf557f9bd17bcb94945814dbd77a081d709976bc8046746ff0be7c1dcdc'], + }), + ('goldilocks', '0.3.0', { + 'checksums': ['94df7f9d3550dc3790ea3c8f3f364f7131c907a235f498473c8c4e4f959b26c0'], + }), + ('r2rtf', '1.1.1', { + 'checksums': ['d64b88187b5eb7bc69eae37f493fdae8417d5127d0a44f1586a00827bc321f52'], + }), + ('gsDesign', '3.6.4', { + 'checksums': ['b96075650a5bcbb9ebab78b7094d51f451d086b7c97a3a427635b52fece176d2'], + }), ] modextrapaths = {'R_LIBS_SITE': ''} diff --git a/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb b/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb new file mode 100644 index 00000000000..4981b999b95 --- /dev/null +++ b/easybuild/easyconfigs/r/R-tesseract/R-tesseract-5.2.1-foss-2023a.eb @@ -0,0 +1,51 @@ +easyblock = 'Bundle' + +name = 'R-tesseract' +version = '5.2.1' + +homepage = 'https://cran.r-project.org/package=tesseract' +description = "The R extension for using tesseract" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('pkgconf', '1.9.5')] + +dependencies = [ + ('R', '4.3.2'), + ('poppler', '23.09.0'), + ('tesseract', '5.3.4'), +] + +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 = [ + ('qpdf', '1.3.3', { + 'checksums': ['415610be6fa73f60a31872b81fea089288b07f9cb6d078088009207c5e60fe53'], + }), + ('pdftools', '3.4.0', { + 'checksums': ['0b9d7b2100a6d7959c56e144285b9638ca6ff4a7f484a31ff814a99d71482c64'], + }), + ('tesseract', version, { + 'preinstallopts': 'INCLUDE_DIR="$EBROOTTESSERACT/include/tesseract -I$EBROOTLEPTONICA/include/leptonica"' + ' LIB_DIR=$EBROOTTESSERACT/lib', + 'checksums': ['ffaba641c5d531a2b6d4ded3608a669206b1e0690cb5e013e3fc9db8aea117fe'], + }), +] + +sanity_check_paths = { + 'files': ['tesseract/libs/tesseract.%s' % SHLIB_EXT, 'tesseract/R/tesseract'], + 'dirs': ['qpdf', 'pdftools'], +} + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb b/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb index d8b9d1c97fe..9d09c819514 100644 --- a/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb +++ b/easybuild/easyconfigs/r/R/R-4.0.3-foss-2020b.eb @@ -57,6 +57,10 @@ dependencies = [ osdependencies = [OS_PKG_OPENSSL_DEV] +# Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols. +# Adding it to FLIBS makes sure it is present when needed. +preconfigopts = 'export FLIBS="$FLIBS -lm" && ' + configopts = "--with-pic --enable-threads --enable-R-shlib" # some recommended packages may fail in a parallel build (e.g. Matrix), and # we're installing them anyway below 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/RAPIDS/RAPIDS-24.4-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/r/RAPIDS/RAPIDS-24.4-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..287feaf2e3f --- /dev/null +++ b/easybuild/easyconfigs/r/RAPIDS/RAPIDS-24.4-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,215 @@ +easyblock = 'PythonBundle' + +name = 'RAPIDS' +version = '24.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://rapids.ai/' +description = """RAPIDS provides unmatched speed with familiar APIs that match the most popular +PyData libraries. Built on state-of-the-art foundations like NVIDIA CUDA and +Apache Arrow, it unlocks the speed of GPUs with code you already know.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('hatchling', '1.18.0'), # needed by treelite + ('CMake', '3.26.3'), # needed by treelite +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), + ('NCCL', '2.18.3', versionsuffix), + ('Python', '3.11.3'), + ('CUDA-Python', '12.1.0', versionsuffix), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('aiohttp', '3.8.5'), + ('Arrow', '14.0.1'), + ('dask', '2023.9.2'), + ('geopandas', '0.14.2'), + ('jupyter-server-proxy', '4.0.0'), + ('numba', '0.58.1'), + ('protobuf-python', '4.24.0'), + ('pyproj', '3.6.0'), + ('scikit-image', '0.22.0'), + ('Shapely', '2.0.1'), + ('tqdm', '4.66.1'), + ('xarray', '2023.9.0'), +] + +# Installation based on wheels provided by Nvidia on pypi.nvidia.com +# Some of the extensions have alternatives as regular dependencies, such as +# cupy or ucx-py. However, they are still installed as extensions because the +# other wheels from Nvidia require those packages but with special cuda +# suffixes (e.g. "cupy_cuda12x" instead of "cupy") + +use_pip = True + +_whl_name_cuda = '%(name)s_cu%(cudamajver)s-%(version)s' +_whl_py_noneany = '-py%(pymajver)s-none-any.whl' +_whl_cp_version = '-cp%(pymajver)s%(pyminver)s-cp%(pymajver)s%(pyminver)s' +_whl_cp_linux28 = '-manylinux_2_28_x86_64.whl' +_whl_cp_linux27 = '-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl' +_whl_cp_linux17 = '-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' +_whl_cp_linux14 = '-manylinux2014_x86_64.whl' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE, 'https://pypi.nvidia.com/%(name)s-cu%(cudamajver)s'], + 'source_tmpl': SOURCE_TAR_GZ, +} + +exts_list = [ + ('cudf', '24.4.1', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux28, + 'checksums': ['545c8845402b49bfbd35cda3653c12a6c776cfc873cada181f866c61223cde34'], + }), + ('dask_cudf', '24.4.1', { + 'source_tmpl': _whl_name_cuda + _whl_py_noneany, + 'source_urls': ['https://pypi.nvidia.com/dask-cudf-cu%(cudamajver)s'], + 'checksums': ['b18846636c846722b915af1a6828f6f70f17f5f8aff0d61bb19c3e6067e03b3e'], + }), + ('cuml', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['6c7e7209a01a872a9699bfb851678b30dde47cb003859bca059ca5395add46d3'], + }), + ('cugraph', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['968d3733a8559812574ffa4dd226b6c6eac19ef8dc395088121f2e37e1f00f38'], + }), + ('cuspatial', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['3ec862f6fd82e6e79f2ce90c416ef4323e489a02494b67424ea380143531d121'], + }), + ('cuproj', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['46b6a0e5174039bdcf2352e12c9b2bf67f4f6a1da23b3302293779e291dc9b7b'], + }), + ('cuxfilter', '24.4.1', { + 'source_tmpl': _whl_name_cuda + _whl_py_noneany, + 'checksums': ['c8f2f11a5e908854e5368c489b045fc578794fcb28978aa56351831025f570e5'], + }), + ('cucim', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['5cf9e5de6403d21679a79fa6d1fe9b18f6823687658a60292e4f092474363326'], + }), + ('pylibraft', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['245733dd2f2f3cb4286619966b83695387d76df7b91fda8dd8d934936b8db987'], + }), + ('raft_dask', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'source_urls': ['https://pypi.nvidia.com/raft-dask-cu%(cudamajver)s'], + 'checksums': ['97e39a93aee39876168fe61f9734f1a137ca9f3cb5801a22f08fe857e3ee269d'], + }), + ('cuvs', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['e9e5def770bfe69f94563a8470d2d68730abf3ddfb0ab2ebf0392e73a9ba0fdc'], + }), + ('cupy-cuda12x', '13.2.0', { + 'modulename': 'cupy', + 'source_tmpl': 'cupy_cuda%(cudamajver)sx-%(version)s' + _whl_cp_version + _whl_cp_linux14, + 'checksums': ['6474fa977e7df03e92374698f2b757065c5b14733b2bbacc19301cc440acafdd'], + }), + ('nvtx', '0.2.10', { + 'source_tmpl': '%(name)s-%(version)s' + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['71a1a641d4db137da8166d689d835a42f92b97cf2658ea069cbed162b8c5dd79'], + }), + ('pynvjitlink-cu12', '0.3.0', { + 'modulename': 'pynvjitlink', + 'source_tmpl': 'pynvjitlink_cu%(cudamajver)s-%(version)s' + _whl_cp_version + _whl_cp_linux27, + 'checksums': ['f56395025da610cb3aeaf4b04f4cbeb15676fb922738426028cc663324147ca4'], + }), + ('rmm', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['bd0f4a0a63be30381aafb169912130dadb3c107dd489c95f6dec14638bc0cb48'], + }), + ('rapids_dask_dependency', '24.4.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'source_urls': ['https://pypi.nvidia.com/rapids-dask-dependency'], + 'checksums': ['0713b99711cc2beda5e9bc52e4436c9d9131e9ab63c67c6628511703a7fefe3f'], + }), + ('dask_cuda', '24.4.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0f70bbbac8c7f19071ad9a78398ce7a3d17f10e5c70212810a9f1de8c50eae7f'], + }), + ('pynvml', '11.4.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d27be542cd9d06558de18e2deffc8022ccd7355bc7382255d477038e7e424c6c'], + }), + ('ucx_py', '0.37.0', { + 'modulename': 'ucp', + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'source_urls': ['https://pypi.nvidia.com/ucx-py-cu%(cudamajver)s'], + 'checksums': ['32235eaf1191ea4fa0e795704ee51ec7bffc879ce075cbbbdd60ff994daed79c'], + }), + ('pylibcugraph', '24.4.0', { + 'source_tmpl': _whl_name_cuda + _whl_cp_version + _whl_cp_linux17, + 'checksums': ['1deb52562124343314cef504a92ac62afb5b6448cfffa19db8d208e6affe21b7'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('colorcet', '3.1.0', { + 'checksums': ['2921b3cd81a2288aaf2d63dbc0ce3c26dcd882e8c389cc505d6886bf7aa9a4eb'], + }), + ('pyct', '0.5.0', { + 'checksums': ['dd9f4ac5cbd8e37c352c04036062d3c5f67efec76d404761ef16b0cbf26aa6a0'], + }), + ('param', '2.1.1', { + 'checksums': ['3b1da14abafa75bfd908572378a58696826b3719a723bc31b40ffff2e9a5c852'], + }), + ('datashader', '0.16.3', { + 'checksums': ['9d0040c7887f7a5a5edd374c297402fd208a62bf6845e87631b54f03b9ae479d'], + }), + ('pyviz_comms', '3.0.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['31541b976a21b7738557c3ea23bd8e44e94e736b9ed269570dcc28db4449d7e3'], + }), + ('holoviews', '1.19.1', { + 'checksums': ['b9e85e8c07275a456c0ef8d06bc157d02b37eff66fb3602aa12f5c86f084865c'], + }), + ('uc-micro-py', '1.0.3', { + 'modulename': 'uc_micro', + 'checksums': ['d321b92cff673ec58027c04015fcaa8bb1e005478643ff4a500882eaab88c48a'], + }), + ('linkify-it-py', '2.0.3', { + 'modulename': 'linkify_it', + 'checksums': ['68cda27e162e9215c17d786649d1da0021a451bdc436ef9e0fa0ba5234b9b048'], + }), + ('Markdown', '3.6', { + 'checksums': ['ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224'], + }), + ('mdit_py_plugins', '0.4.1', { + 'checksums': ['834b8ac23d1cd60cec703646ffd22ae97b7955a6d596eb1d304be1e251ae499c'], + }), + ('panel', '1.2.3', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['0805bacf4a613e8869163bf80f50e59a89838afe76bdbe6a05ab5637f32683f7'], + }), + ('fastrlock', '0.8.2', { + 'checksums': ['644ec9215cf9c4df8028d8511379a15d9c1af3e16d80e47f1b6fdc6ba118356a'], + }), + ('dask', '2024.1.1', { + # overload dependency on dask due to strict requirement by rapids_dask_dependency + 'checksums': ['d0dc92e81ce68594a0a0ce23ba33f4d648f2c2f4217ab9b79068b7ecfb0416c7'], + }), + ('distributed', '2024.1.1', { + 'checksums': ['28cf5e9f4f07197b03ea8e5272e374ce2b9e9dc6742f6c9b525fd81645213c67'], + }), + ('dask-expr', '0.4.0', { + 'checksums': ['ee86ac5a5d3a892341af7ffab58e3a579c12aacbe332f2fe7477f668ac260279'], + }), + ('cachetools', '5.3.3', { + 'checksums': ['ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105'], + }), + ('treelite', '4.1.2', { + 'checksums': ['d6e6338b601fb3304425966de8a0f1073cb9f7917bcd6e3cdaeaf3492f247425'], + }), +] + +# RAPIDS v24.4 only supports GPUs with NVIDIA Volta architecture or newer +# Sanity checks need a physical GPU device +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb new file mode 100644 index 00000000000..a181d6523c8 --- /dev/null +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb @@ -0,0 +1,53 @@ +# EasyBuild easyconfig +# +# Contributed from Fred Hutchinson Cancer Research Center, Seattle WA, US +# John Dey jfdey@fredhutch.org +# +easyblock = 'CMakeMake' + +name = 'RAxML-NG' +version = '1.2.2' + +homepage = 'https://github.com/amkozlov/raxml-ng' +description = """RAxML-NG is a phylogenetic tree inference tool which uses maximum-likelihood (ML) + optimality criterion. Its search heuristic is based on iteratively performing a series of Subtree + Pruning and Regrafting (SPR) moves, which allows to quickly navigate to the best-known ML tree.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +sources = [{ + 'filename': '%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/amkozlov', + 'repo_name': '%(namelower)s', + 'tag': '%(version)s', + 'recursive': True, + 'keep_git_dir': True, + } +}] +checksums = [None] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('googletest', '1.14.0'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +preconfigopts = "sed -i 's/c++11/c++14/g' %(builddir)s/raxml-ng/CMakeLists.txt && " +configopts = '-DUSE_GMP=ON ' + +runtest = 'test ' + +sanity_check_paths = { + 'files': ['bin/raxml-ng'], + 'dirs': [], +} + +sanity_check_commands = ["raxml-ng --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb b/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb index a7789bd8358..bb9b6221bf8 100644 --- a/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb +++ b/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb @@ -16,8 +16,6 @@ dependencies = [ ('Julia', local_juliaver, '-linux-%s' % ARCH, SYSTEM), ] -preinstallopts = "export LD_LIBRARY_PATH=$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH && " - exts_default_options = { 'source_tmpl': 'v%(version)s.tar.gz', } @@ -224,17 +222,15 @@ exts_list = [ }), ] -sanity_check_commands = ["julia -e 'using Pkg;Pkg.test(\"%(name)s\")'"] +local_julia_env = "%(installdir)s/environments/v" + '.'.join(local_juliaver.split('.')[:2]) + +sanity_check_commands = [ + """julia -e 'using Pkg; Pkg.activate("%s"); Pkg.test("%%(name)s")'""" % local_julia_env, +] sanity_check_paths = { 'files': [], 'dirs': ['packages/%(name)s'], } -# When loading R and Julia, there seems to be a library collision and Julia (namely Pkg module) doesn't work properly -# This is a workaround to make Julia find the correct libraries -modluafooter = """ -prepend_path("LD_LIBRARY_PATH", os.getenv("EBROOTJULIA") .. "/lib/julia") -""" - moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4be8dccf690 --- /dev/null +++ b/easybuild/easyconfigs/r/RDFlib/RDFlib-7.0.0-GCCcore-13.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'RDFlib' +version = '7.0.0' + +homepage = 'https://github.com/RDFLib/rdflib' +description = """RDFLib is a Python library for working with RDF, a simple yet powerful language + for representing information.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True + +exts_list = [ + ('isodate', '0.6.1', { + 'checksums': ['48c5881de7e8b0a0d648cb024c8062dc84e7b840ed81e864c7614fd3c127bde9'], + }), + ('rdflib', version, { + 'checksums': ['9995eb8569428059b8c1affd26b25eac510d64f5043d9ce8c84e0d0036e995ae'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' 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/RHEIA/RHEIA-1.1.11-foss-2023a.eb b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.11-foss-2023a.eb new file mode 100644 index 00000000000..d218a83dc02 --- /dev/null +++ b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.11-foss-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'RHEIA' +version = '1.1.11' + +homepage = 'https://github.com/rheia-framework/RHEIA' +description = "Robust design optimization of renewable Hydrogen and dErIved energy cArrier systems" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # deap, numpy, pandas, scipy + ('h5py', '3.9.0'), + ('matplotlib', '3.7.2'), +] + +use_pip = True + +exts_list = [ + ('pvlib', '0.11.0', { + 'checksums': ['88b31c44dc07f0435af1e2d5ddcac067e6ce15917251a9f270366f61e9bd015b'], + }), + ('pyDOE', '0.3.8', { + 'modulename': '%(name)s', + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['cbd6f14ae26d3c9f736013205f53ea1191add4567033c3ee77b7dd356566c4b6'], + }), + ('SobolSequence', '0.2.1', { + 'modulename': 'sobol', + 'checksums': ['b2b4b57451b8d2e79ddb07efa23bc471dfdd436ea357d6368666bdc364df3eb1'], + }), + ('rheia', version, { + 'sources': ['%(namelower)s-%(version)s.tar.gz'], + 'checksums': ['d6b1ea991f6338cca136b59e8e413bae2167c5ebd631163ec68fafe0040aa143'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb b/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb new file mode 100644 index 00000000000..22e6ed85f93 --- /dev/null +++ b/easybuild/easyconfigs/r/RMBlast/RMBlast-2.14.1-gompi-2023a.eb @@ -0,0 +1,65 @@ +## +# 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 +# +# Update: Petr Král (INUITS) +## + +easyblock = 'ConfigureMake' + +name = 'RMBlast' +version = '2.14.1' + +homepage = 'https://www.repeatmasker.org/rmblast/' +description = """RMBlast is a RepeatMasker compatible version of the standard NCBI BLAST suite. The primary + difference between this distribution and the NCBI distribution is the addition of a new program 'rmblastn' + for use with RepeatMasker and RepeatModeler.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'usempi': True} + +# RMBlast is distributed as a patch that applies on top of BLAST+ +source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/%(version)s/'] +sources = ['ncbi-blast-%(version)s+-src.tar.gz'] +patches = [('https://www.repeatmasker.org/%(namelower)s/isb-%(version)s+-%(namelower)s.patch.gz', 2)] +checksums = [ + {'ncbi-blast-2.14.1+-src.tar.gz': '712c2dbdf0fb13cc1c2d4f4ef5dd1ce4b06c3b57e96dfea8f23e6e99f5b1650e'}, + {'isb-2.14.1+-rmblast.patch.gz': '9c8091eb2aec97ac83287859d2bfec83cb08c082d5a121cbefe3cc626f933763'}, +] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('PCRE', '8.45'), + ('Boost.MPI', '1.82.0'), + ('GMP', '6.2.1'), + ('libpng', '1.6.39'), + ('libjpeg-turbo', '2.1.5.1'), + ('LMDB', '0.9.31'), +] + +# Disable auto-vectorization for the API on CPUs with AVX512 (Intel Skylake and onwards) +# Compilation fails on src/algo/blast/api/prelim_stage.cpp +local_apimake = 'src/algo/blast/api/Makefile.xblast.lib' +preconfigopts = "sed -i 's/FAST_CXXFLAGS)/FAST_CXXFLAGS) -fno-tree-vectorize/g' %s &&" % local_apimake + +configopts = "--with-64 --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" + +prebuildopts = "sed -i 's/LIBS =/LIBS = $(BLAST_THIRD_PARTY_LIBS)/' src/app/rmblastn/Makefile.rmblastn.app && " + +sanity_check_paths = { + 'files': ['bin/blastp', 'bin/blastn', 'bin/deltablast', 'bin/rmblastn'], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/ROOT/ROOT-6.12.06_cling-runtime-sysroot.patch b/easybuild/easyconfigs/r/ROOT/ROOT-6.12.06_cling-runtime-sysroot.patch new file mode 100644 index 00000000000..7bf22bc1d8e --- /dev/null +++ b/easybuild/easyconfigs/r/ROOT/ROOT-6.12.06_cling-runtime-sysroot.patch @@ -0,0 +1,25 @@ +This patch disables the runtime sysroot feature for cling since we would not be cross-compiling in an EasyBuild context. + +Reusing existing patch found in Gentoo ebuild for ROOT, see url: +https://github.com/gentoo/gentoo/blob/master/sci-physics/root/files/root-6.12.06_cling-runtime-sysroot.patch + +Patch needed for at runtime for ROOT in EESSI: +https://github.com/EESSI/software-layer/pull/769 + +Index: root-6.12.06/interpreter/cling/lib/Utils/Paths.cpp +=================================================================== +--- root-6.12.06.orig/interpreter/cling/lib/Utils/Paths.cpp ++++ root-6.12.06/interpreter/cling/lib/Utils/Paths.cpp +@@ -57,11 +57,6 @@ using namespace clang; + void CopyIncludePaths(const clang::HeaderSearchOptions& Opts, + llvm::SmallVectorImpl& incpaths, + bool withSystem, bool withFlags) { +- if (withFlags && Opts.Sysroot != "/") { +- incpaths.push_back("-isysroot"); +- incpaths.push_back(Opts.Sysroot); +- } +- + /// User specified include entries. + for (unsigned i = 0, e = Opts.UserEntries.size(); i != e; ++i) { + const HeaderSearchOptions::Entry &E = Opts.UserEntries[i]; + diff --git a/easybuild/easyconfigs/r/ROOT/ROOT-6.24.06-foss-2021b.eb b/easybuild/easyconfigs/r/ROOT/ROOT-6.24.06-foss-2021b.eb index 91350423753..b7662891803 100644 --- a/easybuild/easyconfigs/r/ROOT/ROOT-6.24.06-foss-2021b.eb +++ b/easybuild/easyconfigs/r/ROOT/ROOT-6.24.06-foss-2021b.eb @@ -10,7 +10,13 @@ toolchainopts = {'pic': True} source_urls = ['https://root.cern.ch/download/'] sources = ['%(namelower)s_v%(version)s.source.tar.gz'] -checksums = ['907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522'] +patches = [ + 'ROOT-6.12.06_cling-runtime-sysroot.patch', +] +checksums = [ + {'root_v6.24.06.source.tar.gz': '907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522'}, + {'ROOT-6.12.06_cling-runtime-sysroot.patch': '63db7cb8371408dfa35dc58a500cd1de70d06db6b87674d5694b02e4092b6bd0'}, +] builddependencies = [ ('CMake', '3.22.1'), diff --git a/easybuild/easyconfigs/r/ROOT/ROOT-6.26.06-foss-2022a.eb b/easybuild/easyconfigs/r/ROOT/ROOT-6.26.06-foss-2022a.eb index e3109d99f7d..0514357e262 100644 --- a/easybuild/easyconfigs/r/ROOT/ROOT-6.26.06-foss-2022a.eb +++ b/easybuild/easyconfigs/r/ROOT/ROOT-6.26.06-foss-2022a.eb @@ -10,7 +10,13 @@ toolchainopts = {'pic': True} source_urls = ['https://root.cern.ch/download/'] sources = ['%(namelower)s_v%(version)s.source.tar.gz'] -checksums = ['b1f73c976a580a5c56c8c8a0152582a1dfc560b4dd80e1b7545237b65e6c89cb'] +patches = [ + 'ROOT-6.12.06_cling-runtime-sysroot.patch', +] +checksums = [ + {'root_v6.26.06.source.tar.gz': 'b1f73c976a580a5c56c8c8a0152582a1dfc560b4dd80e1b7545237b65e6c89cb'}, + {'ROOT-6.12.06_cling-runtime-sysroot.patch': '63db7cb8371408dfa35dc58a500cd1de70d06db6b87674d5694b02e4092b6bd0'}, +] builddependencies = [ ('CMake', '3.23.1'), diff --git a/easybuild/easyconfigs/r/ROOT/ROOT-6.26.10-foss-2022b.eb b/easybuild/easyconfigs/r/ROOT/ROOT-6.26.10-foss-2022b.eb index 6e41414b19b..845b0e4db80 100644 --- a/easybuild/easyconfigs/r/ROOT/ROOT-6.26.10-foss-2022b.eb +++ b/easybuild/easyconfigs/r/ROOT/ROOT-6.26.10-foss-2022b.eb @@ -10,7 +10,13 @@ toolchainopts = {'pic': True} source_urls = ['https://root.cern.ch/download/'] sources = ['%(namelower)s_v%(version)s.source.tar.gz'] -checksums = ['8e56bec397104017aa54f9eb554de7a1a134474fe0b3bb0f43a70fc4fabd625f'] +patches = [ + 'ROOT-6.12.06_cling-runtime-sysroot.patch', +] +checksums = [ + {'root_v6.26.10.source.tar.gz': '8e56bec397104017aa54f9eb554de7a1a134474fe0b3bb0f43a70fc4fabd625f'}, + {'ROOT-6.12.06_cling-runtime-sysroot.patch': '63db7cb8371408dfa35dc58a500cd1de70d06db6b87674d5694b02e4092b6bd0'}, +] builddependencies = [ ('CMake', '3.24.3'), diff --git a/easybuild/easyconfigs/r/ROOT/ROOT-6.30.06-foss-2023a.eb b/easybuild/easyconfigs/r/ROOT/ROOT-6.30.06-foss-2023a.eb index b11dbb20ea5..a95692ea233 100644 --- a/easybuild/easyconfigs/r/ROOT/ROOT-6.30.06-foss-2023a.eb +++ b/easybuild/easyconfigs/r/ROOT/ROOT-6.30.06-foss-2023a.eb @@ -10,7 +10,13 @@ toolchainopts = {'pic': True} source_urls = ['https://root.cern.ch/download/'] sources = ['%(namelower)s_v%(version)s.source.tar.gz'] -checksums = ['300db7ed1b678ed2fb9635ca675921a1945c7c2103da840033b493091f55700c'] +patches = [ + 'ROOT-6.12.06_cling-runtime-sysroot.patch', +] +checksums = [ + {'root_v6.30.06.source.tar.gz': '300db7ed1b678ed2fb9635ca675921a1945c7c2103da840033b493091f55700c'}, + {'ROOT-6.12.06_cling-runtime-sysroot.patch': '63db7cb8371408dfa35dc58a500cd1de70d06db6b87674d5694b02e4092b6bd0'}, +] builddependencies = [ ('CMake', '3.26.3'), 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/RStudio-Server/RStudio-Server-2024.09.0+375-foss-2023b-Java-11-R-4.4.1.eb b/easybuild/easyconfigs/r/RStudio-Server/RStudio-Server-2024.09.0+375-foss-2023b-Java-11-R-4.4.1.eb new file mode 100644 index 00000000000..2c81f46688a --- /dev/null +++ b/easybuild/easyconfigs/r/RStudio-Server/RStudio-Server-2024.09.0+375-foss-2023b-Java-11-R-4.4.1.eb @@ -0,0 +1,98 @@ +easyblock = 'CMakeNinja' + +name = 'RStudio-Server' +version = '2024.09.0+375' +versionsuffix = '-Java-%(javaver)s-R-%(rver)s' +local_git_rev = 'c8fc7aee6dc218d5687553f9041c6b1e5ea268ff' + +homepage = 'https://www.rstudio.com/' +description = """This is the RStudio Server version. +RStudio is a set of integrated tools designed to help you be more productive with R. + +The server can be started with: + rserver --server-daemonize=0 --www-port=8787 + +If you need a database config one can be created with: + MYTMP=`mktemp -d` && echo -e "provider=sqlite\\ndirectory=${MYTMP}/sqlite" > "${MYTMP}/db.conf" +and then used with: + rserver ... --database-config-file="${MYTMP}/db.conf" +""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://github.com/rstudio/rstudio/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8a29b77c53a3db8379d824a9f4a491843036003d105ed71981cd40fe39d2c8c8'] + +builddependencies = [ + ('ant', '1.10.14', '-Java-%(javaver)s', SYSTEM), + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('nodejs', '20.9.0'), +] + +dependencies = [ + ('Boost', '1.83.0'), + ('Java', '11', '', SYSTEM), + ('R', '4.4.1'), + ('R-bundle-CRAN', '2024.06'), + ('SOCI', '4.0.3'), + ('yaml-cpp', '0.8.0'), +] + +osdependencies = [ + ('pam-devel', 'libpam0g-dev') +] + +preconfigopts = " && ".join([ + # Install dependencies via scripts. Done in subshell to preserve PWD + "(export RSTUDIO_TOOLS_ROOT='%(builddir)s'", + "cd '%(start_dir)s/dependencies/common'", + "./install-cef", + "./install-dictionaries", + "./install-mathjax", + "./install-pandoc", + "./install-panmirror", + "./install-npm-dependencies)", + "" +]) + +configopts = " ".join([ + "-DRSTUDIO_TOOLS_ROOT='%(builddir)s'", + "-DRSTUDIO_TARGET=Server", + "-DRSTUDIO_USE_SYSTEM_BOOST=ON", + "-DRSTUDIO_USE_SYSTEM_SOCI=ON", + "-DRSTUDIO_USE_SYSTEM_YAML_CPP=ON", + "-DQUARTO_ENABLED=OFF", # Not available on all archs, use pandoc fallback + "-DRSTUDIO_GIT_REVISION_HASH=" + local_git_rev +]) + +sanity_check_commands = [ + # RSession requires environment variables R_HOME and R_DOC_DIR + 'R_HOME="$EBROOTR/lib64/R" R_DOC_DIR="$R_HOME/doc" rsession --verify-installation=1', + # RServer requires a db conf (this may also be needed for live use) + # Also create and set a soem dirs so it doesn't try to use $HOME + ' '.join([ + 'MYTMP=`mktemp -d`', + '&& export RSTUDIO_CONFIG_DIR="$MYTMP"', + '&& export XDG_DATA_HOME="$MYTMP/.data"', + '&& export XDG_CACHE_HOME="$MYTMP/.cache"', + '&& mkdir "$XDG_DATA_HOME" "$XDG_CACHE_HOME"', + '&& export RS_LOG_DIR="$MYTMP/log"', + '&& echo -e "provider=sqlite\\ndirectory=$MYTMP/db" >> "$MYTMP/db.conf"', + '&& rserver', + '--verify-installation=1', + '--server-user="$USER"', + '--database-config-file="$MYTMP/db.conf"', + '--server-data-dir="$MYTMP/sdd"', + '--secure-cookie-key-file="$MYTMP/secure-cookie-key"', + ]), +] + +sanity_check_paths = { + 'files': ['bin/rstudio-server'], + 'dirs': ['bin', 'extras', 'resources', 'www', 'www-symbolmaps', 'R'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/Racon/Racon-1.5.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/r/Racon/Racon-1.5.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..de4df21150d --- /dev/null +++ b/easybuild/easyconfigs/r/Racon/Racon-1.5.0-GCCcore-13.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'Racon' +version = '1.5.0' + +homepage = 'https://github.com/lbcb-sci/racon' +description = """Ultrafast consensus module for raw de novo genome assembly of long uncorrected reads.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +github_account = 'lbcb-sci' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['41e362f71cc03b934f17d6e2c0d626e1b2997258261b14551586de006666424a'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('binutils', '2.40'), + ('git', '2.42.0'), +] + +sanity_check_paths = { + 'files': ['bin/racon'], + 'dirs': [], +} + +sanity_check_commands = ['racon --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b296d76e7b7 --- /dev/null +++ b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20240815-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'RapidJSON' +# no new release since Aug'16 so using latest commit; +# see also https://github.com/Tencent/rapidjson/issues/2202 +version = '1.1.0-20240815' +local_commit = '7c73dd7' + +homepage = 'https://rapidjson.org' +description = "A fast JSON parser/generator for C++ with both SAX/DOM style API" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/Tencent/%(namelower)s/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': 'v%(version)s.tar.gz'}] +checksums = ['91138ebc9c980e554e6bcf9d13537f9eebf42710e0b956fdca46181ad645f94d'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +# strip out hardcoded use of -march=native, EasyBuild should be in control of this +preconfigopts = "sed -i 's/-march=native//g' ../rapidjson-*/CMakeLists.txt && " + +sanity_check_paths = { + 'files': ['lib/pkgconfig/%(name)s.pc'], + 'dirs': ['include/%(namelower)s', 'lib/cmake', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/Raptor/Raptor-2.0.16-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/Raptor/Raptor-2.0.16-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..61c358020c8 --- /dev/null +++ b/easybuild/easyconfigs/r/Raptor/Raptor-2.0.16-GCCcore-12.3.0.eb @@ -0,0 +1,55 @@ +## +# This is a contribution from SIB Swiss Institute of Bioinformatics +# Homepage: https://www.sib.swiss/research-infrastructure/competence-centers/vital-it +# +# Authors:: Sebastien Moretti +# +# Based on Raptor2 RPM spec file: +# https://git.rockylinux.org/staging/rpms/raptor2/-/blob/r8/SPECS/raptor2.spec +# The RPM patches have been integrated in the version 2.0.16 +# +# Update: Petr Král (INUITS) +## +easyblock = 'ConfigureMake' + +name = 'Raptor' +version = '2.0.16' +homepage = 'https://librdf.org/raptor/' +description = """Set of parsers and serializers that generate Resource Description Framework +(RDF) triples by parsing syntaxes or serialize the triples into a syntax.""" +# software_license = 'LicenseLGPLv2.1 + LicenseGPLv2 + LicenseApachev2' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://download.librdf.org/source'] +sources = ['raptor2-%(version)s.tar.gz'] +checksums = ['089db78d7ac982354bdbf39d973baf09581e6904ac4c92a98c5caadb3de44680'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.40'), + ('make', '4.4.1'), +] + +dependencies = [ + ('libxml2', '2.11.4'), + ('libxslt', '1.1.38'), + ('cURL', '8.0.1'), + ('ICU', '73.2'), +] + +configopts = "--disable-static --enable-release --disable-gtk-doc --with-yajl=no" + +# fix error: 'xmlEntity' {aka 'struct _xmlEntity'} has no member named 'checked' +# see https://github.com/dajobe/raptor/pull/58 +local_sed_replacement = r's/LIBXML_VERSION >= 20627/LIBXML_VERSION >= 2062 \&\& LIBXML_VERSION < 21100/g' +prebuildopts = "sed -i '%s' src/raptor_libxml.c && " % local_sed_replacement + +sanity_check_paths = { + 'files': ['bin/rapper', 'lib/libraptor2.%s' % SHLIB_EXT], + 'dirs': ['include/raptor2/'] +} + +sanity_check_commands = ["rapper --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/Rasqal/Rasqal-0.9.33-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/Rasqal/Rasqal-0.9.33-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..3d5e0ad9d83 --- /dev/null +++ b/easybuild/easyconfigs/r/Rasqal/Rasqal-0.9.33-GCCcore-12.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'Rasqal' +version = '0.9.33' +homepage = 'hhttps://librdf.org/rasqal' +description = """A library handling RDF query syntaxes, construction and execution""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://download.librdf.org/source'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6924c9ac6570bd241a9669f83b467c728a322470bf34f4b2da4f69492ccfd97c'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.40'), + ('Raptor', '2.0.16'), +] + +dependencies = [ + ('libgcrypt', '1.10.3'), + ('MPFR', '4.2.0'), + ('PCRE', '8.45'), + ('gtk-doc', '1.34.0'), + ('ICU', '73.2'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = "--disable-static --enable-release" + +sanity_check_paths = { + 'files': ['bin/roqet', 'lib/librasqal.%s' % SHLIB_EXT], + 'dirs': ['include/rasqal/'] +} + +sanity_check_commands = ["roqet --help"] + +moduleclass = 'lib' 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..9b52d2bc91f --- /dev/null +++ b/easybuild/easyconfigs/r/Ray-project/Ray-project-2.37.0-foss-2024a.eb @@ -0,0 +1,67 @@ +# 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'), +] + +use_pip = True + +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' +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..9046d5c9362 --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-GCCcore-12.3.0.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('cURL', '8.0.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.11.3'), + ('libxslt', '1.1.38'), # Required by lxml, which is installed by ReFrame's bootstrap installer + ('libxml2', '2.11.4'), # Required by lxml, which is installed by ReFrame's bootstrap installer +] + +use_pip = True + +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': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +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/ReFrame/ReFrame-4.6.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..e2adb9db1d9 --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-GCCcore-13.2.0.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('cURL', '8.3.0'), # 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.11.5'), + ('libxslt', '1.1.38'), # Required by lxml, which is installed by ReFrame's bootstrap installer + ('libxml2', '2.11.5'), # Required by lxml, which is installed by ReFrame's bootstrap installer +] + +use_pip = True + +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': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +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/ReFrame/ReFrame-4.6.2-Python-3.6.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-Python-3.6.eb new file mode 100644 index 00000000000..4e58793cd0a --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2-Python-3.6.eb @@ -0,0 +1,95 @@ +# This EasyConfig is made with older setuptools and wheel versions, so that it still works with Python-3.6.X +# For newer python versions, we suggest to use ReFrame-4.6.2.eb (without suffix) +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' +versionsuffix = '-Python-3.6' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = SYSTEM + +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +# Required by lxml, which is installed by ReFrame's bootstrap installer +osdependencies = [ + ('libxml2'), + ('libxslt', 'libxslt1.1'), +] + +# Listed as python_requires in https://github.com/reframe-hpc/reframe/blob/v4.6.2/setup.cfg +req_py_majver = 3 +req_py_minver = 6 + +# The setuptools in this EasyConfig is the latest that works for Python 3.6, but is too old for Python 3.12 +# See https://github.com/easybuilders/easybuild-easyconfigs/pull/21269#discussion_r1741570244 +max_py_majver = 3 +max_py_minver = 11 + +use_pip = True + +exts_list = [ + # stick to pip 21.3.1, which is compatible with Python 3.6 + # we still need pip outside of ReFrame's external dependencies, since the install cmd uses pip + ('pip', '21.3.1', { + 'use_pip': False, + 'checksums': ['fd11ba3d0fdb4c07fbc5ecbba0b1b719809420f25038f8ee3cd913d3faa3033a'], + }), + # Require new enough setuptools to install with e.g. pyproject.toml + # 59.6.0 is the latest compatible with Python 3.6 + ('setuptools', '59.6.0', { + 'use_pip': False, + 'source_urls': ['https://pypi.python.org/packages/source/s/setuptools/'], + 'checksums': ['22c7348c6d2976a52632c67f7ab0cdf40147db7789f9aed18734643fe9cf3373'], + }), + # stick to wheel 0.37.1, which is compatible with Python 3.6 + ('wheel', '0.37.1', { + 'source_tmpl': 'wheel-%(version)s-py2.py3-none-any.whl', + 'checksums': ['4bdcd7d840138086126cd09254dc6195fb4fc6f01c050a1d7236f2630db1d22a'], + }), + # 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': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +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'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb new file mode 100644 index 00000000000..26e331c131e --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.2.eb @@ -0,0 +1,91 @@ +easyblock = 'PythonBundle' + +name = 'ReFrame' +version = '4.6.2' + +homepage = 'https://github.com/reframe-hpc/reframe' +description = '''ReFrame is a framework for writing regression tests for HPC systems.''' + +toolchain = SYSTEM + +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +# Required by lxml, which is installed by ReFrame's bootstrap installer +osdependencies = [ + ('libxml2'), + ('libxslt', 'libxslt1.1'), +] + +# We use pip, setuptools and wheel compatible with Python 3.7 and above +# Note that ReFrame itself is compatible also with Python 3.6 +# As listed in the python_requires in https://github.com/reframe-hpc/reframe/blob/v4.6.2/setup.cfg +# To use with Python 3.6, please install ReFrame-4.6.2-Python-3.6.eb instead +req_py_majver = 3 +req_py_minver = 7 + +use_pip = True + +exts_list = [ + # stick to pip 24.0, which is compatible with Python 3.7 + # we still need pip outside of ReFrame's external dependencies, since the install cmd uses pip + ('pip', '24.0', { + 'use_pip': False, + 'checksums': ['ea9bd1a847e8c5774a5777bb398c19e80bcd4e2aa16a4b301b718fe6f593aba2'], + }), + # Require new enough setuptools to work with Python 3.12, which doesn't have pkgutil.ImpImporter anymore + # See https://github.com/pypa/setuptools/commit/6653e747c3815b140156249205397ef3719581ee + # 68.0.0 is the latest compatible with Python 3.7 + ('setuptools', '68.0.0', { + 'use_pip': False, + 'source_urls': ['https://pypi.python.org/packages/source/s/setuptools/'], + 'checksums': ['baf1fdb41c6da4cd2eae722e135500da913332ab3f2f5c7d33af9b492acb5235'], + }), + # stick to wheel 0.42.0, which is compatible with Python 3.7 + ('wheel', '0.42.0', { + 'source_tmpl': 'wheel-%(version)s-py3-none-any.whl', + 'checksums': ['177f9c9b0d45c47873b619f5b650346d632cdc35fb5e4d25058e09c9e581433d'], + }), + # 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': ['d3343815ee3d2c330b91a1cdb924ba184119ed7d9fc88a4a754b939a4259df82'], + }), +] + +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'] + +moduleclass = 'devel' 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..6541b14b799 --- /dev/null +++ b/easybuild/easyconfigs/r/ReFrame/ReFrame-4.6.3-GCCcore-13.3.0.eb @@ -0,0 +1,76 @@ +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 +] + +use_pip = True + +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/Redland/Redland-1.0.17-GCC-12.3.0.eb b/easybuild/easyconfigs/r/Redland/Redland-1.0.17-GCC-12.3.0.eb new file mode 100644 index 00000000000..7217999a898 --- /dev/null +++ b/easybuild/easyconfigs/r/Redland/Redland-1.0.17-GCC-12.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'Redland' +version = '1.0.17' + +homepage = 'https://librdf.org/raptor' +description = """Redland is a set of free software C libraries that + provide support for the Resource Description Framework (RDF).""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://download.librdf.org/source'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['de1847f7b59021c16bdc72abb4d8e2d9187cd6124d69156f3326dd34ee043681'] + +dependencies = [ + ('Rasqal', '0.9.33'), + ('Raptor', '2.0.16'), + ('PostgreSQL', '16.1'), + ('MariaDB', '11.6.0'), + ('unixODBC', '2.3.12'), + ('SQLite', '3.42.0'), + ('libtool', '2.4.7'), +] + +sanity_check_paths = { + 'files': [ + 'include/%(namelower)s.h', + 'bin/%(namelower)s-config', + 'bin/%(namelower)s-db-upgrade', + 'lib/librdf.%s' % SHLIB_EXT, + ], + 'dirs': ['share/%(namelower)s'], +} + +sanity_check_commands = ['%(namelower)s-config --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb b/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb new file mode 100644 index 00000000000..90b43c163a0 --- /dev/null +++ b/easybuild/easyconfigs/r/RepeatMasker/RepeatMasker-4.1.7-p1-foss-2023a.eb @@ -0,0 +1,57 @@ +easyblock = 'Tarball' + +name = 'RepeatMasker' +version = '4.1.7-p1' + +homepage = 'https://www.repeatmasker.org/' +description = """RepeatMasker is a program that screens DNA sequences for interspersed repeats + and low complexity DNA sequences.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://www.repeatmasker.org/%(name)s'] +sources = [ + SOURCE_TAR_GZ, + # optional but recommended: RepBase RepeatMasker Edition + # requires subscription and academic license, download from here: https://www.girinst.org/server/RepBase/index.php + # { + # 'filename': 'RepBaseRepeatMaskerEdition-20181026.tar.gz', + # 'extract_cmd': "tar -xzf %s -C %(builddir)s/%(name)s/Libraries --strip-components 1", + # }, +] +checksums = ['15222b39178f19c116282437190b64c5ba68f62b0f2044b3bbcbda5e02748993'] + +dependencies = [ + ('Python', '3.11.3'), + ('Perl', '5.36.1'), + ('TRF', '4.09.1'), + ('h5py', '3.9.0'), + # At least one search engine of: RMBlast, HMMER, ABBlast/WUBlast, Cross_Match + ('HMMER', '3.4'), + ('RMBlast', '2.14.1'), +] + +local_default_search_engine = 'RMBlast' + +local_config_command = 'cd %(installdir)s &&' +local_config_command += './configure -perlbin "$EBROOTPERL/bin/perl" -trf_prgm "$EBROOTTRF/bin/trf" ' +local_config_command += '-hmmer_dir "$EBROOTHMMER/bin" -rmblast_dir "$EBROOTRMBLAST/bin" ' +local_config_command += '-default_search_engine %s' % local_default_search_engine.lower() + +postinstallcmds = [local_config_command] + +fix_perl_shebang_for = ['RepeatMasker'] + +sanity_check_paths = { + 'files': ['RepeatMasker', 'RepeatMaskerConfig.pm'], + 'dirs': ['Libraries', 'util'], +} + +sanity_check_commands = ['RepeatMasker -help'] + +modextrapaths = { + 'PATH': '', + 'PERL5LIB': '', +} + +moduleclass = 'bio' 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/Rmath/Rmath-4.3.2-foss-2023a.eb b/easybuild/easyconfigs/r/Rmath/Rmath-4.3.2-foss-2023a.eb new file mode 100644 index 00000000000..8378d7f8a8e --- /dev/null +++ b/easybuild/easyconfigs/r/Rmath/Rmath-4.3.2-foss-2023a.eb @@ -0,0 +1,46 @@ +# Easyconfig for Rmath +# Author: Caspar van Leeuwen +# SURFsara, Amsterdam, The Netherlands + +easyblock = 'ConfigureMake' + +name = 'Rmath' +version = '4.3.2' + +homepage = "https://www.r-project.org/" +description = """Rmath is the standalone version of the R math library. + Rmath can be used in your own C/C++ routines.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['http://cran.us.r-project.org/src/base/R-%(version_major)s/'] +sources = ['R-%(version)s.tar.gz'] +checksums = ['b3f5760ac2eee8026a3f0eefcb25b47723d978038eee8e844762094c860c452a'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('cURL', '8.0.1'), + ('libreadline', '8.2'), + ('PCRE2', '10.42'), + ('XZ', '5.4.2'), + ('zlib', '1.2.13') +] + +# Copied from R-3.3.1-intel-2016b.eb. +# Again, unsure if these affect R-math: R documentation doesn't specify. +configopts = "--with-pic --enable-threads --with-x=no --with-pcre2" + +# Since we're only installing Rmath anyway, we don't care about R packages. +configopts += " --with-recommended-packages=no" + +# To build Rmath, docs say you need to execute 'make' in src/nmath/standalone +# https://cran.r-project.org/doc/manuals/r-devel/R-admin.html#Configuration-options +prebuildopts = 'cd src/nmath/standalone;' +preinstallopts = prebuildopts + +sanity_check_paths = { + 'files': ['lib/libRmath.a', 'lib/libRmath.%s' % SHLIB_EXT, 'include/Rmath.h'], + 'dirs': [] +} + +moduleclass = 'numlib' 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/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5a6e44436d9 --- /dev/null +++ b/easybuild/easyconfigs/r/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb @@ -0,0 +1,41 @@ +# This seems to be actively maintained version of the code by the looks of it. +# See issue #5 +# https://github.com/somme89/rapidNJ/issues/5 +# why -march=native will not be used +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MakeCp' + +name = 'rapidNJ' +version = '2.3.3' + +homepage = 'https://github.com/somme89/rapidNJ' +description = """RapidNJ is an algorithmic engineered implementation of canonical +neighbour-joining. It uses an efficient search heuristic to speed-up the core +computations of the neighbour-joining method that enables RapidNJ to +outperform other state-of-the-art neighbour-joining implementations.""" + +citing = """Rapid Neighbour Joining. Martin Simonsen, Thomas Mailund and Christian N. S. Pedersen. +In: Proceedings of the 8th Workshop in Algorithms in Bioinformatics (WABI), LNBI 5251, 113-122, +Springer Verlag, October 2008. +doi: 10.1007/978-3-540-87361-7_10""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/somme89/rapidNJ/archive/'] +sources = [{'filename': 'v%(version)s.tar.gz', 'download_filename': 'latest.tar.gz'}] +checksums = ['662f864cc3e5bc68aea23129f02e0062cac9ebd37e414b54c5c5e616ff4f245d'] + +builddependencies = [('binutils', '2.40')] + +files_to_copy = [(['bin/rapidnj'], 'bin')] + +# That is returning 1 instead of 0, so disabled for now +# sanity_check_commands = ['rapidnj --help'] + +sanity_check_paths = { + 'files': ['bin/rapidnj'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb b/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb new file mode 100644 index 00000000000..12c72ff4ab8 --- /dev/null +++ b/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb @@ -0,0 +1,34 @@ +easyblock = 'GoPackage' + +name = 'rclone' +version = '1.68.1' + +homepage = 'https://rclone.org' + +description = """ + Rclone is a command line program to sync files and directories to and from + a variety of online storage services +""" + +toolchain = SYSTEM + +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['26259526855a12499d00e3a3135ee95e7aeb3ecf2f85886d8c837a2e7b236226'] + +builddependencies = [('Go', '1.22.1', '', SYSTEM)] + +postinstallcmds = [ + "mkdir -p %(installdir)s/share/{doc,man/man1}", + "cp README.* MANUAL.* %(installdir)s/share/doc/", + "cp rclone.1 %(installdir)s/share/man/man1/", +] + +sanity_check_paths = { + 'files': ['bin/rclone', 'share/doc/README.md', 'share/man/man1/rclone.1'], + 'dirs': [] +} + +sanity_check_commands = ['rclone --version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/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/read2tree/read2tree-0.1.5-foss-2023a.eb b/easybuild/easyconfigs/r/read2tree/read2tree-0.1.5-foss-2023a.eb new file mode 100644 index 00000000000..64d84b4a1ec --- /dev/null +++ b/easybuild/easyconfigs/r/read2tree/read2tree-0.1.5-foss-2023a.eb @@ -0,0 +1,58 @@ +easyblock = 'PythonBundle' + +name = 'read2tree' +version = '0.1.5' + +homepage = 'https://github.com/DessimozLab/read2tree' +description = """read2tree is a software tool that allows to obtain alignment matrices for tree inference. + For this purpose it makes use of the OMA database and a set of reads. Its strength lies in the fact that + it bipasses the several standard steps when obtaining such a matrix in regular analysis. These steps are + read filtereing, assembly, gene prediction, gene annotation, all vs all comparison, orthology prediction, + alignment and concatination.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('ETE', '3.1.3'), + ('lxml', '4.9.2'), + ('tqdm', '4.66.1'), + ('pyparsing', '3.1.1'), + ('PyYAML', '6.0'), + ('DendroPy', '4.6.1'), + ('MAFFT', '7.520', '-with-extensions'), + ('IQ-TREE', '2.3.5'), + ('ngmlr', '0.2.7'), + ('NextGenMap', '0.5.5'), + ('SAMtools', '1.18'), + ('Pysam', '0.22.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('natsort', '8.4.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['4732914fb471f56b5cce04d7bae6f164a592c7712e1c85f9ef585e197299521c'], + }), + ('filelock', '3.16.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['2082e5703d51fbf98ea75855d9d5527e33d8ff23099bec374a134febee6946b0'], + }), + ('pyham', '1.2.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['57c91020ceb4d55dc5e8bfff40ad83d2410e15dad35f2d5c4bcbf4451031ad88'], + }), + (name, version, { + 'source_urls': ['https://github.com/DessimozLab/read2tree/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['c1a7f4801c0abc4742ff03c9af4e8817e4e8c9aa9ced0735e2275df2c7dd8e3d'], + }), +] + +sanity_check_commands = ['%(name)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/redis-py/redis-py-5.0.9-GCCcore-13.2.0.eb b/easybuild/easyconfigs/r/redis-py/redis-py-5.0.9-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b877029e19a --- /dev/null +++ b/easybuild/easyconfigs/r/redis-py/redis-py-5.0.9-GCCcore-13.2.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'redis-py' +version = '5.0.9' + +homepage = 'https://github.com/redis/redis-py' +description = "The Python interface to the Redis key-value store." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('typing-extensions', '4.10.0'), + ('Redis', '7.2.4'), +] + +use_pip = True + +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': ['c107fddbaa40414559ddd21f0a78bc7d466cd6b20a800839ac18b9bb54e5c150'], + }), +] + +sanity_pip_check = True + +moduleclass = "data" 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..257c413dbaa --- /dev/null +++ b/easybuild/easyconfigs/r/redis-py/redis-py-5.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,37 @@ +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'), +] + +use_pip = True + +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'], + }), +] + +sanity_pip_check = True + +moduleclass = "data" diff --git a/easybuild/easyconfigs/r/rjags/rjags-4-15-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/r/rjags/rjags-4-15-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..f793f925da6 --- /dev/null +++ b/easybuild/easyconfigs/r/rjags/rjags-4-15-foss-2023a-R-4.3.2.eb @@ -0,0 +1,30 @@ +easyblock = 'RPackage' + +name = 'rjags' +version = '4-15' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/rjags' +description = """The rjags package is an interface to the JAGS library.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [ + 'https://cran.r-project.org/src/contrib/', + 'https://cran.r-project.org/src/contrib/Archive/rjags/', +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['35cd4c1faaaa8523b87ac053b881dccf29798f073f438459589e786b95ef18a1'] + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('JAGS', '4.3.2'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['rjags'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..742dabcaa85 --- /dev/null +++ b/easybuild/easyconfigs/r/rnamotif/rnamotif-20240904-GCCcore-12.3.0.eb @@ -0,0 +1,44 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'MakeCp' + +name = 'rnamotif' +version = '20240904' +_commit = '697ee7fda4ff2f5181a33c0c3eac54d7b97409fa' + +homepage = "https://github.com/dacase/rnamotif" +description = """The rnamotif program searchs input sequences for portions that match a given descriptor or "motif". + Matching sequences can also be ranked by various scoring functions.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'dacase' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % _commit] +checksums = ['e9432e128ce7f1bfcf4898a36d56435272ad9b4e2d37f1866a95aa159c81fdfe'] + +builddependencies = [ + ('binutils', '2.40'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + +] + +prebuildopts = 'sed -i "s/CFLAGS= -O2 -Wall/CFLAGS=$CFLAGS/" config.h &&' +pretestopts = 'EFNDATA=%%(builddir)s/%%(name)s-%s/efndata' % _commit +runtest = 'test' + +files_to_copy = [ + (['src/rnamotif', 'src/rmprune', 'src/rmfmt', 'src/rm2ct'], 'bin'), + 'LICENSE', 'efndata', 'Ecoli.trna.example', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': ['efndata'], +} + +sanity_check_commands = ['rnamotif -h 2>&1 | grep usage'] + +modextravars = {'EFNDATA': 'efndata'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/ruamel.yaml/ruamel.yaml-0.18.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/r/ruamel.yaml/ruamel.yaml-0.18.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..48d0b0d8bb5 --- /dev/null +++ b/easybuild/easyconfigs/r/ruamel.yaml/ruamel.yaml-0.18.6-GCCcore-13.3.0.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'ruamel.yaml' +version = '0.18.6' + +homepage = 'https://sourceforge.net/projects/ruamel-yaml' +description = "ruamel.yaml is a YAML 1.2 loader/dumper package for Python." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('poetry', '1.8.3'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True + +exts_list = [ + ('ruamel.yaml.jinja2', '0.2.7', { + 'checksums': ['8449be29d9a157fa92d1648adc161d718e469f0d38a6b21e0eabb76fd5b3e663'], + }), + ('ruamel.yaml.clib', '0.2.8', { + 'modulename': False, + 'checksums': ['beb2e0404003de9a4cab9753a8805a8fe9320ee6673136ed7f04255fe60bb512'], + }), + (name, version, { + 'checksums': ['8b27e6a217e786c6fbe5634d8f3f11bc63e0f80f6a5890f28863d9c45aac311b'], + }), + ('configobj', '5.0.8', { + 'checksums': ['6f704434a07dc4f4dc7c9a745172c1cad449feb548febd9f7fe362629c627a97'], + }), + ('lz4', '4.3.3', { + 'checksums': ['01fe674ef2889dbb9899d8a67361e0c4a2c833af5aeb37dd505727cf5d2a131e'], + }), + ('ruamel.yaml.base', '0.3.2', { + 'checksums': ['88b6edc8ace60c12d98f05fda22e5d9d69ba9a4b531cf54783142151145b0372'], + }), + ('ruamel.yaml.convert', '0.3.2', { + 'checksums': ['065ed9492a3189291d5bc0256709afc0231b52e4a01376fc91cf1757560ac9c4'], + }), + ('ruamel.yaml.cmd', '0.6.5', { + 'checksums': ['49af59514cb87d7637d1186e31c9345c9947120a9ce49cf6975435aa7abd5aa8'], + }), +] + +sanity_check_paths = { + 'files': ['bin/yaml'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["yaml --help"] + +sanity_pip_check = True + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb new file mode 100644 index 00000000000..2a86b64c9ae --- /dev/null +++ b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.12.1-foss-2023a.eb @@ -0,0 +1,170 @@ +easyblock = "CargoPythonPackage" + +name = 'rustworkx' +version = '0.12.1' + +homepage = 'https://github.com/Qiskit/rustworkx' +description = """rustworkx (previously retworkx) is a general purpose graph library for Python written in Rust to take +advantage of the performance and safety that Rust provides. It is designed to provide a high performance general +purpose graph library for any Python application.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('Rust', '1.75.0'), + ('setuptools-rust', '1.6.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +crates = [ + ('ahash', '0.7.6'), + ('autocfg', '1.1.0'), + ('bitflags', '1.3.2'), + ('cfg-if', '1.0.0'), + ('crossbeam-channel', '0.5.4'), + ('crossbeam-deque', '0.8.1'), + ('crossbeam-epoch', '0.9.8'), + ('crossbeam-utils', '0.8.8'), + ('either', '1.6.1'), + ('fixedbitset', '0.4.2'), + ('getrandom', '0.2.6'), + ('hashbrown', '0.11.2'), + ('hermit-abi', '0.1.19'), + ('indexmap', '1.7.0'), + ('indoc', '1.0.6'), + ('instant', '0.1.12'), + ('itoa', '1.0.2'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.126'), + ('lock_api', '0.4.7'), + ('matrixmultiply', '0.2.4'), + ('memchr', '2.5.0'), + ('memoffset', '0.6.5'), + ('ndarray', '0.13.1'), + ('num-bigint', '0.4.3'), + ('num-complex', '0.2.4'), + ('num-complex', '0.4.1'), + ('num-integer', '0.1.45'), + ('num-traits', '0.2.15'), + ('num_cpus', '1.13.1'), + ('numpy', '0.17.2'), + ('once_cell', '1.12.0'), + ('parking_lot', '0.11.2'), + ('parking_lot_core', '0.8.5'), + ('petgraph', '0.6.2'), + ('ppv-lite86', '0.2.16'), + ('priority-queue', '1.2.0'), + ('proc-macro2', '1.0.39'), + ('pyo3', '0.17.3'), + ('pyo3-build-config', '0.17.3'), + ('pyo3-ffi', '0.17.3'), + ('pyo3-macros', '0.17.3'), + ('pyo3-macros-backend', '0.17.3'), + ('quick-xml', '0.22.0'), + ('quote', '1.0.18'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.3'), + ('rand_pcg', '0.3.1'), + ('rawpointer', '0.2.1'), + ('rayon', '1.5.3'), + ('rayon-core', '1.9.3'), + ('redox_syscall', '0.2.13'), + ('ryu', '1.0.10'), + ('scopeguard', '1.1.0'), + ('serde', '1.0.145'), + ('serde_derive', '1.0.145'), + ('serde_json', '1.0.89'), + ('smallvec', '1.8.0'), + ('syn', '1.0.96'), + ('target-lexicon', '0.12.4'), + ('unicode-ident', '1.0.0'), + ('unindent', '0.1.9'), + ('version_check', '0.9.4'), + ('wasi', '0.10.2+wasi-snapshot-preview1'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), +] +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + {'rustworkx-0.12.1.tar.gz': '13a19a2f64dff086b3bffffb294c4630100ecbc13634b4995d9d36a481ae130e'}, + {'ahash-0.7.6.tar.gz': 'fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'crossbeam-channel-0.5.4.tar.gz': '5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53'}, + {'crossbeam-deque-0.8.1.tar.gz': '6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e'}, + {'crossbeam-epoch-0.9.8.tar.gz': '1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c'}, + {'crossbeam-utils-0.8.8.tar.gz': '0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38'}, + {'either-1.6.1.tar.gz': 'e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'getrandom-0.2.6.tar.gz': '9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad'}, + {'hashbrown-0.11.2.tar.gz': 'ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'indexmap-1.7.0.tar.gz': 'bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5'}, + {'indoc-1.0.6.tar.gz': '05a0bd019339e5d968b37855180087b7b9d512c5046fbd244cf8c95687927d6e'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'itoa-1.0.2.tar.gz': '112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.126.tar.gz': '349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836'}, + {'lock_api-0.4.7.tar.gz': '327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53'}, + {'matrixmultiply-0.2.4.tar.gz': '916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1'}, + {'memchr-2.5.0.tar.gz': '2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d'}, + {'memoffset-0.6.5.tar.gz': '5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce'}, + {'ndarray-0.13.1.tar.gz': 'ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09'}, + {'num-bigint-0.4.3.tar.gz': 'f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f'}, + {'num-complex-0.2.4.tar.gz': 'b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95'}, + {'num-complex-0.4.1.tar.gz': '97fbc387afefefd5e9e39493299f3069e14a140dd34dc19b4c1c1a8fddb6a790'}, + {'num-integer-0.1.45.tar.gz': '225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9'}, + {'num-traits-0.2.15.tar.gz': '578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd'}, + {'num_cpus-1.13.1.tar.gz': '19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1'}, + {'numpy-0.17.2.tar.gz': 'a462c1af5ba1fddec1488c4646993a23ae7931f9e170ccba23e9c7c834277797'}, + {'once_cell-1.12.0.tar.gz': '7709cef83f0c1f58f666e746a08b21e0085f7440fa6a29cc194d68aac97a4225'}, + {'parking_lot-0.11.2.tar.gz': '7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99'}, + {'parking_lot_core-0.8.5.tar.gz': 'd76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216'}, + {'petgraph-0.6.2.tar.gz': 'e6d5014253a1331579ce62aa67443b4a658c5e7dd03d4bc6d302b94474888143'}, + {'ppv-lite86-0.2.16.tar.gz': 'eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872'}, + {'priority-queue-1.2.0.tar.gz': 'cf40e51ccefb72d42720609e1d3c518de8b5800d723a09358d4a6d6245e1f8ca'}, + {'proc-macro2-1.0.39.tar.gz': 'c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f'}, + {'pyo3-0.17.3.tar.gz': '268be0c73583c183f2b14052337465768c07726936a260f480f0857cb95ba543'}, + {'pyo3-build-config-0.17.3.tar.gz': '28fcd1e73f06ec85bf3280c48c67e731d8290ad3d730f8be9dc07946923005c8'}, + {'pyo3-ffi-0.17.3.tar.gz': '0f6cb136e222e49115b3c51c32792886defbfb0adead26a688142b346a0b9ffc'}, + {'pyo3-macros-0.17.3.tar.gz': '94144a1266e236b1c932682136dc35a9dee8d3589728f68130c7c3861ef96b28'}, + {'pyo3-macros-backend-0.17.3.tar.gz': 'c8df9be978a2d2f0cdebabb03206ed73b11314701a5bfe71b0d753b81997777f'}, + {'quick-xml-0.22.0.tar.gz': '8533f14c8382aaad0d592c812ac3b826162128b65662331e1127b45c3d18536b'}, + {'quote-1.0.18.tar.gz': 'a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.3.tar.gz': 'd34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7'}, + {'rand_pcg-0.3.1.tar.gz': '59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.5.3.tar.gz': 'bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d'}, + {'rayon-core-1.9.3.tar.gz': '258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f'}, + {'redox_syscall-0.2.13.tar.gz': '62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42'}, + {'ryu-1.0.10.tar.gz': 'f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695'}, + {'scopeguard-1.1.0.tar.gz': 'd29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd'}, + {'serde-1.0.145.tar.gz': '728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b'}, + {'serde_derive-1.0.145.tar.gz': '81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c'}, + {'serde_json-1.0.89.tar.gz': '020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db'}, + {'smallvec-1.8.0.tar.gz': 'f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83'}, + {'syn-1.0.96.tar.gz': '0748dd251e24453cb8717f0354206b91557e4ec8703673a4b30208f2abaf1ebf'}, + {'target-lexicon-0.12.4.tar.gz': 'c02424087780c9b71cc96799eaeddff35af2bc513278cda5c99fc1f5d026d3c1'}, + {'unicode-ident-1.0.0.tar.gz': 'd22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee'}, + {'unindent-0.1.9.tar.gz': '52fee519a3e570f7df377a06a1a7775cdbfb7aa460be7e08de2b1f0e69973a44'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.10.2+wasi-snapshot-preview1.tar.gz': 'fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6'}, + {'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'}, +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/rustworkx/rustworkx-0.15.1-gfbf-2023a.eb b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.15.1-gfbf-2023a.eb new file mode 100644 index 00000000000..48f1a6bfee0 --- /dev/null +++ b/easybuild/easyconfigs/r/rustworkx/rustworkx-0.15.1-gfbf-2023a.eb @@ -0,0 +1,216 @@ +easyblock = "CargoPythonPackage" + +name = 'rustworkx' +version = '0.15.1' +# needs ahash 0.8.11 which uses build_hasher_simple_hash_one which needs rustc>=1.71 +# see https://github.com/rust-lang/rust/issues/86161 +_rust_ver = '1.75.0' + +homepage = 'https://github.com/Qiskit/rustworkx' +description = """rustworkx (previously retworkx) is a general purpose graph library for Python written in Rust to take +advantage of the performance and safety that Rust provides. It is designed to provide a high performance general +purpose graph library for any Python application.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +builddependencies = [ + ('Rust', _rust_ver), + ('setuptools-rust', '1.6.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +crates = [ + ('ahash', '0.8.11'), + ('alga', '0.9.3'), + ('allocator-api2', '0.2.18'), + ('approx', '0.3.2'), + ('autocfg', '1.3.0'), + ('bitflags', '2.6.0'), + ('cfg-if', '1.0.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.20'), + ('either', '1.13.0'), + ('equivalent', '1.0.1'), + ('fixedbitset', '0.4.2'), + ('getrandom', '0.2.15'), + ('hashbrown', '0.12.3'), + ('hashbrown', '0.14.5'), + ('heck', '0.4.1'), + ('hermit-abi', '0.3.9'), + ('indexmap', '1.9.3'), + ('indexmap', '2.2.6'), + ('indoc', '2.0.5'), + ('itertools', '0.10.5'), + ('itertools', '0.11.0'), + ('itoa', '1.0.11'), + ('libc', '0.2.155'), + ('libm', '0.2.8'), + ('lock_api', '0.4.12'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.7.4'), + ('memoffset', '0.9.1'), + ('ndarray', '0.15.6'), + ('ndarray-stats', '0.5.1'), + ('noisy_float', '0.2.0'), + ('num-bigint', '0.4.6'), + ('num-complex', '0.2.4'), + ('num-complex', '0.4.6'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.19'), + ('num_cpus', '1.16.0'), + ('numpy', '0.21.0'), + ('once_cell', '1.19.0'), + ('parking_lot', '0.12.3'), + ('parking_lot_core', '0.9.10'), + ('petgraph', '0.6.5'), + ('portable-atomic', '1.6.0'), + ('ppv-lite86', '0.2.17'), + ('priority-queue', '2.0.3'), + ('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'), + ('quick-xml', '0.34.0'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_pcg', '0.3.1'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-cond', '0.3.0'), + ('rayon-core', '1.12.1'), + ('redox_syscall', '0.5.2'), + ('rustc-hash', '1.1.0'), + ('ryu', '1.0.18'), + ('scopeguard', '1.2.0'), + ('serde', '1.0.203'), + ('serde_derive', '1.0.203'), + ('serde_json', '1.0.118'), + ('smallvec', '1.13.2'), + ('sprs', '0.11.1'), + ('syn', '2.0.68'), + ('target-lexicon', '0.12.14'), + ('unicode-ident', '1.0.12'), + ('unindent', '0.2.3'), + ('version_check', '0.9.4'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('windows-targets', '0.52.5'), + ('windows_aarch64_gnullvm', '0.52.5'), + ('windows_aarch64_msvc', '0.52.5'), + ('windows_i686_gnu', '0.52.5'), + ('windows_i686_gnullvm', '0.52.5'), + ('windows_i686_msvc', '0.52.5'), + ('windows_x86_64_gnu', '0.52.5'), + ('windows_x86_64_gnullvm', '0.52.5'), + ('windows_x86_64_msvc', '0.52.5'), + ('zerocopy', '0.7.34'), + ('zerocopy-derive', '0.7.34'), +] + +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + {'rustworkx-0.15.1.tar.gz': '0e0cc86599f979285b2ab9c357276f3272f3fcb3b2df5651a6bf9704c570d4c1'}, + {'ahash-0.8.11.tar.gz': 'e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011'}, + {'alga-0.9.3.tar.gz': '4f823d037a7ec6ea2197046bafd4ae150e6bc36f9ca347404f46a46823fa84f2'}, + {'allocator-api2-0.2.18.tar.gz': '5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f'}, + {'approx-0.3.2.tar.gz': 'f0e60b75072ecd4168020818c0107f2857bb6c4e64252d8d3983f6263b40a5c3'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'fixedbitset-0.4.2.tar.gz': '0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'hashbrown-0.14.5.tar.gz': 'e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.3.9.tar.gz': 'd231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indexmap-2.2.6.tar.gz': '168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26'}, + {'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'libc-0.2.155.tar.gz': '97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c'}, + {'libm-0.2.8.tar.gz': '4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058'}, + {'lock_api-0.4.12.tar.gz': '07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'ndarray-stats-0.5.1.tar.gz': 'af5a8477ac96877b5bd1fd67e0c28736c12943aba24eda92b127e036b0c8f400'}, + {'noisy_float-0.2.0.tar.gz': '978fe6e6ebc0bf53de533cd456ca2d9de13de13856eda1518a285d7705a213af'}, + {'num-bigint-0.4.6.tar.gz': 'a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9'}, + {'num-complex-0.2.4.tar.gz': 'b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95'}, + {'num-complex-0.4.6.tar.gz': '73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'num_cpus-1.16.0.tar.gz': '4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43'}, + {'numpy-0.21.0.tar.gz': 'ec170733ca37175f5d75a5bea5911d6ff45d2cd52849ce98b685394e4f2f37f4'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'parking_lot-0.12.3.tar.gz': 'f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27'}, + {'parking_lot_core-0.9.10.tar.gz': '1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8'}, + {'petgraph-0.6.5.tar.gz': 'b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db'}, + {'portable-atomic-1.6.0.tar.gz': '7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'priority-queue-2.0.3.tar.gz': '70c501afe3a2e25c9bd219aa56ec1e04cdb3fcdd763055be268778c13fa82c1f'}, + {'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'}, + {'quick-xml-0.34.0.tar.gz': '6f24d770aeca0eacb81ac29dfbc55ebcc09312fdd1f8bbecdc7e4a84e000e3b4'}, + {'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_pcg-0.3.1.tar.gz': '59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e'}, + {'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.5.2.tar.gz': 'c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'serde-1.0.203.tar.gz': '7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094'}, + {'serde_derive-1.0.203.tar.gz': '500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba'}, + {'serde_json-1.0.118.tar.gz': 'd947f6b3163d8857ea16c4fa0dd4840d52f3041039a85decd46867eb1abef2e4'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'sprs-0.11.1.tar.gz': '88bab60b0a18fb9b3e0c26e92796b3c3a278bf5fa4880f5ad5cc3bdfb843d0b1'}, + {'syn-2.0.68.tar.gz': '901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9'}, + {'target-lexicon-0.12.14.tar.gz': 'e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'windows-targets-0.52.5.tar.gz': '6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb'}, + {'windows_aarch64_gnullvm-0.52.5.tar.gz': '7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263'}, + {'windows_aarch64_msvc-0.52.5.tar.gz': '9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6'}, + {'windows_i686_gnu-0.52.5.tar.gz': '88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670'}, + {'windows_i686_gnullvm-0.52.5.tar.gz': '87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9'}, + {'windows_i686_msvc-0.52.5.tar.gz': 'db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf'}, + {'windows_x86_64_gnu-0.52.5.tar.gz': '4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9'}, + {'windows_x86_64_gnullvm-0.52.5.tar.gz': '852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596'}, + {'windows_x86_64_msvc-0.52.5.tar.gz': 'bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0'}, + {'zerocopy-0.7.34.tar.gz': 'ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087'}, + {'zerocopy-derive-0.7.34.tar.gz': '15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b'}, +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' 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..775ce37b311 --- /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/SCENICplus/SCENICplus-1.0a1-20240513-foss-2023a.eb b/easybuild/easyconfigs/s/SCENICplus/SCENICplus-1.0a1-20240513-foss-2023a.eb new file mode 100644 index 00000000000..796eb9a63b6 --- /dev/null +++ b/easybuild/easyconfigs/s/SCENICplus/SCENICplus-1.0a1-20240513-foss-2023a.eb @@ -0,0 +1,279 @@ +easyblock = 'PythonBundle' + +name = 'SCENICplus' +version = '1.0a1-20240513' +local_commit = "fa55dae" + +homepage = 'https://github.com/aertslab/scenicplus' +description = """SCENIC+ is a python package to build gene regulatory networks (GRNs) +using combined or separate single-cell gene expression (scRNA-seq) and single-cell +chromatin accessibility (scATAC-seq) data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), + ('maturin', '1.4.0', '-Rust-1.75.0'), + ('CMake', '3.26.3'), +] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('Single-cell-python-bundle', '2024.02'), + ('anndata', '0.10.5.post1'), + ('BeautifulSoup', '4.12.2'), + ('h5py', '3.9.0'), + ('python-igraph', '0.11.4'), + ('imageio', '2.33.1'), + ('leidenalg', '0.10.2'), + ('lxml', '4.9.2'), + ('MACS2', '2.2.9.1'), + ('numba', '0.58.1'), + ('polars', '0.20.2'), + ('Arrow', '14.0.1'), + ('plotly.py', '5.16.0'), + ('pybedtools', '0.9.1'), + ('pyBigWig', '0.3.22'), + ('pyGAM', '0.9.1'), + ('Pysam', '0.22.0'), + ('Ray-project', '2.9.1'), + ('scikit-image', '0.22.0'), + ('snakemake', '8.4.2'), + ('statsmodels', '0.14.1'), + ('IPython', '8.14.0'), + ('Pandoc', '3.1.2', '', SYSTEM), + ('ipympl', '0.9.3'), + ('PyTables', '3.8.0'), + ('Sphinx-RTD-Theme', '2.0.0'), + ('scrublet', '0.2.3'), + ('numexpr', '2.9.0'), + ('Kaleido', '0.2.1'), + ('pyfasta', '0.5.2'), + ('gensim', '4.3.2'), +] + +# fix requirements.txt of scenicplus +local_preinstallopts = ( + "sed -i" + " -e '/typing==3.7.4.3/d'" + " -e 's/==.*//g'" + " -e '/pyarrow-hotfix/d'" + " -e '/line-profiler/d'" + " -e '/ndindex/d'" + " -e '/sinfo/d'" + " requirements.txt && " +) +# unpin version restriction and delete typing requirement +local_pycistopic_preinstallopts = ( + "sed -i" + " -e 's/pyscenic>=0.12.0/pyscenic/'" + " -e 's/pandas==1.5/pandas/'" + " -e 's/python-Levenshtein/Levenshtein/'" + " -e 's/python-igraph/igraph/'" + " -e '/typing/d'" + # delete pyscenic and loomxpy req from commit - have versions now + " -e '/pyscenic@git/d'" + " -e '/loomxpy@git/d'" + " requirements.txt && " + "sed -i" + " -e 's/pandas == 1.5/pandas/'" + " -e 's/matplotlib < 3.7/matplotlib/'" + " pyproject.toml && " +) +# delete typing from requirements +local_pycistarget_preinstallopts = "sed -i '/typing/d' requirements.txt && " +# unpin version restriction and delete poetry.lock +local_loomxpy_preinstallopts = "sed -i 's/pyscenic>=0.12.0/pyscenic/' requirements.txt && " +local_loomxpy_preinstallopts += "sed -i 's/pyscenic = \">=0.12.0\"/pyscenic = \"*\"/' pyproject.toml && " +local_loomxpy_preinstallopts += "rm poetry.lock && " + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('bs4', '0.0.2', { + 'checksums': ['a48685c58f50fe127722417bae83fe6badf500d54b55f7e39ffe43b798653925'], + }), + ('attr', '0.3.2', { + 'checksums': ['1ceebca768181cdcce9827611b1d728e592be5d293911539ea3d0b0bfa1146f4'], + }), + ('attrs', '23.2.0', { + 'checksums': ['935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30'], + }), + ('lda', '3.0.0', { + 'checksums': ['c9acbc1c55d2928f7e3e2336352b3382d78e43dbb0d12bf9ed97f87bce6d6708'], + }), + ('zope.interface', '6.2', { + 'checksums': ['3b6c62813c63c543a06394a636978b22dffa8c5410affc9331ce6cdb5bfa8565'], + }), + ('zope.event', '5.0', { + 'checksums': ['bac440d8d9891b4068e2b5a2c5e2c9765a9df762944bda6955f96bb9b91e67cd'], + }), + ('gevent', '24.2.1', { + 'checksums': ['432fc76f680acf7cf188c2ee0f5d3ab73b63c1f03114c7cd8a34cebbe5aa2056'], + }), + ('xmltodict', '0.13.0', { + 'checksums': ['341595a488e3e01a85a9d8911d8912fd922ede5fecc4dce437eb4b6c8d037e56'], + }), + ('suds-community', '1.1.2', { + 'modulename': 'suds', + 'checksums': ['883b4173ad23e7b20e9779ac7238b06140c50d7852afd5dc49dad1ea5f5a3d08'], + }), + ('grequests', '0.7.0', { + 'checksums': ['5c33f14268df5b8fa1107d8537815be6febbad6ec560524d6a404b7778cf6ba6'], + }), + ('pexpect', '4.9.0', { + 'checksums': ['ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f'], + }), + ('colorlog', '6.8.2', { + 'checksums': ['3e3e079a41feb5a1b64f978b5ea4f46040a94f11f0e8bbb8261e3dbbeca64d44'], + }), + ('easydev', '0.12.1', { + 'checksums': ['b47b7e6f75316ac9045b46487930e16ddb567f3899310deee11d72d8e1f0a231'], + }), + ('bioservices', '1.11.2', { + 'checksums': ['31baaab4ab813b93f79995ba8cad431a16cbee99e1b0c6f9e419dd4be0c73a9e'], + }), + ('gseapy', '0.10.8', { + 'checksums': ['15be80bac73768501f5cecf6751aeb2e41416fd144bd6daa2ec453ad08a10ce0'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('pybigtools', '0.1.2', { + 'checksums': ['0f21bc8b4f2dce67c6e5287af895f5f28a8c6eb123d809e3ab5679e2131dbf58'], + }), + ('pybiomart', '0.2.0', { + 'checksums': ['e9eac20db921820670c646d99725b0ee279e407379e5e8c3ec7245a07425d8fe'], + }), + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('pyranges', '0.0.111', { + 'checksums': ['d2cf3c31c1b9c6e1bf6e1e89254d8bd993bfb4401f2c4ede0ebc9c8e0678147d'], + }), + ('pyrle', '0.0.39', { + 'checksums': ['1be4be7814d3941db907aaf19f311bd46a407244316cadbf4b73109685c055c5'], + }), + ('pyvis', '0.3.2', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['5720c4ca8161dc5d9ab352015723abb7a8bb8fb443edeb07f7a322db34a97555'], + }), + ('url-normalize', '1.4.3', { + 'checksums': ['d23d3a070ac52a67b83a1c59a0e68f8608d1cd538783b401bc9de2c0fac999b2'], + }), + ('cattrs', '23.2.3', { + 'checksums': ['a934090d95abaa9e911dac357e3a8699e0b4b14f8529bcc7d2b1ad9d51672b9f'], + }), + ('requests_cache', '1.2.0', { + 'checksums': ['db1c709ca343cc1cd5b6c8b1a5387298eceed02306a6040760db538c885e3838'], + }), + ('scanorama', '1.7.4', { + 'checksums': ['67de100e63abc3028c7780d3a217e43e920a5781230bc6b6a51349d4605e005c'], + }), + ('rich_argparse', '1.4.0', { + 'checksums': ['c275f34ea3afe36aec6342c2a2298893104b5650528941fb53c21067276dba19'], + }), + ('scatac_fragment_tools', '0.1.0', { + 'checksums': ['e77a03ad1b7170c212f1ac672dad2c5d7e7f091b94e47b36a2ec2adc42051857'], + }), + ('snakemake_interface_common', '1.17.1', { + 'checksums': ['555c8218d9b68ddc1046f94a517e7d0f22e15bdc839d6ce149608d8ec137b9ae'], + }), + ('snakemake_interface_report_plugins', '1.0.0', { + 'checksums': ['02311cdc4bebab2a1c28469b5e6d5c6ac6e9c66998ad4e4b3229f1472127490f'], + }), + ('statistics', '1.0.3.5', { + 'checksums': ['2dc379b80b07bf2ddd5488cad06b2b9531da4dd31edb04dc9ec0dc226486c138'], + }), + ('globre', '0.1.5', { + 'checksums': ['ee214204f237e9114b8f61eeb61c2abd1e665ca3b59e5a6a0b070971c0bb12e2'], + }), + ('bidict', '0.23.1', { + 'checksums': ['03069d763bc387bbd20e7d49914e75fc4132a41937fa3405417e1a5a2d006d71'], + }), + ('tmtoolkit', '0.12.0', { + 'checksums': ['6df5429cd675989f21d9f075ddb11fe5ae273d6544fc337a2589bab2bc331909'], + }), + ('tspex', '0.6.3', { + 'checksums': ['315bfa1f60ea582777c549313cad9e9da0a4d11c5f69a6fc767bd0823dc46316'], + }), + ('plumbum', '1.8.3', { + 'checksums': ['6092c85ab970b7a7a9d5d85c75200bc93be82b33c9bdf640ffa87d2d7c8709f0'], + }), + ('pandoc', '2.3', { + 'checksums': ['e772c2c6d871146894579828dbaf1efd538eb64fc7e71d4a6b3a11a18baef90d'], + }), + ('nbsphinx', '0.9.4', { + 'checksums': ['042a60806fc23d519bc5bef59d95570713913fe442fda759d53e3aaf62104794'], + }), + ('nbsphinx-link', '1.3.0', { + 'checksums': ['fa3079a74c0dff1b2079e79a34babe770706ba8aa9cc0609c6dbfd593461a077'], + }), + ('numpydoc', '1.7.0', { + 'checksums': ['866e5ae5b6509dcf873fc6381120f5c31acf13b135636c1a81d68c166a95f921'], + }), + ('pyOpenSSL', '23.2.0', { + 'modulename': 'OpenSSL', + 'checksums': ['276f931f55a452e7dea69c7173e984eb2a4407ce413c918aa34b55f82f9b8bac'], + }), + ('entrypoints', '0.4', { + 'checksums': ['b706eddaa9218a19ebcd67b56818f05bb27589b1ca9e8d797b74affad4ccacd4'], + }), + ('ansicolors', '1.1.8', { + 'modulename': 'colors', + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187'], + }), + ('papermill', '2.6.0', { + 'checksums': ['9fe2a91912fd578f391b4cc8d6d105e73124dcd0cde2a43c3c4a1c77ac88ea24'], + }), + ('mypy_extensions', '1.0.0', { + 'checksums': ['75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782'], + }), + ('typing_inspect', '0.9.0', { + 'checksums': ['b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78'], + }), + ('marshmallow', '3.21.1', { + 'checksums': ['4e65e9e0d80fc9e609574b9983cf32579f305c718afb30d7233ab818571768c3'], + }), + ('dataclasses_json', '0.6.4', { + 'checksums': ['73696ebf24936560cca79a2430cbc4f3dd23ac7bf46ed17f38e5e5e7657a6377'], + }), + ('loomxpy', '0.4.2', { + 'preinstallopts': local_loomxpy_preinstallopts, + 'checksums': ['188411b77e04fa8458c0a7f02cfb3f15b58410a020f81f522957e922e79cdd82'], + }), + ('pycisTopic', '2.0a-dca4bb6', { + 'modulename': 'pycisTopic', + 'preinstallopts': local_pycistopic_preinstallopts, + # download commit dca4bb6 to be compatible with pycistarget + 'source_urls': ['https://github.com/aertslab/pycisTopic/archive/'], + 'sources': [{'download_filename': 'dca4bb6.tar.gz', 'filename': '%(name)s-%(version)s-dca4bb6.tar.gz'}], + 'checksums': ['82edc9313bbb587aeb1540fd5b095b6eafb422fa12a5fc97ba090b99b684b240'], + }), + ('pycistarget', '1.0a1-16d14b9', { + 'preinstallopts': local_pycistarget_preinstallopts, + # download commit 16d14b9 to make '$ scenicplus' work + 'source_urls': ['https://github.com/aertslab/pycistarget/archive/'], + 'sources': [{'download_filename': '16d14b9.tar.gz', 'filename': '%(name)s-%(version)s-16d14b9.tar.gz'}], + 'checksums': ['7285ac03be9d148437442a726366d7c6f9f5f86bc6636369149a2bc2cd8e0e29'], + }), + ('scenicplus', version, { + 'preinstallopts': local_preinstallopts, + 'source_urls': ['https://github.com/aertslab/scenicplus/archive/'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}], + 'checksums': ['88cddec1ab2618861e5c93e8a0b17b8e9e2aa3a76410d882c35d472f98724e29'], + }), +] + +# copy files to let 'scenicplus init_snakemake' works +postinstallcmds = [ + "cp -r %%(builddir)s/scenicplus/scenicplus-%s*/src/scenicplus/snakemake " + "%%(installdir)s/lib/python%%(pyshortver)s/site-packages/scenicplus" % local_commit +] + +sanity_check_commands = ['scenicplus init_snakemake --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SCRIPro/SCRIPro-1.0.18-foss-2023a.eb b/easybuild/easyconfigs/s/SCRIPro/SCRIPro-1.0.18-foss-2023a.eb new file mode 100644 index 00000000000..e7d07a0b329 --- /dev/null +++ b/easybuild/easyconfigs/s/SCRIPro/SCRIPro-1.0.18-foss-2023a.eb @@ -0,0 +1,69 @@ +easyblock = 'PythonBundle' + +name = 'SCRIPro' +version = '1.0.18' +local_commit = 'e9087fd' + +homepage = 'https://github.com/xuyunfan9991/SCRIPro' +description = "SCRIPro, an extended framework of SCRIP that suits both single-cell and spatial multi-ome data" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('h5py', '3.9.0'), + ('scanpy', '1.9.8'), + ('Seaborn', '0.13.2'), + ('PyTables', '3.8.0'), + ('tqdm', '4.66.1'), + ('dill', '0.3.7'), + ('leidenalg', '0.10.2'), + ('PyTorch', '2.1.2'), + ('PyTorch-bundle', '2.1.2'), # provides PyTorch-Ignite + ('tensorboardX', '2.6.2.2'), + ('pybedtools', '0.9.1'), + ('jupyter-server', '2.7.2'), # ipywidgets +] + +use_pip = True + +exts_list = [ + ('lisa2', '2.3.2', { + 'checksums': ['dc9df3495322c94f93c12372fb8d88d355447f7b8b69ea639394fc6274e9affb'], + 'modulename': 'lisa', + }), + ('parse', '1.20.1', { + 'checksums': ['09002ca350ad42e76629995f71f7b518670bcf93548bdde3684fd55d2be51975'], + }), + ('pynvml', '11.5.0', { + 'checksums': ['d027b21b95b1088b9fc278117f9f61b7c67f8e33a787e9f83f735f0f71ac32d0'], + }), + ('sparse', '0.15.1', { + 'checksums': ['973adcb88a8db8e3d8047953331e26d3f64a5657f9b46a6b859c47663c3eef99'], + # replace use of 'version_file' (which requires setuptools-scm >= 8.0) with 'write_to' + 'preinstallopts': "sed -i 's/^version_file/write_to/' pyproject.toml && ", + }), + ('scglue', '0.3.2', { + 'checksums': ['fd57ebfa400233cbb1ab4fab4ad6a9dbf4db2c5ca715ba31c71c7a36cc931241'], + }), + ('scripro', version, { + 'preinstallopts': "sed -i 's/==/>=/g' requirements.txt && ", + 'source_urls': ['https://github.com/xuyunfan9991/SCRIPro/archive'], + 'sources': [{'download_filename': 'e9087fd.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['6636c31f3f5797d33d57a5d0266c89f80cc37389dd9c139806b4d17ecad74252'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/scripro'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["scripro --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SDL2/SDL2-2.30.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/SDL2/SDL2-2.30.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1c8130b397c --- /dev/null +++ b/easybuild/easyconfigs/s/SDL2/SDL2-2.30.6-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'SDL2' +version = '2.30.6' + +homepage = 'https://www.libsdl.org/' +description = "SDL: Simple DirectMedia Layer, a cross-platform multimedia library" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.libsdl.org/release/'] +sources = [SOURCE_TAR_GZ] +checksums = ['c6ef64ca18a19d13df6eb22df9aff19fb0db65610a74cc81dae33a82235cacd4'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('X11', '20240607'), +] + +sanity_check_paths = { + 'files': ['bin/sdl2-config', 'lib/libSDL2.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' 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 new file mode 100644 index 00000000000..ff0762c0c4e --- /dev/null +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb @@ -0,0 +1,57 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2016-2019 Juelich Supercomputing Centre, Germany +# Authors:: Markus Geimer +# Modified 2017 by Andreas Henkel +# License:: 3-clause BSD +# # + +easyblock = 'ConfigureMake' + +name = 'SIONlib' +version = '1.7.7' +# Provide a stripped-down version with renamed symbols for tools, +# see description for further details +versionsuffix = '-tools' + +homepage = 'https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html' +description = """ + SIONlib is a scalable I/O library for parallel access to task-local files. + The library not only supports writing and reading binary data to or from + several thousands of processors into a single or a small number of physical + files, but also provides global open and close functions to access SIONlib + files in parallel. This package provides a stripped-down installation of + SIONlib for use with performance tools (e.g., Score-P), with renamed symbols + to avoid conflicts when an application using SIONlib itself is linked against + a tool requiring a different SIONlib version. +""" + +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'] +# 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: +configopts += '--disable-mic ' + +sanity_check_paths = { + 'files': ['bin/sionconfig'] + + ['lib/lib%s_64.a' % x for x in ['lsioncom', 'lsiongen', 'lsionser']], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb b/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb new file mode 100644 index 00000000000..06a2de7582c --- /dev/null +++ b/easybuild/easyconfigs/s/SNAP-ESA/SNAP-ESA-10.0.0-Java-11.eb @@ -0,0 +1,71 @@ +easyblock = 'Binary' + +name = 'SNAP-ESA' +version = '10.0.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://step.esa.int/main/toolboxes/snap/' +description = """ +The Sentinel Application Platform (SNAP) is a common architecture for all +Sentinel Toolboxes being jointly developed by Brockmann Consult, SkyWatch and +C-S. +The SNAP architecture is ideal for Earth Observation processing and analysis +due to the following technological innovations: Extensibility, Portability, +Modular Rich Client Platform, Generic EO Data Abstraction, Tiled Memory +Management, and a Graph Processing Framework.""" + +toolchain = SYSTEM + +local_installer = 'esa-snap_all_linux-%(version)s.sh' +local_varfile = 'SNAP-ESA-8.0-response.varfile' + +source_urls = [ + 'https://download.esa.int/step/snap/%(version_major)s_%(version_minor)s/installers', + 'https://step.esa.int/downloads/%(version_major_minor)s/installers', +] +sources = [local_installer] +patches = [(local_varfile, '.')] +checksums = [ + {'esa-snap_all_linux-10.0.0.sh': 'c928fd886c983fa7c09c09a3c48593542e71b0636d493ae1401b4c964348698a'}, + {'SNAP-ESA-8.0-response.varfile': '5ea98e3376bb3df52b9c4c99ab4986015296b815021e16486b58e4aad58e21a4'}, +] + +# The installation is executed with the bundled JRE 1.8.0_242 (Zulu) +# At runtime we switch to an external JDK (SNAP developers recommend any OpenJDK distribution) +dependencies = [ + ('Java', '11'), +] + +install_cmd = "INSTALL4J_TEMP='%(builddir)s' " +install_cmd += "bash %s -dir '%%(installdir)s'" % local_installer +install_cmd += " -q -varfile '%s'" % local_varfile + +postinstallcmds = [ + # set paths + 'sed -i "s|jdkhome.*|jdkhome=$JAVA_HOME|" %(installdir)s/etc/snap.conf', + 'sed -i "s|#snap.home.*|snap.home=%(installdir)s|" %(installdir)s/etc/snap.properties', + # remove default maximum memory allocation pool + 'sed -i "s|-J-Xmx[0-9G]* ||" %(installdir)s/etc/snap.conf', + # disable update checks + "echo 'snap.versionCheck.interval=NEVER' >> %(installdir)s/etc/snap.properties", + "sed -i 's|dpiaware=false|& -J-Dplugin.manager.check.interval=NEVER|' %(installdir)s/etc/snap.conf", + # (optional) update all modules to latest version + # the update command is buggy and it hangs after doing the update, kill it whenever it prints "updates=0" + # see issue https://senbox.atlassian.net/browse/SNAP-927 + # ('LOG="$(mktemp -d)/snap-update.log"; mkfifo $LOG; trap "rm -f $LOG" EXIT;' + # 'SNAPCMD="%(installdir)s/bin/snap --nosplash --nogui --userdir "%(builddir)s/snap" --modules --update-all";' + # '$SNAPCMD 2>&1 > $LOG & SNAPPID=$!;' + # 'while read line; do echo "$line"; [ "$line" = "updates=0" ] && kill $SNAPPID; done < $LOG;'), +] + +sanity_check_paths = { + 'files': ['bin/snap', 'bin/gpt'], + 'dirs': ['rstb', 'smos', 'snap'], +} + +sanity_check_commands = [ + "snap --nosplash --nogui --modules --help | grep 'Additional module options'", + "gpt -h", +] + +moduleclass = 'geo' 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/SPRNG/SPRNG-5.0-gompi-2023b.eb b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-gompi-2023b.eb new file mode 100644 index 00000000000..bf9aa5e5827 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-gompi-2023b.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'SPRNG' +version = '5.0' + +homepage = 'http://www.sprng.org/' +description = "Scalable Parallel Pseudo Random Number Generators Library" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'opt': True, 'usempi': True, 'cstd': 'c++14'} + +source_urls = ['http://www.sprng.org/Version%(version)s/'] +sources = ['%(namelower)s%(version_major)s.tar.bz2'] +patches = ['%(name)s-%(version)s_MPI-lmpi.patch'] +checksums = [ + {'sprng5.tar.bz2': '696ef452bdd998d2e66586e73d81dac875082e35d08de419cede1a1bb2555b59'}, + {'SPRNG-5.0_MPI-lmpi.patch': 'a6bb936b2e7cf9efd74e0bf06702bf444c98ecb11877492308a3551c5b9dff5c'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('TestU01', '1.2.3'), +] + +preconfigopts = 'autoreconf -f -i && ' +configopts = '--with-fortran=yes --with-mpi=yes --with-testu01=$EBROOTTESTU01' + +sanity_check_paths = { + 'files': ['bin/checksprng', 'include/sprng.h', 'include/sprng_f.h', 'lib/libsprng.a'], + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = ['cd %(builddir)s/sprng5/check && checksprng'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb new file mode 100644 index 00000000000..ea7f852cd44 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'SPRNG' +version = '5.0' + +homepage = 'http://www.sprng.org/' +description = "Scalable Parallel Pseudo Random Number Generators Library" + +toolchain = {'name': 'iimpi', 'version': '2023b'} +toolchainopts = {'pic': True, 'opt': True, 'usempi': True, 'cstd': 'c++14'} + +source_urls = ['http://www.sprng.org/Version%(version)s/'] +sources = ['%(namelower)s%(version_major)s.tar.bz2'] +patches = ['%(name)s-%(version)s_MPI-lmpicxx.patch'] +checksums = [ + {'sprng5.tar.bz2': '696ef452bdd998d2e66586e73d81dac875082e35d08de419cede1a1bb2555b59'}, + {'SPRNG-5.0_MPI-lmpicxx.patch': 'fc0903d81886a76a8cf2af73930b0347e3bcc047ad32215fdafd5a936f519545'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('TestU01', '1.2.3'), +] + +preconfigopts = 'autoreconf -f -i && ' +configopts = '--with-fortran=yes --with-mpi=yes --with-testu01=$EBROOTTESTU01' + +sanity_check_paths = { + 'files': ['bin/checksprng', 'include/sprng.h', 'include/sprng_f.h', 'lib/libsprng.a'], + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = ['cd %(builddir)s/sprng5/check && checksprng'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch new file mode 100644 index 00000000000..c09f74fa073 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch @@ -0,0 +1,12 @@ +diff -Nru sprng5-orig/configure.ac sprng5/configure.ac +--- sprng5-orig/configure.ac 2021-06-08 18:37:02.000000000 +0200 ++++ sprng5/configure.ac 2024-08-29 19:21:40.393998554 +0200 +@@ -89,7 +89,7 @@ + + if test $use_mpi = y; then + MPI_DEF="-DSPRNG_MPI" +- MPI_CXXLIB="-lmpi_cxx" ++ MPI_CXXLIB="-lmpi" + else + MPI_DEF="" + MPI_CXXLIB="" diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch new file mode 100644 index 00000000000..a45691c9b04 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch @@ -0,0 +1,12 @@ +diff -Nru sprng5-orig/configure.ac sprng5/configure.ac +--- sprng5-orig/configure.ac 2021-06-08 18:37:02.000000000 +0200 ++++ sprng5/configure.ac 2024-08-29 19:18:56.124716693 +0200 +@@ -89,7 +89,7 @@ + + if test $use_mpi = y; then + MPI_DEF="-DSPRNG_MPI" +- MPI_CXXLIB="-lmpi_cxx" ++ MPI_CXXLIB="-lmpicxx" + else + MPI_DEF="" + MPI_CXXLIB="" diff --git a/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..293b3bf2452 --- /dev/null +++ b/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'SQLAlchemy' +version = '2.0.36' + +homepage = 'https://www.sqlalchemy.org/' +description = """SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives +application developers the full power and flexibility of SQL. SQLAlchemy +provides a full suite of well known enterprise-level persistence patterns, +designed for efficient and high-performing database access, adapted into a +simple and Pythonic domain language.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('Greenlet', '3.1.1'), + ('psycopg', '3.2.3'), # optional, postgresql extra + ('Mako', '1.3.5'), # needed by alembic +] + +use_pip = True + +exts_list = [ + ('async-timeout', '5.0.1', { + 'sources': ['async_timeout-%(version)s.tar.gz'], + 'checksums': ['d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3'], + }), + ('asyncpg', '0.30.0', { + 'checksums': ['c551e9928ab6707602f44811817f82ba3c446e018bfe1d3abecc8ba5f3eac851'], + }), + ('sqlalchemy', version, { + 'use_pip_extras': 'asyncio,postgresql,postgresql_asyncpg', + 'checksums': ['7f2767680b6d2398aea7082e45a774b2b0767b5c8d8ffb9c8b683088ea9b29c5'], + }), + ('alembic', '1.14.0', { + 'checksums': ['b00892b53b3642d0b8dbedba234dbf1924b69be83a9a769d5a624b01094e304b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb index 42f094bb67b..a61fe5e85bb 100644 --- a/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb @@ -24,6 +24,10 @@ checksums = [ {'STAR-%(version)s_use-external-htslib.patch': '2fdc3ed9372d983f77d861d6f16a60a553598358dce9ff8216f96eb20e63ce4e'}, ] +builddependencies = [ + ('xxd', '9.0.1696'), +] + dependencies = [ ('HTSlib', '1.17'), ('zlib', '1.2.12'), @@ -31,6 +35,9 @@ dependencies = [ start_dir = 'source' +# by default this is set to -mavx2 which makes it fail on non x86 systems +prebuildopts = 'CXXFLAGS_SIMD= ' + buildopts = ' STAR && make STARlong' files_to_copy = [ diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.3.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.3.0.eb index 1943af96d5e..a017a2ba109 100644 --- a/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.3.0.eb @@ -24,6 +24,10 @@ checksums = [ {'STAR-%(version)s_use-external-htslib.patch': '2fdc3ed9372d983f77d861d6f16a60a553598358dce9ff8216f96eb20e63ce4e'}, ] +builddependencies = [ + ('xxd', '9.0.2112'), +] + dependencies = [ ('HTSlib', '1.18'), ('zlib', '1.2.13'), @@ -31,6 +35,9 @@ dependencies = [ start_dir = 'source' +# by default this is set to -mavx2 which makes it fail on non x86 systems +prebuildopts = 'CXXFLAGS_SIMD= ' + buildopts = ' STAR && make STARlong' files_to_copy = [ diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-12.3.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-12.3.0.eb index cf16b5c2979..67cac5d0f47 100644 --- a/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-12.3.0.eb @@ -24,6 +24,10 @@ checksums = [ {'STAR-2.7.11a_use-external-htslib.patch': '2fdc3ed9372d983f77d861d6f16a60a553598358dce9ff8216f96eb20e63ce4e'}, ] +builddependencies = [ + ('xxd', '9.0.2112'), +] + dependencies = [ ('HTSlib', '1.18'), ('zlib', '1.2.13'), @@ -31,6 +35,9 @@ dependencies = [ start_dir = 'source' +# by default this is set to -mavx2 which makes it fail on non x86 systems +prebuildopts = 'CXXFLAGS_SIMD= ' + buildopts = ' STAR && make STARlong' files_to_copy = [ diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-13.2.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-13.2.0.eb index a86f215d8dd..886aa0a24c5 100644 --- a/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b-GCC-13.2.0.eb @@ -35,6 +35,9 @@ dependencies = [ start_dir = 'source' +# by default this is set to -mavx2 which makes it fail on non x86 systems +prebuildopts = 'CXXFLAGS_SIMD= ' + buildopts = ' STAR && make STARlong' files_to_copy = [ diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11b_alpha_2024-02-09-GCC-12.3.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b_alpha_2024-02-09-GCC-12.3.0.eb new file mode 100644 index 00000000000..a0a119a428c --- /dev/null +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11b_alpha_2024-02-09-GCC-12.3.0.eb @@ -0,0 +1,57 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# Based on STAR-2.7.7a-GCC-10.2.0.eb +# uploaded by J. Sassmannshausen +# modified by Thomas Eylenbosch + +easyblock = 'MakeCp' + +name = 'STAR' +version = '2.7.11b_alpha_2024-02-09' + +homepage = 'https://github.com/dobinlab/STAR_pre_releases' +description = "STAR aligns RNA-seq reads to a reference genome using uncompressed suffix arrays." + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/dobinlab/STAR_pre_releases/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['STAR-2.7.11a_use-external-htslib.patch'] +checksums = [ + {'2.7.11b_alpha_2024-02-09.tar.gz': '7a7bae1f802fc5bc5b270da89e66a824480fb33e21f7ebfbf7ed56e1d4907c1c'}, + {'STAR-2.7.11a_use-external-htslib.patch': '2fdc3ed9372d983f77d861d6f16a60a553598358dce9ff8216f96eb20e63ce4e'}, +] + +builddependencies = [ + ('xxd', '9.0.2112'), +] + +dependencies = [ + ('HTSlib', '1.18'), + ('zlib', '1.2.13'), +] + +start_dir = 'source' + +# by default this is set to -mavx2 which makes it fail on non x86 systems +prebuildopts = 'CXXFLAGS_SIMD= ' + +buildopts = ' STAR && make STARlong' + +files_to_copy = [ + (['source/%(name)s', 'source/%(name)slong'], 'bin'), + 'CHANGES.md', 'doc', 'extras', 'LICENSE', 'README.md', 'RELEASEnotes.md', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'bin/%(name)slong'], + 'dirs': [], +} + +sanity_check_commands = [ + "STAR --help", + "STARlong --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SURVIVOR/SURVIVOR-1.0.7-20231201-GCC-13.3.0.eb b/easybuild/easyconfigs/s/SURVIVOR/SURVIVOR-1.0.7-20231201-GCC-13.3.0.eb new file mode 100644 index 00000000000..072cc459dd8 --- /dev/null +++ b/easybuild/easyconfigs/s/SURVIVOR/SURVIVOR-1.0.7-20231201-GCC-13.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'MakeCp' + +name = 'SURVIVOR' +local_commit = 'd613ec5' +version = '1.0.7-20231201' + +homepage = 'https://github.com/fritzsedlazeck/SURVIVOR' +description = "Toolset for SV simulation, comparison and filtering" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +github_account = 'fritzsedlazeck' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['848733bcccb3b485eea95d649a8cbaa2ac1b82d180020340121f71125b543861'] + +start_dir = 'Debug' +files_to_copy = ['Debug/%(name)s'] + +sanity_check_paths = { + 'files': ['%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(name)s'] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb b/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb new file mode 100644 index 00000000000..50ead1b54c1 --- /dev/null +++ b/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb @@ -0,0 +1,153 @@ +easyblock = "CargoPythonBundle" + +name = 'Safetensors' +version = '0.4.4' +_rustver = '1.76.0' + +homepage = 'https://huggingface.co/docs/safetensors' +description = """Safetensors is a new simple format for storing tensors safely (as opposed to +pickle) and that is still fast (zero-copy). Safetensors is really fast. + +This variant of Safetensors is installed with support for numpy and PyTorch +""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +builddependencies = [ + ('Rust', _rustver), + ('maturin', '1.5.0', '-Rust-' + _rustver), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), +] + +# crates generated on 2024-08-21 from directories savetensors/ and bindings/python/ +crates = [ + ('aho-corasick', '1.1.3'), + ('anes', '0.1.6'), + ('anstyle', '1.0.8'), + ('autocfg', '1.3.0'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('cast', '0.3.0'), + ('cfg-if', '1.0.0'), + ('ciborium', '0.2.2'), + ('ciborium-io', '0.2.2'), + ('ciborium-ll', '0.2.2'), + ('clap', '4.5.16'), + ('clap_builder', '4.5.15'), + ('clap_lex', '0.7.2'), + ('criterion', '0.5.1'), + ('criterion-plot', '0.5.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.20'), + ('crunchy', '0.2.2'), + ('either', '1.13.0'), + ('errno', '0.3.9'), + ('fastrand', '2.1.0'), + ('fnv', '1.0.7'), + ('getrandom', '0.2.15'), + ('half', '2.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.4.0'), + ('indoc', '2.0.5'), + ('is-terminal', '0.4.13'), + ('itertools', '0.10.5'), + ('itoa', '1.0.11'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.155'), + ('libc', '0.2.158'), + ('libm', '0.2.8'), + ('linux-raw-sys', '0.4.14'), + ('log', '0.4.22'), + ('memchr', '2.7.4'), + ('memmap2', '0.9.4'), + ('memoffset', '0.9.1'), + ('num-traits', '0.2.19'), + ('once_cell', '1.19.0'), + ('oorandom', '11.1.4'), + ('plotters', '0.3.6'), + ('plotters-backend', '0.3.6'), + ('plotters-svg', '0.3.6'), + ('portable-atomic', '1.7.0'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.86'), + ('proptest', '1.5.0'), + ('pyo3', '0.22.2'), + ('pyo3-build-config', '0.22.2'), + ('pyo3-ffi', '0.22.2'), + ('pyo3-macros', '0.22.2'), + ('pyo3-macros-backend', '0.22.2'), + ('quick-error', '1.2.3'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_xorshift', '0.3.0'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('rustix', '0.38.34'), + ('rusty-fork', '0.3.0'), + ('ryu', '1.0.18'), + ('same-file', '1.0.6'), + ('serde', '1.0.204'), + ('serde', '1.0.208'), + ('serde_derive', '1.0.204'), + ('serde_derive', '1.0.208'), + ('serde_json', '1.0.122'), + ('serde_json', '1.0.125'), + ('syn', '2.0.72'), + ('syn', '2.0.75'), + ('target-lexicon', '0.12.16'), + ('tempfile', '3.12.0'), + ('tinytemplate', '1.2.1'), + ('unarray', '0.1.4'), + ('unicode-ident', '1.0.12'), + ('unindent', '0.2.3'), + ('wait-timeout', '0.2.0'), + ('walkdir', '2.5.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.93'), + ('wasm-bindgen-backend', '0.2.93'), + ('wasm-bindgen-macro', '0.2.93'), + ('wasm-bindgen-macro-support', '0.2.93'), + ('wasm-bindgen-shared', '0.2.93'), + ('web-sys', '0.3.70'), + ('winapi-util', '0.1.9'), + ('windows-sys', '0.52.0'), + ('windows-sys', '0.59.0'), + ('windows-targets', '0.52.6'), + ('windows_aarch64_gnullvm', '0.52.6'), + ('windows_aarch64_msvc', '0.52.6'), + ('windows_i686_gnu', '0.52.6'), + ('windows_i686_gnullvm', '0.52.6'), + ('windows_i686_msvc', '0.52.6'), + ('windows_x86_64_gnu', '0.52.6'), + ('windows_x86_64_gnullvm', '0.52.6'), + ('windows_x86_64_msvc', '0.52.6'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + + +use_pip = True + +exts_list = [ + ('safetensors', version, { + 'checksums': ['5fe3e9b705250d0172ed4e100a811543108653fb2b66b9e702a088ad03772a07'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/Sagemath/Sagemath-10.4-foss-2023b.eb b/easybuild/easyconfigs/s/Sagemath/Sagemath-10.4-foss-2023b.eb new file mode 100644 index 00000000000..dcc9d919c13 --- /dev/null +++ b/easybuild/easyconfigs/s/Sagemath/Sagemath-10.4-foss-2023b.eb @@ -0,0 +1,158 @@ +easyblock = 'PythonBundle' + +name = 'Sagemath' +version = '10.4' + +homepage = 'https://doc.sagemath.org/html/en/index.html' +description = """Sage is open source mathematical software released under the GNU General Public Licence GPLv2+, + and includes packages that have compatible software licenses. + People all around the globe have contributed to the development of Sage. Full documentation is available online.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('Cython', '3.0.10'), + ('Python-bundle-PyPI', '2023.10'), + ('Boost', '1.83.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('ECL', '24.5.10'), + ('FFLAS-FFPACK', '2.5.0'), + ('eclib', '20240408'), + ('GSL', '2.7'), + ('LinBox', '1.7.0'), + ('Singular', '4.4.0'), + ('libpng', '1.6.40'), + ('libgd', '2.3.3'), + ('m4ri', '20200125'), + ('cysignals', '1.11.4'), + ('gmpy2', '2.1.5'), + ('GMP-ECM', '7.0.5'), + ('MPFI', '1.5.4'), + ('cliquer', '1.21'), + ('nauty', '2.8.8'), + ('SYMMETRICA', '2.0'), + ('lcalc', '2.0.5'), + ('gap', '4.13.0'), + ('giac', '1.9.0-99'), + ('m4rie', '20200125'), + ('libhomfly', '1.02r6'), + ('libbraiding', '1.2'), + ('planarity', '3.0.2.0'), + ('rankwidth', '0.9'), + ('BRiAl', '1.2.12'), + ('bliss', '0.77'), + ('coxeter', '20180226'), + ('mcqd', '1.0.0'), + ('SharedMeatAxe', '1.0.1'), + ('sirocco', '2.1.0'), + ('tdlib', '0.9.3'), + ('pkgconfig', '1.5.5', '-python'), + ('matplotlib', '3.8.2'), + ('networkx', '3.2.1'), + ('sympy', '1.12'), + ('IPython', '8.17.2'), + ('Pillow', '10.2.0'), + ('fpylll', '0.6.1'), + ('primecountpy', '0.1.0'), + ('lrcalc', '2.1'), + ('PyZMQ', '25.1.2'), + ('tornado', '6.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('cypari2', '2.2.0', { + 'checksums': ['817606bf661b71d33e1d012421907a4f8fb09dd81b7d3e3ae179b3978020bbf1'], + }), + ('memory_allocator', '0.1.4', { + 'checksums': ['d609216b03031967e2b45a804b12ff9029578f4ec019fde42cf6aed6ca09efe4'], + }), + ('sage_setup', version, { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['4797ceae2f5f636a756f4121011246445611f7a56bced2df431328fe013c52c7'], + }), + ('conway_polynomials', '0.10', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['a354b4ac0a9985da75e2ac6ec6d7de2902396eff48913eeed86a962486171c28'], + }), + ('comm', '0.2.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3'], + }), + ('debugpy', '1.8.5', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['55919dce65b471eff25901acf82d328bbd5b833526b6c1364bd5133754777a44'], + }), + ('nest_asyncio', '1.6.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c'], + }), + ('ipykernel', '6.29.5', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5'], + }), + ('jupyterlab_widgets', '3.0.13', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54'], + }), + ('widgetsnbextension', '4.0.13', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['74b2692e8500525cc38c2b877236ba51d34541e6385eeed5aec15a70f88a6c71'], + }), + ('ipywidgets', '8.1.5', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245'], + }), + ('jupyter_core', '5.7.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409'], + }), + ('jupyter_client', '8.6.2', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['50cbc5c66fd1b8f65ecb66bc490ab73217993632809b6e505687de18e9dea39f'], + }), + ('lrcalc', '2.1', { + 'checksums': ['e3a0509aeda487b412b391a52e817ca36b5c063a8305e09fd54d53259dd6aaa9'], + }), + ('%(namelower)s_standard', version, { + 'modulename': 'sage', + 'checksums': ['f6579e85f33bd9bb6e9b991bfc4c49dab1e649858ed9ee41c7cec75cb92d4c62'], + }), + ('%(namelower)s_bliss', version, { + 'modulename': False, + 'checksums': ['70cccef849908436c2f9f1aabb3992a21c90d3ce99d1a965743f0fdec3735d32'], + }), + ('%(namelower)s_coxeter3', version, { + 'modulename': False, + 'checksums': ['c4f20204b91a696caeb7ad7cf33d2b0398d26d287085b2cb9434e8b067716fca'], + }), + ('%(namelower)s_mcqd', version, { + 'modulename': False, + 'checksums': ['6a140d8b3866ea27aa5966f3aab86a882785862fb00ae37087beb09105b94175'], + }), + ('%(namelower)s_meataxe', version, { + 'modulename': False, + 'checksums': ['5b625333c3168fc2ab55d32ad7e8c41912858bde8010b5aadc70c6450fa967e8'], + }), + ('%(namelower)s_sirocco', version, { + 'modulename': False, + 'checksums': ['499304b3331751d7b0f62de8379afb073d55f144c5f73775da0c5b92160e3a7c'], + }), + ('%(namelower)s_tdlib', version, { + 'modulename': False, + 'checksums': ['018497a1e220d3320a37d1acb3eee59ec820d167c7916e95f0508709a2e31703'], + }), +] + +sanity_check_commands = [ + "sage --help", + "python -c 'from sage.all import *'", +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/Salmon/Salmon-1.10.3-GCC-12.3.0.eb b/easybuild/easyconfigs/s/Salmon/Salmon-1.10.3-GCC-12.3.0.eb new file mode 100644 index 00000000000..9b52051eed3 --- /dev/null +++ b/easybuild/easyconfigs/s/Salmon/Salmon-1.10.3-GCC-12.3.0.eb @@ -0,0 +1,59 @@ +# # +# 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:: GLPv2 +# +# Notes:: +# # +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen +# Thanks to people like Simon Brandord, Mikael Oehmann and Kenneth Hoste +# for their help with the ICE + +easyblock = 'CMakeMake' + +name = 'Salmon' +version = '1.10.3' + +homepage = 'https://github.com/COMBINE-lab/salmon' +description = """Salmon is a wicked-fast program to produce a highly-accurate, + transcript-level quantification estimate from RNA-seq data.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/COMBINE-lab/salmon/archive'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['a053fba63598efc4ade3684aa2c8e8e2294186927d4fcdf1041c36edc2aa0871'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), + ('jemalloc', '5.3.0'), + ('Cereal', '1.3.2', '', SYSTEM), +] +dependencies = [ + ('Boost', '1.82.0'), + ('tbb', '2021.11.0'), + ('cURL', '8.0.1'), + ('libiconv', '1.17'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), + ('zlib', '1.2.13'), +] + +configopts = "-DJEMALLOC_ROOT=$EBROOTJEMALLOC" + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'lib/libgraphdump.a', 'lib/libntcard.a', 'lib/libsalmon_core.a', 'lib/libtwopaco.a'], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023b.eb b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023b.eb new file mode 100644 index 00000000000..d724f5b9015 --- /dev/null +++ b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023b.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'ScaFaCoS' +version = '1.0.4' + +homepage = 'http://www.scafacos.de/' +description = """ScaFaCoS is a library of scalable fast coulomb solvers.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + '6634c4202e825e771d1dd75bbe9cac5cee41136c87653fde98fbd634681c1be6', # scafacos-1.0.1.tar.gz +] + +builddependencies = [ + ('Autotools', '20220317'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('GMP', '6.3.0'), + ('GSL', '2.7'), +] + +preconfigopts = 'unset F77 && ' + +configopts = 'FCFLAGS="-fallow-argument-mismatch $FCFLAGS" ' +configopts += '--enable-shared --enable-static --disable-doc ' +# tell it where to find provided FFTW +configopts += '--without-internal-fftw --with-fftw3-includedir=$EBROOTFFTW/include --with-fftw3-libdir=$EBROOTFFTW/lib ' +# only include the solvers supported for LAMMPS +# (for p2nfft we need an additonal dependency) +configopts += '--enable-fcs-solvers=direct,ewald,fmm,p3m ' + +sanity_check_paths = { + 'files': ['lib/libfcs.a', 'include/fcs.h', 'include/fcs_module.mod'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/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..9b14f9ce1be --- /dev/null +++ b/easybuild/easyconfigs/s/SciANN/SciANN-0.7.0.1-foss-2022a.eb @@ -0,0 +1,37 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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..7ef8def71d7 --- /dev/null +++ b/easybuild/easyconfigs/s/SciKeras/SciKeras-0.12.0-foss-2022a.eb @@ -0,0 +1,30 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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 9805854b0c3..424296cf1fe 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 = [ @@ -73,12 +74,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 25fa6ff36f7..a41da775912 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 ae7ab11bbc4..38fb986242d 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 = [ @@ -68,6 +69,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'}, @@ -76,6 +78,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-2024.05.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb index b80b8631909..99d61098d6b 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024.05.eb @@ -16,7 +16,8 @@ builddependencies = [ ('Meson', '1.4.0'), ('meson-python', '0.16.0'), ('Ninja', '1.12.1'), - ('pkgconf', '2.2.0'), # required by scipy + ('pkgconf', '2.2.0'), # required by scipy + ('Cython', '3.0.10'), # required by numpy and scipy ] dependencies = [ 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 cdb7536e15a..5584d888f30 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 @@ -16,7 +16,8 @@ builddependencies = [ ('Meson', '1.4.0'), ('meson-python', '0.16.0'), ('Ninja', '1.12.1'), - ('pkgconf', '2.2.0'), # required by scipy + ('pkgconf', '2.2.0'), # required by scipy + ('Cython', '3.0.10'), # required by numpy and scipy ] dependencies = [ @@ -63,12 +64,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/Score-P/Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb new file mode 100644 index 00000000000..9d7b53221e9 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2024a-CUDA-12.6.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': '2024a'} + +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.6.0', '', SYSTEM), + ('UCX-CUDA', '1.16.0', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.8.1'), + ('OPARI2', '2.0.8'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.1.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.2'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'cuda_mgmt', '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-2024a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2024a.eb new file mode 100644 index 00000000000..eda406cbe2a --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2024a.eb @@ -0,0 +1,55 @@ +# Copyright 2013-2024 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# * Jan André Reuter +# 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': '2024a'} + +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.8.1'), + ('OPARI2', '2.0.8'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.1.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.2'), +] + +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/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb b/easybuild/easyconfigs/s/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb new file mode 100644 index 00000000000..de14ff81ce9 --- /dev/null +++ b/easybuild/easyconfigs/s/Seaborn/Seaborn-0.13.2-gfbf-2024a.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'Seaborn' +version = '0.13.2' + +homepage = 'https://seaborn.pydata.org/' +description = """ Seaborn is a Python visualization library based on matplotlib. + It provides a high-level interface for drawing attractive statistical graphics. """ + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['93e60a40988f4d65e9f4885df477e2fdaff6b73a9ded434c1ab356dd57eefff7'] + +dependencies = [ + ('Python', '3.12.3'), + ('matplotlib', '3.9.2'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.2.0-GCC-13.2.0.eb b/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.2.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..246989eefdc --- /dev/null +++ b/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.2.0-GCC-13.2.0.eb @@ -0,0 +1,70 @@ +easyblock = 'Bundle' + +name = 'SentencePiece' +version = '0.2.0' + +homepage = 'https://github.com/google/sentencepiece' +description = "Unsupervised text tokenizer for Neural Network-based text generation." +github_account = 'google' + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +builddependencies = [ + ('CMake', '3.27.6'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('gperftools', '2.13'), +] + +default_component_specs = { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['9970f0a0afee1648890293321665e5b2efa04eaec9f1671fcf8048f456f5bb86'], +} + +local_external_absl = 'sed -i %(builddir)s/' + +components = [ + (name, version, { + 'easyblock': 'CMakeMake', + 'separate_build_dir': True, + 'start_dir': '%(namelower)s-%(version)s', + # using internal protobuf there is no matching pc file so requirement is removed: + 'preconfigopts': 'sed -i s/Requires.private.*// ../sentencepiece-%(version)s/sentencepiece.pc.in &&', + }), + ('sentencepiece', version, { + 'easyblock': 'PythonPackage', + 'start_dir': '%(namelower)s-%(version)s/python', + # Unpredicable where pc files end up; including both lib and lib64 + 'prebuildopts': 'export PKG_CONFIG_PATH=%(installdir)s/lib64/pkgconfig:%(installdir)s/lib/pkgconfig/:' + '$PKG_CONFIG_PATH && ', + 'preinstallopts': 'export PKG_CONFIG_PATH=%(installdir)s/lib64/pkgconfig:%(installdir)s/lib/pkgconfig/:' + '$PKG_CONFIG_PATH && ', + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, + }), +] + +postinstallcmds = ['cp -a %(builddir)s/%(namelower)s-%(version)s/{data,doc} %(installdir)s/'] + +sanity_check_paths = { + 'files': ['bin/spm_%s' % x for x in ['decode', 'encode', 'export_vocab', 'normalize', 'train']] + + ['lib/libsentencepiece.%s' % SHLIB_EXT, 'lib/libsentencepiece_train.%s' % SHLIB_EXT] + + ['include/sentencepiece_processor.h', 'include/sentencepiece_trainer.h'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'data', 'doc'], +} + +sanity_check_commands = [ + 'spm_train --help | grep accept_language', # --help has exit code 1, so we check for output text + "python -c 'import sentencepiece'", +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SeqKit/SeqKit-2.8.2.eb b/easybuild/easyconfigs/s/SeqKit/SeqKit-2.8.2.eb new file mode 100644 index 00000000000..820f9abf719 --- /dev/null +++ b/easybuild/easyconfigs/s/SeqKit/SeqKit-2.8.2.eb @@ -0,0 +1,26 @@ +easyblock = 'GoPackage' + +name = 'SeqKit' +version = '2.8.2' + +homepage = 'https://bioinf.shenwei.me/seqkit/' +description = """SeqKit - a cross-platform and ultrafast toolkit for FASTA/Q file manipulation""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/shenwei356/seqkit/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9cf1e744b785fa673af5a7a1ce2f96d52dc03e14b6537097df86aa6266204556'] + +builddependencies = [ + ('Go', '1.22.1'), +] + +installopts = './%(namelower)s' + +sanity_check_commands = [ + "seqkit version", + "seqkit genautocomplete" +] + +moduleclass = 'bio' 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..4488ff1f7e4 --- /dev/null +++ b/easybuild/easyconfigs/s/Shapely/Shapely-2.0.6-gfbf-2024a.eb @@ -0,0 +1,31 @@ +# 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'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SharedMeatAxe/SharedMeatAxe-1.0.1-GCC-13.2.0.eb b/easybuild/easyconfigs/s/SharedMeatAxe/SharedMeatAxe-1.0.1-GCC-13.2.0.eb new file mode 100644 index 00000000000..36923c839cc --- /dev/null +++ b/easybuild/easyconfigs/s/SharedMeatAxe/SharedMeatAxe-1.0.1-GCC-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'SharedMeatAxe' +version = '1.0.1' + +homepage = 'https://github.com/simon-king-jena/SharedMeatAxe' +description = """This is an autotoolized shared library version of C MeatAxe 2.4.24, + a set of programs for computing with modular representations.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/simon-king-jena/SharedMeatAxe/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e1e802ef60f3280cdacb3de6d693ebd71b43af93e33c739de2697605c59b1a3b'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +preconfigopts = 'autoreconf --install && ' + +runtest = 'check' + +local_bins = [ + 'cfcomp', 'genmod', 'mkgraph', 'mkinc', 'orbrep', 'pwkond', 'symnew', 'zad', 'zcl', 'zcv', 'zfr', 'zmo', 'znu', + 'zpr', 'zro', 'zsp', 'zte', 'zuk', 'chop', 'mkcycl', 'mkhom', 'mksub', 'precond', 'rad', 'tcond', 'zbl', 'zcp', + 'zef', 'ziv', 'zmu', 'zor', 'zpt', 'zsc', 'zsy', 'ztr', 'zvp', 'decomp', 'mkdotl', 'mkhom_old', 'mktree', + 'pseudochop', 'soc', 'tuc', 'zcf', 'zct', 'zev', 'zkd', 'zmw', 'zpo', 'zqt', 'zsi', 'ztc', 'zts', +] + +sanity_check_paths = { + 'files': ['bin/%s' % bin for bin in local_bins] + ['include/meataxe.h', 'lib/libmtx.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ['mktree --help'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-CUDA-12.1.1-fast.eb b/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-CUDA-12.1.1-fast.eb new file mode 100644 index 00000000000..db9e6fe2fb3 --- /dev/null +++ b/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-CUDA-12.1.1-fast.eb @@ -0,0 +1,55 @@ +# 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 = 'PythonPackage' + +name = 'SignalP' +version = '6.0h' +_suffix = 'fast' +versionsuffix = '-CUDA-%(cudaver)s-' + _suffix + +homepage = 'https://services.healthtech.dtu.dk/software.php' +description = """SignalP predicts the presence and location of signal peptide cleavage sites +in amino acid sequences from different organisms""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +download_instructions = """ +SignalP requires registration and acceptance of licence terms (academic use only). + [1] go to: https://services.healthtech.dtu.dk/service.php?SignalP-6.0 + [2] navigate to the "Downloads" tab + [3] select "%s" type under version "%%(version)s" + [4] complete the form; you should receive a download link via email +""" % _suffix + +sources = ['%%(namelower)s-%%(version)s.%s.tar.gz' % _suffix] +checksums = ['4afe3c004e23a1d6518cefb23448b4d5ede5f1c5b276db541f839f0615822125'] + +unpack_options = '--strip-components=1' + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('tqdm', '4.66.1'), + ('PyTorch', '2.1.2', '-CUDA-%(cudaver)s'), + ('matplotlib', '3.7.2'), +] + +preinstallopts = "sed -i 's/torch.*/torch/g' requirements.txt && " + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +_bin = '%%(namelower)s%s' % version[0] +sanity_check_paths = { + 'files': ['bin/%s' % _bin], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +sanity_check_commands = ['%s --help' % _bin] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-fast.eb b/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-fast.eb new file mode 100644 index 00000000000..8e65da2a7d7 --- /dev/null +++ b/easybuild/easyconfigs/s/SignalP/SignalP-6.0h-foss-2023a-fast.eb @@ -0,0 +1,54 @@ +# 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 = 'PythonPackage' + +name = 'SignalP' +version = '6.0h' +_suffix = 'fast' +versionsuffix = '-' + _suffix + +homepage = 'https://services.healthtech.dtu.dk/software.php' +description = """SignalP predicts the presence and location of signal peptide cleavage sites +in amino acid sequences from different organisms""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +download_instructions = """ +SignalP requires registration and acceptance of licence terms (academic use only). + [1] go to: https://services.healthtech.dtu.dk/service.php?SignalP-6.0 + [2] navigate to the "Downloads" tab + [3] select "%s" type under version "%%(version)s" + [4] complete the form; you should receive a download link via email +""" % _suffix + +sources = ['%%(namelower)s-%%(version)s.%s.tar.gz' % _suffix] +checksums = ['4afe3c004e23a1d6518cefb23448b4d5ede5f1c5b276db541f839f0615822125'] + +unpack_options = '--strip-components=1' + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('tqdm', '4.66.1'), + ('PyTorch', '2.1.2'), + ('matplotlib', '3.7.2'), +] + +preinstallopts = "sed -i 's/torch.*/torch/g' requirements.txt && " + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +_bin = '%%(namelower)s%s' % version[0] +sanity_check_paths = { + 'files': ['bin/%s' % _bin], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +sanity_check_commands = ['%s --help' % _bin] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..22eca6d4ed4 --- /dev/null +++ b/easybuild/easyconfigs/s/Single-cell-python-bundle/Single-cell-python-bundle-2024.02-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,247 @@ +easyblock = 'PythonBundle' + +name = 'Single-cell-python-bundle' +version = '2024.02' +versionsuffix = '-CUDA-12.1.1' + +homepage = (None) +description = """Bundle of tools for single-cell sequence analysis.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('poetry', '1.5.1'), + ('CMake', '3.26.3'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Seaborn', '0.13.2'), + ('PyTorch', '2.1.2', versionsuffix), + ('scanpy', '1.9.8'), + ('scib', '1.1.4'), + ('scVelo', '0.3.1'), + ('CellTypist', '1.6.2'), + ('epiScanpy', '0.4.0'), + ('scCODA', '0.1.9'), + ('infercnvpy', '0.4.3'), + ('pySCENIC', '0.12.1-20240311'), + ('CellRank', '2.0.2', versionsuffix), + ('Squidpy', '1.4.1'), + ('Cassiopeia', '2.0.0'), + ('scvi-tools', '1.1.2', versionsuffix), + ('scArches', '0.6.1', versionsuffix), + ('scib-metrics', '0.5.1', versionsuffix), + # deps of exts: + ('umap-learn', '0.5.5'), # bbknn + ('scikit-learn', '1.3.1'), # bbknn, sc_toolbox + ('PyYAML', '6.0'), # sc_toolbox + ('typing-extensions', '4.9.0'), # sc_toolbox + ('adjustText', '0.7.3'), # sc_toolbox + ('python-parasail', '1.3.4'), # scirpy + ('graph-tool', '2.59'), # schist + ('Pyomo', '6.7.3'), # pertpy + ('mpmath', '1.3.0'), # blitzgsea +] + +exts_list = [ + ('flit_core', '3.9.0', { + 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], + }), + ('annoy', '1.17.3', { + 'checksums': ['9cbfebefe0a5f843eba29c6be4c84d601f4f41ad4ded0486f1b88c3b07739c15'], + }), + ('pynndescent', '0.5.11', { + 'checksums': ['6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50'], + }), + ('bbknn', '1.6.0', { + 'checksums': ['1c01a9d6df2fc52a527de8a403617897a4b672724863299a7026f2132f1b041b'], + }), + ('tzlocal', '5.2', { + 'checksums': ['8d399205578f1a9342816409cc1e46a93ebd5755e39ea2d85334bea911bf0e6e'], + }), + ('anndata2ri', '1.3.1', { + 'checksums': ['0e3fa2f81789f682d19ef452fabdb401ec27899db9abe5a78e45e21dcc7caa42'], + }), + ('pypi-latest', '0.1.2', { + 'checksums': ['b195654567e6abaac6acfec37638d8e000838f419bc6b129962a896eedc4ed4e'], + }), + ('text-unidecode', '1.3', { + 'checksums': ['bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93'], + }), + ('python-slugify', '8.0.4', { + 'modulename': 'slugify', + 'checksums': ['59202371d1d05b54a9e7720c5e038f928f45daaffe41dd10822f3907b937c856'], + }), + ('prompt_toolkit', '3.0.36', { + 'checksums': ['3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63'], + }), + ('binaryornot', '0.4.4', { + 'checksums': ['359501dfc9d40632edc9fac890e19542db1a287bbcfa58175b66658392018061'], + }), + ('types-python-dateutil', '2.9.0.20240316', { + 'modulename': False, + 'checksums': ['5d2f2e240b86905e40944dd787db6da9263f0deabef1076ddaed797351ec0202'], + }), + ('arrow', '1.3.0', { + 'checksums': ['d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85'], + }), + ('cookiecutter', '2.6.0', { + 'checksums': ['db21f8169ea4f4fdc2408d48ca44859349de2647fbe494a9d6c3edfc0542c21c'], + }), + ('questionary', '2.0.1', { + 'checksums': ['bcce898bf3dbb446ff62830c86c5c6fb9a22a54146f0f5597d3da43b10d8fc8b'], + }), + ('rich', '13.7.1', { + 'checksums': ['9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432'], + }), + ('sc_toolbox', '0.12.3', { + 'checksums': ['6ca22a364c269a095114e620eb3c6da8aac1950d8f43f58ceea08005a09cc2cb'], + }), + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('altair', '5.2.0', { + 'checksums': ['2ad7f0c8010ebbc46319cc30febfb8e59ccf84969a201541c207bc3a4fa6cf81'], + }), + ('custom_inherit', '2.4.1', { + 'checksums': ['7052eb337bcce83551815264391cc4efc2bf70b295a3c52aba64f1ab57c3a8a2'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('pypng', '0.20220715.0', { + 'modulename': 'png', + 'checksums': ['739c433ba96f078315de54c0db975aee537cbc3e1d0ae4ed9aab0ca1e427e2c1'], + }), + ('reportlab', '4.1.0', { + 'checksums': ['3a99faf412691159c068b3ff01c15307ce2fd2cf6b860199434874e002040a84'], + }), + ('toyplot', '1.0.3', { + 'checksums': ['7b7b2bc5784fd75e5c695300bffc80d568c83bebef543bb54e6e6c2229912edd'], + }), + ('toytree', '2.0.5', { + 'checksums': ['7be04ca310067e0e9737449700d6ab1b68b4379b64e2d22f2f7697a70030ceb0'], + }), + ('tascCODA', '0.1.3', { + # strip out tensorflow-probability as required dependency, to ensure that 'pip check' passes + 'preinstallopts': "sed -i '/tensorflow-probability>=0.16/d' setup.py && ", + 'checksums': ['8c12ddccb72c41c96c6a5abceb52e7a76f439a9ab94fb092aa86ee3c1292383a'], + }), + ('harmonypy', '0.0.9', { + 'checksums': ['85bfdd4e6ec6e0fa8816a276639358d3598a40d60ba9f7a5d9dada8706be8c4d'], + }), + ('fbpca', '1.0', { + 'checksums': ['150677642479663f317fdbb5e06dab3f98721cf7031bb4a84113d7a631c472d1'], + }), + ('geosketch', '1.2', { + 'checksums': ['bbfe97366b91c5927b6076d5a6738d9cfbe094efb5ac1117aab7a30b6081cc4e'], + }), + ('python_circos', '0.3.0', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'modulename': 'pycircos', + 'checksums': ['410eaffc4eb2933cd688897356813da23310f5e2f14a8bceb003e9b96faa715b'], + }), + ('mizani', '0.9.3', { + 'checksums': ['fb61339e9e4711850e902ca286b1ae75255f483823d891aa0515b426d56c606d'], + }), + ('plotnine', '0.12.4', { + 'checksums': ['adc41a672503594445a8fa19872799253bd0784cdbd5a1cc16657a1dd20ba905'], + }), + ('ktplotspy', '0.2.3', { + 'checksums': ['9a1e3646217e6e99f59ab2258dfd76120cf1f50880c9cb2f9005de397c00f0a9'], + }), + ('cellphonedb', '5.0.0', { + 'checksums': ['1c96173d8527f1655216d265fc50a28ea3360d70486afa5050e3f5565fa3a8cd'], + }), + ('decoupler', '1.6.0', { + 'checksums': ['dde501f4d3e55a260f716e51b871bee403bc8aaa6b66799df0e42dee0787b98d'], + }), + ('mudata', '0.2.3', { + 'checksums': ['45288ac150bfc598d68acb7c2c1c43c38c5c39522107e04f7efbf3360c7f2035'], + }), + ('nodeenv', '1.9.0', { + 'checksums': ['07f144e90dae547bf0d4ee8da0ee42664a42a04e02ed68e06324348dafe4bdb1'], + }), + ('identify', '2.5.36', { + 'checksums': ['e5e00f54165f9047fbebeb4a560f9acfb8af4c88232be60a488e9b68d122745d'], + }), + ('cfgv', '3.4.0', { + 'checksums': ['e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560'], + }), + ('pre_commit', '3.7.1', { + 'checksums': ['8ca3ad567bc78a4972a3f1a477e94a79d4597e8140a6e0b651c5e33899c3654a'], + }), + ('muon', '0.1.6', { + 'checksums': ['762feeb6f52f865cf79d0d0332cc742fe91c1885f668ce15794b62b3952b02f9'], + }), + ('liana', '1.2.0', { + 'checksums': ['be899c69bfcbf3d0f8b61c04c35f225ac6b11fe1ea80e6ed4bdc0e6212cb2379'], + }), + ('squarify', '0.4.3', { + 'checksums': ['54091f6ad175f7f201f8934574e647ce1b50dedc478c5fd968688eb7d7469f95'], + }), + ('scikit_build_core', '0.9.3', { + 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], + }), + ('awkward-cpp', '33', { + 'checksums': ['550adebccd329d18d02e95226d0b89698188fd33e44f07450942c692881927d8'], + }), + ('awkward', '2.6.4', { + 'checksums': ['ee0cb27c64150f368749983dda499c108848c64dc830912480eb37b78c04300f'], + }), + ('yamlordereddictloader', '0.4.2', { + 'checksums': ['36af2f6210fcff5da4fc4c12e1d815f973dceb41044e795e1f06115d634bca13'], + }), + ('airr', '1.5.0', { + 'checksums': ['febc0a881bf46b1a9c29ac6a7089dd733ff9120d114585e75dede26403f68d42'], + }), + ('scirpy', '0.17.0', { + 'checksums': ['f61653a4f7387562ec89b00fbfd7cab762c0bf3320f21ccfc47df80a13cc5d41'], + }), + ('schist', '0.8.3', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/dawe/schist/archive/'], + 'checksums': ['9b98ec9d85554573288c24f18c4791ba7c4d315397cbc422ea25d4a7cdd42e6d'], + }), + ('typeguard', '2.13.3', { + 'checksums': ['00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4'], + }), + ('jaxtyping', '0.2.29', { + 'checksums': ['e1cd916ed0196e40402b0638449e7d051571562b2cd68d8b94961a383faeb409'], + }), + ('equinox', '0.11.4', { + 'checksums': ['0033d9731083f402a855b12a0777a80aa8507651f7aa86d9f0f9503bcddfd320'], + }), + ('lineax', '0.0.4', { + 'checksums': ['e68f1eba2f352122fdce9adc0556684f31eb8364b1a00acee484dd6e44a34e5e'], + }), + ('jaxopt', '0.8.3', { + 'checksums': ['4b06dfa6f915a4f3291699606245af6069371a48dc5c92d4c507840d62990646'], + }), + ('ott_jax', '0.4.6', { + 'modulename': 'ott', + 'checksums': ['bc91f8d512cdb344439f5584712d76cd0650b6716b6686d53b828cc67abdbcba'], + }), + ('sparsecca', '0.3.1', { + 'checksums': ['be1526baebac5ce6efbc7190fd62a1cec13288c493f5d427024f66ca6afaec13'], + }), + ('PubChemPy', '1.0.4', { + 'checksums': ['24e9dc2fc90ab153b2764bf805e510b1410700884faf0510a9e7cf0d61d8ed0e'], + }), + ('blitzgsea', '1.3.42', { + 'checksums': ['dcc997b5d29d190d8632474f3bb57b5ead7fb1370b478c7f824b42782325a1ca'], + }), + ('pertpy', '0.7.0', { + 'checksums': ['273723b5b70f3cb714bb36d3234462014b72e133111eeaf08aa47153c9df14aa'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SingleM/SingleM-0.16.0-foss-2023a.eb b/easybuild/easyconfigs/s/SingleM/SingleM-0.16.0-foss-2023a.eb new file mode 100644 index 00000000000..25fc18b7c63 --- /dev/null +++ b/easybuild/easyconfigs/s/SingleM/SingleM-0.16.0-foss-2023a.eb @@ -0,0 +1,107 @@ +easyblock = 'PythonBundle' + +name = 'SingleM' +version = '0.16.0' + +homepage = 'https://github.com/wwood/singlem' +description = """SingleM is a tool for profiling shotgun metagenomes. +It has a particular strength in detecting microbial lineages which are not in reference databases. +The method it uses also makes it suitable for some related tasks, such as assessing eukaryotic contamination, +finding bias in genome recovery, computing ecological diversity metrics, and lineage-targeted MAG recovery.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('hatchling', '1.18.0')] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('polars', '0.20.2'), + ('tqdm', '4.66.1'), + ('Arrow', '14.0.1'), + ('DIAMOND', '2.1.8'), + ('HMMER', '3.4'), + ('MAFFT', '7.520', '-with-extensions'), + ('OrfM', '0.7.1'), + ('mfqe', '0.5.0'), + ('KronaTools', '2.8.1'), + ('pplacer', '1.1.alpha19', '', SYSTEM), + ('SRA-Toolkit', '3.0.10'), + ('Seqmagick', '0.8.6'), + ('ExpressBetaDiversity', '1.0.10'), + ('FastTree', '2.1.11'), + ('SQLAlchemy', '2.0.25'), + ('CD-HIT', '4.8.1'), + ('smafa', '0.8.0'), + ('prodigal', '2.6.3'), + ('biom-format', '2.1.15'), + ('DendroPy', '4.6.1'), + ('PyYAML', '6.0'), + ('psycopg', '3.2.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('psycopg2-binary', '2.9.9', { + 'modulename': 'psycopg2', + 'checksums': ['7f01846810177d829c7692f1f5ada8096762d9172af1b1a28d4ab5b77c923c1c'], + }), + ('sqlparse', '0.5.1', { + 'checksums': ['bb6b4df465655ef332548e24f08e205afc81b9ab86cb1c45657a7ff173a3a00e'], + }), + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + ('argparse-manpage-birdtools', '1.7.0', { + 'modulename': 'build_manpages', + 'checksums': ['20eae3079a4a2dbe1a7557ef7276a4d8e5a44c7c4223afb50f4f1d0ae0e7d103'], + }), + ('taxtastic', '0.10.0', { + 'checksums': ['32db30aa2e499fbae913b991cd087fa69684ac4ff934b957c30b6085866f1748'], + }), + ('zenodo_backpack', '0.3.1', { + 'checksums': ['dc91f3c427f976465789746e94736abfa536cf42dc2e49b6d6067382a9a39b26'], + }), + ('bird_tool_utils', '0.4.1', { + 'checksums': ['6fe80f9608626427e8d382c5341c24088d61f17336fb6ce834d40aa4577499b5'], + }), + ('fastalite', '0.4.1', { + 'checksums': ['e85413ee22bdb3fe0f73f5226771cf71eb33074ccdf8bbefff3a1bc6242de37c'], + }), + ('squarify', '0.4.3', { + 'checksums': ['54091f6ad175f7f201f8934574e647ce1b50dedc478c5fd968688eb7d7469f95'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + ('extern', '0.4.1', { + 'checksums': ['0ff01adc2ad423f3d1e31641024b3974569fb0127b4d925bc6bed1cb86b6b1e4'], + }), + ('graftm', '0.15.1', { + 'checksums': ['80d828c311d2d6067977cfad5b6bac7cbc5d223ef8ab770d676b39bf2bc75163'], + }), + ('singlem', version, { + 'checksums': ['64e43a6a40795d68ff5aed7dfff9a94532b862f25a28c27de7d588d64a8c7f79'], + }), +] + +sanity_check_paths = { + 'files': ['bin/graftM', 'bin/singlem'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "graftM --help", + "singlem --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..891faddbf05 --- /dev/null +++ b/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,163 @@ +easyblock = 'PythonBundle' + +name = 'Slideflow' +version = '3.0.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://slideflow.dev/' +description = """Slideflow is a Python package that provides a unified API for +building and testing deep learning models for histopathology, supporting both +Tensorflow/Keras and PyTorch.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), + ('scikit-build', '0.17.6'), + ('poetry', '1.7.1'), +] + +dependencies = [ + ('aiohttp', '3.8.5'), + ('numba', '0.58.1'), + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('pyvips', '2.2.3'), + ('Pillow', '10.0.0'), + ('PyTorch', '2.1.2', '-CUDA-12.1.1'), + ('scikit-learn', '1.3.1'), + ('scikit-image', '0.22.0'), + ('torchvision', '0.16.0', '-CUDA-12.1.1'), + ('tqdm', '4.66.1'), + ('SWIG', '4.1.1'), + ('SciPy-bundle', '2023.07'), + ('PyOpenGL', '3.1.7'), + ('spaCy', '3.7.4'), + ('h5py', '3.9.0'), + ('OpenCV', '4.8.1', '-CUDA-12.1.1-contrib'), + ('rasterio', '1.3.9'), + ('dask', '2023.9.2'), + ('psutil', '5.9.8'), + ('tensorboard', '2.15.1'), + ('umap-learn', '0.5.5'), + ('zarr', '2.17.1'), + ('Arrow', '14.0.1'), + ('BeautifulSoup', '4.12.2'), + ('wrapt', '1.15.0'), + ('GLFW', '3.4'), + ('Seaborn', '0.13.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('triangle', '20230923', { + 'sources': [{ + 'filename': '%(name)s-v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/drufat', + 'repo_name': 'triangle', + 'tag': 'v20230923', 'recursive': True + } + }], + 'checksums': [None], + }), + (name, version, { + 'patches': ['%(name)s-%(version)s_fix-opencv-dep.patch'], + 'source_urls': ['https://github.com/jamesdolezal/%(namelower)s/archive/refs/tags/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': [ + {'3.0.1.tar.gz': '7fd6ca92805943e3d9d0208471205049ba48e46a9d8b910528d12788a01d5c2b'}, + {'Slideflow-3.0.1_fix-opencv-dep.patch': + '802438a42402a11de90fb09e1847336fa3664f0bca4d54512e15a1651171a8b9'}, + ], + }), + ('crc32c', '2.4', { + 'checksums': ['d985c4d9b1a1fd16c593d83f8735a8e4e156790a95338a1e0b199aac51ca1e5e'], + }), + ('ConfigSpace', '0.7.1', { + 'modulename': 'ConfigSpace', + 'checksums': ['57b5b8e28ed6ee14ecf6206fdca43ca698ef63bc1531f081d482b26acf4edf1a'], + }), + ('defusedxml', '0.7.1', { + 'checksums': ['1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69'], + }), + ('more-itertools', '9.1.0', { + 'checksums': ['cabaa341ad0389ea83c17a94566a53ae4c9d07349861ecb14dc6d0345cf9ac5d'], + }), + ('pyparsing', '3.1.0', { + 'checksums': ['edb662d6fe322d6e990b1594b5feaeadf806803359e3d4d42f11e295e588f0ea'], + }), + ('typing_extensions', '4.9.0', { + 'checksums': ['23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783'], + }), + ('fpdf2', '2.7.9', { + 'modulename': 'fpdf', + 'checksums': ['f364c0d816a5e364eeeda9761cf5c961bae8c946f080cf87fed7f38ab773b318'], + }), + ('gdown', '5.2.0', { + 'checksums': ['2145165062d85520a3cd98b356c9ed522c5e7984d408535409fd46f94defc787'], + }), + ('glfw', '2.7.0', { + 'checksums': ['0e209ad38fa8c5be67ca590d7b17533d95ad1eb57d0a3f07b98131db69b79000'], + }), + ('imgui', '2.0.0', { + 'checksums': ['2fbdb8eed3b8dbd7ea98af9e4c1c6582b0bc4da942a258de16333d8c653d67e1'], + }), + ('lifelines', '0.28.0', { + 'checksums': ['eecf726453fd409c94fef8a521f8e593bcd09337f920fe885131f01cfe58b25e'], + }), + ('autograd', '1.6.2', { + 'checksums': ['8731e08a0c4e389d8695a40072ada4512641c113b6cace8f4cfbe8eb7e9aedeb'], + }), + ('autograd-gamma', '0.5.0', { + 'checksums': ['f27abb7b8bb9cffc8badcbf59f3fe44a9db39e124ecacf1992b6d952934ac9c4'], + }), + ('formulaic', '1.0.1', { + 'checksums': ['64dd7992a7aa5bbceb1e40679d0f01fc6f0ba12b7d23d78094a88c2edc68fba1'], + }), + ('interface_meta', '1.3.0', { + 'checksums': ['8a4493f8bdb73fb9655dcd5115bc897e207319e36c8835f39c516a2d7e9d79a1'], + }), + ('parameterized', '0.9.0', { + 'checksums': ['7fc905272cefa4f364c1a3429cbbe9c0f98b793988efb5bf90aac80f08db09b1'], + }), + ('pyperclip', '1.8.2', { + 'checksums': ['105254a8b04934f0bc84e9c24eb360a591aaf6535c9def5f29d92af107a9bf57'], + }), + ('cffi', '1.15.1', { + 'checksums': ['d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9'], + }), + ('saliency', '0.2.1', { + 'checksums': ['79a3f64393a3ce89620bf46629af120c36a061019eff51b32b173378c8b18c63'], + }), + ('shapely', '2.0.4', { + 'checksums': ['5dc736127fac70009b8d309a0eeb74f3e08979e530cf7017f2f507ef62e6cfb8'], + }), + ('smac', '1.4.0', { + 'checksums': ['c58260af5ac2b2cd50b74f879202d5b5890c25d81e4c528abb51045ef4c679f9'], + }), + ('emcee', '3.1.6', { + 'checksums': ['11af4daf6ab8f9ca69681e3c29054665db7bbd87fd4eb8e437d2c3a1248c637d'], + }), + ('joblib', '1.2.0', { + 'checksums': ['e1cee4a79e4af22881164f218d4311f60074197fb707e082e803b61f6d137018'], + }), + ('pynisher', '0.6.4', { + 'checksums': ['111d91aad471375c0509a912415ff90053ef909100facf412511383af107c124'], + }), + ('pyrfr', '0.9.0', { + 'checksums': ['bc6e758317cf79579fe6b7ce5f01dd42f77c991bf707e33646e8c6a9112c186b'], + }), + ('regex', '2023.6.3', { + 'checksums': ['72d1a25bf36d2050ceb35b517afe13864865268dfb45910e2e17a84be6cbfeb0'], + }), + ('protobuf', '3.20.3', { + 'modulename': 'google.protobuf', + 'checksums': ['2e3427429c9cffebf259491be0af70189607f365c2f41c7c3764af6f337105f2'], + }), +] + +moduleclass = "ai" diff --git a/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1_fix-opencv-dep.patch b/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1_fix-opencv-dep.patch new file mode 100644 index 00000000000..cbd98f64f00 --- /dev/null +++ b/easybuild/easyconfigs/s/Slideflow/Slideflow-3.0.1_fix-opencv-dep.patch @@ -0,0 +1,12 @@ +Removes dependency on opencv-python-headless which causes conflicts. + +--- 3.0.1/foss-2023a-CUDA-12.1.1/Slideflow/slideflow-3.0.1/setup.py.orig 2024-10-02 14:50:03.699316470 +0200 ++++ 3.0.1/foss-2023a-CUDA-12.1.1/Slideflow/slideflow-3.0.1/setup.py 2024-10-02 14:50:31.615652542 +0200 +@@ -128,7 +128,6 @@ + 'scikit-learn', + 'matplotlib>=3.2', + 'imageio', +- opencv_pkg, + 'shapely', + 'umap-learn', + 'seaborn<0.14', diff --git a/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..371a8d85eea --- /dev/null +++ b/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'SlurmViewer' +version = '1.0.1' + +homepage = 'https://gitlab.com/lkeb/slurm_viewer' +description = """View the status of a Slurm cluster, including nodes and queue.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), + ('poetry', '1.6.1'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('pydantic', '2.7.4'), +] + +use_pip = True + +exts_list = [ + ('plotext', '5.2.8', { + 'checksums': ['319a287baabeb8576a711995f973a2eba631c887aa6b0f33ab016f12c50ffebe'], + }), + ('textual', '0.85.2', { + 'checksums': ['2a416995c49d5381a81d0a6fd23925cb0e3f14b4f239ed05f35fa3c981bb1df2'], + }), + ('textual-plotext', '0.2.1', { + 'source_tmpl': 'textual_plotext-%(version)s.tar.gz', + 'checksums': ['bc6f2d75d8e20dda6321f8254dc3decda8f41f60e6e70a3ddd83b652b890c081'], + }), + ('asyncssh', '2.18.0', { + 'checksums': ['1a322161c01f60b9719dc8f39f80db71e61f3f5e04abbc3420ce503126d87123'], + }), + ('slurm-viewer', version, { + 'source_tmpl': 'slurm_viewer-%(version)s-py3-none-any.whl', + 'checksums': ['2e42662881458701a09770a52062cb065527e30a39aac35165056f4ccf288f52'], + }), +] + +sanity_check_paths = { + 'files': ['bin/slurm-viewer', 'bin/slurm-viewer-init'], + 'dirs': ['lib'] +} + +sanity_pip_check = True + +modloadmsg = """Slurm Viewer requires a configuration file. +You can make a default settings file in your home directory by running slurm-viewer-init, +or you can point to a settings file by setting the environment variable $SLURM_VIEW_CONFIG.""" + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb b/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb new file mode 100644 index 00000000000..ad8e962950a --- /dev/null +++ b/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'Sniffles' +version = '2.4' + +homepage = 'https://github.com/fritzsedlazeck/Sniffles' +description = """A fast structural variant caller for long-read sequencing, + Sniffles2 accurately detect SVs on germline, somatic and population-level for PacBio and Oxford Nanopore read data.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +dependencies = [ + ('Python', '3.12.3'), + ('Pysam', '0.22.1'), + ('edlib', '1.3.9.post1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'sources': [SOURCELOWER_TAR_GZ], + 'checksums': ['e3c2f552105cd5f5941d6291b9ee9dbfe634ad19b5e7a64fa26b9e2daa6547d4'], + }), +] + +sanity_check_paths = { + 'files': ['bin/sniffles'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'from sniffles import sv'", + "sniffles --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/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..a2a82a58532 --- /dev/null +++ b/easybuild/easyconfigs/s/Spectre/Spectre-0.2.1-foss-2023a.eb @@ -0,0 +1,31 @@ +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'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +sanity_check_commands = [ + "spectre --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..c41639bc3ad --- /dev/null +++ b/easybuild/easyconfigs/s/Sphinx-RTD-Theme/Sphinx-RTD-Theme-2.0.0-GCCcore-12.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'Sphinx-RTD-Theme' +version = '2.0.0' + +homepage = 'https://sphinx-rtd-theme.readthedocs.io' +description = """Sphinx theme designed to provide a great reader experience + for documentation users on both desktop and mobile devices.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +use_pip = True + +exts_list = [ + ('sphinxcontrib-jquery', '4.1', { + 'modulename': 'sphinxcontrib.jquery', + 'checksums': ['1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a'], + }), + ('sphinx_rtd_theme', version, { + 'checksums': ['bd5d7b80622406762073a04ef8fadc5f9151261563d47027de09910ce03afe6b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/Stable-Baselines3/Stable-Baselines3-2.3.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Stable-Baselines3/Stable-Baselines3-2.3.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..61d42c21a8a --- /dev/null +++ b/easybuild/easyconfigs/s/Stable-Baselines3/Stable-Baselines3-2.3.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonBundle' + +name = 'Stable-Baselines3' +version = '2.3.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/DLR-RM/stable-baselines3' +description = """Stable Baselines3 (SB3) is a set of reliable implementations of +reinforcement learning algorithms in PyTorch.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Gymnasium', '0.29.1', versionsuffix), + ('PyTorch', '2.1.2', versionsuffix), + ('matplotlib', '3.7.2'), +] + +use_pip = True + +exts_list = [ + ('cloudpickle', '3.0.0', { + 'checksums': ['996d9a482c6fb4f33c1a35335cf8afd065d2a56e973270364840712d9131a882'], + }), + ('stable_baselines3', version, { + 'use_pip_extras': 'extra', + 'checksums': ['2f8188916e607571c4c24f88a9ff6f84edafb2cf22d5d24f9c199563c12ff168'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/Stack/Stack-3.1.1-x86_64.eb b/easybuild/easyconfigs/s/Stack/Stack-3.1.1-x86_64.eb new file mode 100644 index 00000000000..0a822a69cbd --- /dev/null +++ b/easybuild/easyconfigs/s/Stack/Stack-3.1.1-x86_64.eb @@ -0,0 +1,26 @@ +easyblock = 'Tarball' + +name = 'Stack' +version = '3.1.1' +versionsuffix = '-x86_64' + +homepage = 'https://docs.haskellstack.org' +description = """Stack is a cross-platform program for developing Haskell projects. +It is intended for Haskellers both new and experienced.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/commercialhaskell/stack/releases/download/v%(version)s/'] +sources = ['%(namelower)s-%(version)s-linux-x86_64.tar.gz'] +checksums = ['d096125ea3d987a55d17f7d4f8599ee2fd96bd2d0f033566e28ddfe248f730f9'] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['stack'], + 'dirs': ['doc'], +} + +sanity_check_commands = ['stack --help'] + +moduleclass = 'devel' 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/Stellarscope/Stellarscope-1.4.1-foss-2023a.eb b/easybuild/easyconfigs/s/Stellarscope/Stellarscope-1.4.1-foss-2023a.eb new file mode 100644 index 00000000000..27dd6fd92b4 --- /dev/null +++ b/easybuild/easyconfigs/s/Stellarscope/Stellarscope-1.4.1-foss-2023a.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'Stellarscope' +version = '1.4.1' + +homepage = 'https://github.com/nixonlab/stellarscope' +description = """Single-cell Transposable Element Locus Level Analysis of scRNA Sequencing.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('Pysam', '0.22.0'), + ('HTSlib', '1.18'), + ('intervaltree-python', '3.1.0'), + ('SAMtools', '1.18'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/nixonlab/stellarscope/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['64aa3fa30e9ee1d4857572a0f491fd4983c15a5b5906edf9a3b7cacda780b99c'], + }), +] + +sanity_check_paths = { + 'files': ['bin/stellarscope'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["stellarscope -h"] + +moduleclass = 'bio' 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..b8bf61dd6cf --- /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/Subread/Subread-2.0.6-GCC-12.3.0.eb b/easybuild/easyconfigs/s/Subread/Subread-2.0.6-GCC-12.3.0.eb new file mode 100644 index 00000000000..b7c21d845bf --- /dev/null +++ b/easybuild/easyconfigs/s/Subread/Subread-2.0.6-GCC-12.3.0.eb @@ -0,0 +1,39 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'MakeCp' + +name = 'Subread' +version = '2.0.6' + +homepage = 'https://subread.sourceforge.net/' +description = """High performance read alignment, quantification and mutation discovery""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(namelower)s-%(version)s-source.tar.gz'] +checksums = ['f0fdda6b98634d2946028948c220253e10a0f27c7fa5f24913b65b3ac6cbb045'] + +start_dir = 'src' + +prebuildopts = "sed -i 's/-mtune=core2//g' Makefile.Linux && " +prebuildopts += "sed -i 's/-mtune=core2//g' longread-one/Makefile && " + +buildopts = " -f Makefile.Linux" + +files_to_copy = ['bin'] + +local_binaries_list = [ + 'exactSNP', 'featureCounts', 'subindel', 'subjunc', 'sublong', '%(namelower)s-align', '%(namelower)s-buildindex', +] +sanity_check_paths = { + 'files': ['bin/%s' % f for f in local_binaries_list], + 'dirs': ['bin/utilities'], +} + +sanity_check_commands = [ + 'cd %(builddir)s/%(namelower)s-%(version)s-source/test && bash test_all.sh' +] + +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..9177b8c01b8 --- /dev/null +++ b/easybuild/easyconfigs/s/s3fs/s3fs-2024.9.0-foss-2024a.eb @@ -0,0 +1,32 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('fsspec', version, { + 'checksums': ['4b0afb90c2f21832df142f292649035d80b421f60a9e1c027802e5a0da2b04e8'], + }), + (name, version, { + 'checksums': ['6493705abb50374d6b7994f9616d27adbdd8a219c8635100bdc286382efd91f5'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/sPyRMSD/sPyRMSD-0.8.0-foss-2023a.eb b/easybuild/easyconfigs/s/sPyRMSD/sPyRMSD-0.8.0-foss-2023a.eb new file mode 100644 index 00000000000..3cff346fddb --- /dev/null +++ b/easybuild/easyconfigs/s/sPyRMSD/sPyRMSD-0.8.0-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonBundle' + +name = 'sPyRMSD' +version = '0.8.0' + +homepage = 'https://spyrmsd.readthedocs.io' +description = """ +sPyRMSD is a Python tool for symmetry-corrected RMSD calculations. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +# graph-tool is the default option, netwrokx and rustworkx are optional alternatives +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('graph-tool', '2.59'), + ('networkx', '3.1'), + ('rustworkx', '0.15.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('spyrmsd', version, { + 'checksums': ['401681c5338c06215321c7c3960ca28f22b575118478b7dec6f28b8823b58924'], + }), +] + +moduleclass = 'chem' 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 new file mode 100644 index 00000000000..bcabab4cc73 --- /dev/null +++ b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'scArches' +version = '0.6.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://github.com/theislab/scarches' +description = """Single-cell architecture surgery (scArches) is a package for reference-based analysis of single-cell + data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Python-bundle-PyPI', '2023.06'), + ('matplotlib', '3.7.2'), + ('anndata', '0.10.5.post1'), + ('h5py', '3.9.0'), + ('leidenalg', '0.10.2'), + ('scanpy', '1.9.8'), + ('scikit-learn', '1.3.1'), + ('scvi-tools', '1.1.2', versionsuffix), + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('gdown', '5.1.0', { + 'checksums': ['550a72dc5ca2819fe4bcc15d80d05d7c98c0b90e57256254b77d0256b9df4683'], + }), + ('muon', '0.1.6', { + 'checksums': ['762feeb6f52f865cf79d0d0332cc742fe91c1885f668ce15794b62b3952b02f9'], + }), + ('newick', '1.9.0', { + 'checksums': ['9f81be96ec86aefca74d920fc0d6962d89a3156547003ca6915c2e6e31ad3ddf'], + }), + ('scHPL', '1.0.5', { + 'modulename': 'scHPL', + # unpin pandas and newick versions to be compatible with foss/2023a versions + 'preinstallopts': "sed -i 's/~=/>=/g' setup.py && sed -i 's/pandas>=1.1.2,<2/pandas/g' setup.py && ", + 'checksums': ['3eb62b2e65b1faba04b7bcb86f7bf6967a6301866a605551211b8f14fd27eced'], + }), + (name, version, { + 'checksums': ['187463c25781d5c5586c129ad137d96327a9f8604d530a696d5f568a9225d77c'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb index bdcb1ab880c..e6b6f8d4e59 100644 --- a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb +++ b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb @@ -9,6 +9,10 @@ description = """Single-cell architecture surgery (scArches) is a package for re toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), diff --git a/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..375e693aeba --- /dev/null +++ b/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,46 @@ +easyblock = 'Tarball' + +name = 'scTIE' +version = '20231205' +local_commit = '044d91a' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/SydneyBioX/scTIE' +description = """scTIE (single-cell Temporal Integration and inference of multimodal Experiments) + is an autoencoder-based method for integrating multimodal profiling of scRNA-seq and scATAC-seq + data over a time course and inferring cell-type specific GRNs. scTIE projects cells from all time + points into a common embedding space, followed by extracting interpretable information from this + space to predict cell trajectories.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'SydneyBioX' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % local_commit] +checksums = ['bcbf7c846539d0f04e7bbf3cc6ae2fe075a4ba11e3a4388c29def943d39af53e'] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), + ('SciPy-bundle', '2023.07'), + ('CUDA', '12.1.1', '', SYSTEM), + ('POT', '0.9.3', versionsuffix), +] + +postinstallcmds = ['cd %(installdir)s && mkdir bin && ln -r -s main.py bin/sctie && chmod a+x main.py'] + +fix_python_shebang_for = ['main.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['bin/sctie'], + 'dirs': [], +} + +sanity_check_commands = ['sctie --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scVelo/scVelo-0.2.5-foss-2022a.eb b/easybuild/easyconfigs/s/scVelo/scVelo-0.2.5-foss-2022a.eb new file mode 100644 index 00000000000..5e7f3b40ba6 --- /dev/null +++ b/easybuild/easyconfigs/s/scVelo/scVelo-0.2.5-foss-2022a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'scVelo' +version = '0.2.5' + +homepage = "https://scvelo.org" +description = """scVelo is a scalable toolkit for estimating and analyzing RNA velocities in single cells using + dynamical modeling.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('scikit-learn', '1.1.2'), + ('h5py', '3.7.0'), + ('matplotlib', '3.5.2'), + ('networkx', '2.8.4'), + ('numba', '0.56.4'), + ('PyTables', '3.8.0'), + ('statsmodels', '0.13.1'), + ('libpng', '1.6.37'), + ('freetype', '2.12.1'), + ('Tkinter', '%(pyver)s'), + ('tqdm', '4.64.0'), + ('scanpy', '1.9.1'), # also provides anndata + ('Seaborn', '0.12.1'), + ('loompy', '3.0.7'), # also provides numpy-groupies + ('umap-learn', '0.5.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': 'scvelo', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['7e32d9e34245971330d69c12f4339cebe0acebb61e59a8b1aca9b369078b5207'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scanpy/scanpy-1.9.8-foss-2023a.eb b/easybuild/easyconfigs/s/scanpy/scanpy-1.9.8-foss-2023a.eb index dc34504eeee..49724e4ae26 100644 --- a/easybuild/easyconfigs/s/scanpy/scanpy-1.9.8-foss-2023a.eb +++ b/easybuild/easyconfigs/s/scanpy/scanpy-1.9.8-foss-2023a.eb @@ -13,6 +13,10 @@ description = """Scanpy is a scalable toolkit for analyzing single-cell gene exp toolchain = {'name': 'foss', 'version': '2023a'} toolchainopts = {'openmp': True} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), @@ -25,7 +29,6 @@ dependencies = [ ('networkx', '3.1'), ('numba', '0.58.1'), ('umap-learn', '0.5.5'), - ('hatchling', '1.18.0'), ('anndata', '0.10.5.post1'), ] diff --git a/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..b021ceb3c20 --- /dev/null +++ b/easybuild/easyconfigs/s/scib-metrics/scib-metrics-0.5.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'scib-metrics' +version = '0.5.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://scib-metrics.readthedocs.io' +description = "Accelerated and Python-only metrics for benchmarking single-cell integration outputs" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('hatchling', '1.18.0'), + ('poetry', '1.5.1'), +] +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('anndata', '0.10.5.post1'), + ('jax', '0.4.25', versionsuffix), + ('scikit-learn', '1.3.1'), + ('scanpy', '1.9.8'), + ('python-igraph', '0.11.4'), + ('matplotlib', '3.7.2'), + ('tqdm', '4.66.1'), + ('umap-learn', '0.5.5'), +] + +use_pip = True + +exts_list = [ + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('plottable', '0.1.5', { + 'checksums': ['235d762a31c82129dc5bf74205c103a14b1e4393d0f921cc0231be5de884041d'], + }), + ('pynndescent', '0.5.11', { + 'checksums': ['6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50'], + }), + ('rich', '13.7.1', { + 'checksums': ['9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432'], + }), + ('chex', '0.1.86', { + 'checksums': ['e8b0f96330eba4144659e1617c0f7a57b161e8cbb021e55c6d5056c7378091d1'], + }), + (name, version, { + 'sources': ['scib_metrics-%(version)s.tar.gz'], + 'checksums': ['74d10251acf1c11402b994faf063e55317881d7950fb78f6cef011d232a1e266'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..57e6f53d4c0 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.10.6-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build-core' +version = '0.10.6' + +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': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('CMake', '3.29.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('scikit_build_core', version, { + 'checksums': ['5397db8f09ee050d145406c11deed06538bb0b261df95f8d2d6aaf8699f0126d'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..a17cdb279fe --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build-core' +version = '0.9.3' + +homepage = 'https://scikit-build.readthedocs.io/en/latest/' +description = """Scikit-build-core is a complete ground-up rewrite of scikit-build on top of +modern packaging APIs. It provides a bridge between CMake and the Python build +system, allowing you to make Python modules with CMake.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('CMake', '3.26.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pyproject-metadata', '0.8.0', { + 'sources': ['pyproject_metadata-%(version)s.tar.gz'], + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), + ('scikit_build_core', version, { + 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-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 691bd671f50..f95d5d59160 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 @@ -25,6 +25,10 @@ use_pip = True sanity_pip_check = True exts_list = [ + ('pyproject-metadata', '0.8.0', { + 'sources': ['pyproject_metadata-%(version)s.tar.gz'], + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), ('scikit_build_core', version, { 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], }), diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb new file mode 100644 index 00000000000..be9c3fd844c --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '1.5.2' + +homepage = 'https://scikit-learn.org/stable/index.html' +description = """Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, +building upon numpy, scipy, and matplotlib. As a machine-learning module, +it provides versatile tools for data mining and analysis in any field of science and engineering. +It strives to be simple and efficient, accessible to everybody, and reusable in various contexts.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [ + ('Cython', '3.0.10'), + ('meson-python', '0.16.0'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': 'sklearn', + 'sources': ['scikit_learn-%(version)s.tar.gz'], + 'checksums': ['b4237ed7b3fdd0a4882792e68ef2545d5baa50aca3bb45aa7df468138ad8f94d'], + }), + ('sklearn', '0.0', { + 'checksums': ['e23001573aa194b834122d2b9562459bf5ae494a2d59ca6b8aa22c85a44c0e31'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2023a.eb b/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2023a.eb new file mode 100644 index 00000000000..5b6d65b6bb4 --- /dev/null +++ b/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2023a.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'scrublet' +version = '0.2.3' + +homepage = 'https://github.com/swolock/scrublet' +description = "Single-Cell Remover of Doublets - Python code for identifying doublets in single-cell RNA-seq data" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('scikit-learn', '1.3.1'), + ('scikit-image', '0.22.0'), + ('matplotlib', '3.7.2'), + ('numba', '0.58.1'), + ('tqdm', '4.66.1'), + ('umap-learn', '0.5.5'), +] + +use_pip = True + +exts_list = [ + ('annoy', '1.17.3', { + 'checksums': ['9cbfebefe0a5f843eba29c6be4c84d601f4f41ad4ded0486f1b88c3b07739c15'], + }), + (name, version, { + 'checksums': ['2185f63070290267f82a36e5b4cae8c321f10415d2d0c9f7e5e97b1126bf653a'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..c434f381cfd --- /dev/null +++ b/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'scvi-tools' +version = '1.1.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/scverse/scvi-tools' +description = """scvi-tools (single-cell variational inference tools) is a package for probabilistic modeling and +analysis of single-cell omics data, built on top of PyTorch and AnnData.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [('hatchling', '1.18.0')] +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('anndata', '0.10.5.post1'), + ('matplotlib', '3.7.2'), + ('scikit-learn', '1.3.1'), + ('tqdm', '4.66.1'), + ('h5py', '3.9.0'), + ('jax', '0.4.25', versionsuffix), + ('Flax', '0.8.4', versionsuffix), + ('PyTorch-Lightning', '2.2.1', versionsuffix), + ('pyro-ppl', '1.9.0', versionsuffix), + ('ml-collections', '0.1.1'), +] + +use_pip = True + +exts_list = [ + ('mudata', '0.2.3', { + 'checksums': ['45288ac150bfc598d68acb7c2c1c43c38c5c39522107e04f7efbf3360c7f2035'], + }), + ('multipledispatch', '1.0.0', { + 'checksums': ['5c839915465c68206c3e9c473357908216c28383b425361e5d144594bf85a7e0'], + }), + ('numpyro', '0.15.0', { + 'checksums': ['e16c9f47cc31e2aa259584a0b6c944312081d33ca92406022632ad584b0e600d'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + ('lightning', '2.1.4', { + 'checksums': ['0e45098c700fa28c604a11ae233ce181b44aeffce2404debebc2616118431d9f'], + }), + (name, version, { + 'modulename': 'scvi', + 'sources': ['scvi_tools-%(version)s.tar.gz'], + 'checksums': ['104a11a30e8996f5ceaa907b8c81b48b1f4b380d492ef2dd9b9a5577ed81b0f9'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a.eb b/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a.eb index f79f5895f45..be427d2af9e 100644 --- a/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a.eb +++ b/easybuild/easyconfigs/s/scvi-tools/scvi-tools-1.1.2-foss-2023a.eb @@ -22,7 +22,7 @@ dependencies = [ ('PyTorch-Lightning', '2.2.1'), ('pyro-ppl', '1.9.0'), ('ml-collections', '0.1.1'), - ('Optax', '0.2.2'), + ('Flax', '0.8.4'), ] use_pip = True @@ -37,19 +37,6 @@ exts_list = [ ('numpyro', '0.15.0', { 'checksums': ['e16c9f47cc31e2aa259584a0b6c944312081d33ca92406022632ad584b0e600d'], }), - ('nest_asyncio', '1.6.0', { - 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], - }), - ('orbax_checkpoint', '0.5.15', { - 'modulename': 'orbax.checkpoint', - 'checksums': ['15195e8d1b381b56f23a62a25599a3644f5d08655fa64f60bb1b938b8ffe7ef3'], - }), - ('tensorstore', '0.1.60', { - 'checksums': ['88da8f1978982101b8dbb144fd29ee362e4e8c97fc595c4992d555f80ce62a79'], - }), - ('flax', '0.8.4', { - 'checksums': ['968683f850198e1aa5eb2d9d1e20bead880ef7423c14f042db9d60848cb1c90b'], - }), ('docrep', '0.3.2', { 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], }), diff --git a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.6.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.6.0-GCCcore-12.3.0.eb index 8cbf2db9fe7..b2517ef684c 100644 --- a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.6.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.6.0-GCCcore-12.3.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.11.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('typing_extensions', '4.6.3', { diff --git a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb index 669229c8f11..044d56266ae 100644 --- a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.11.5'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('typing_extensions', '4.8.0', { diff --git a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.9.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.9.0-GCCcore-13.3.0.eb index a8ad0dc7ee9..b763364ba26 100644 --- a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.9.0-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.9.0-GCCcore-13.3.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.12.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('typing-extensions', '4.12.2', { diff --git a/easybuild/easyconfigs/s/sirocco/sirocco-2.1.0-GCC-13.2.0.eb b/easybuild/easyconfigs/s/sirocco/sirocco-2.1.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..3819e493fe2 --- /dev/null +++ b/easybuild/easyconfigs/s/sirocco/sirocco-2.1.0-GCC-13.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'sirocco' +version = '2.1.0' + +homepage = 'https://github.com/miguelmarco/SIROCCO2/' +description = """C++ library that allows to compute piecewise linear + approximations of the path followed by the root of a complex polynomial""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/miguelmarco/SIROCCO2/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1fd66ae94d73095f1355389c1d3d94222437bed87579d77667f50548bdd9fa9a'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('MPFR', '4.2.1'), +] + +preconfigopts = 'autoreconf --install && ' + +sanity_check_paths = { + 'files': [ + 'include/sirocco.h', + 'lib/libsirocco.%s' % SHLIB_EXT, + ], + 'dirs': [] +} + +moduleclass = 'math' 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/slepc4py/slepc4py-3.17.2-foss-2022a.eb b/easybuild/easyconfigs/s/slepc4py/slepc4py-3.17.2-foss-2022a.eb new file mode 100644 index 00000000000..c34f17533e0 --- /dev/null +++ b/easybuild/easyconfigs/s/slepc4py/slepc4py-3.17.2-foss-2022a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'slepc4py' +version = '3.17.2' + +homepage = 'https://bitbucket.org/slepc/slepc4py' +description = "Python bindings for SLEPc, the Scalable Library for Eigenvalue Problem Computations." + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e5b235486b6901cd4ff0d94083f0e5eeacaef3a2893e1714769717ad488a3885'] + +dependencies = [ + ('Python', '3.10.4'), + ('SLEPc', version), + ('petsc4py', '3.17.4'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ["python -c 'from slepc4py import SLEPc'"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/slepc4py/slepc4py-3.20.2-foss-2023a.eb b/easybuild/easyconfigs/s/slepc4py/slepc4py-3.20.2-foss-2023a.eb new file mode 100644 index 00000000000..c161116802d --- /dev/null +++ b/easybuild/easyconfigs/s/slepc4py/slepc4py-3.20.2-foss-2023a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'slepc4py' +version = '3.20.2' + +homepage = 'https://bitbucket.org/slepc/slepc4py' +description = "Python bindings for SLEPc, the Scalable Library for Eigenvalue Problem Computations." + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['89ebd1964edd0eb63d4dbfa977d6f35408f4e19a3da290696fd1197901544bd8'] + +dependencies = [ + ('Python', '3.11.3'), + ('SLEPc', '3.20.1'), + ('petsc4py', '3.20.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ["python -c 'from slepc4py import SLEPc'"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb b/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb new file mode 100644 index 00000000000..f03005cda38 --- /dev/null +++ b/easybuild/easyconfigs/s/sleuth/sleuth-0.30.1-foss-2023a.eb @@ -0,0 +1,25 @@ +easyblock = 'RPackage' + +name = 'sleuth' +version = '0.30.1' + +homepage = 'https://pachterlab.github.io/sleuth' +description = """Investigate RNA-Seq transcript abundance from kallisto and perform differential expression analysis.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/pachterlab/sleuth/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4c8efca5d726471cb71187e8db07097a50f63aadf42f6fa25c59e7eed635f982'] + +dependencies = [ + ('R', '4.3.2'), + ('R-bundle-Bioconductor', '3.18', '-R-%(rver)s'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/smafa/smafa-0.8.0-GCC-12.3.0.eb b/easybuild/easyconfigs/s/smafa/smafa-0.8.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..342d27e7548 --- /dev/null +++ b/easybuild/easyconfigs/s/smafa/smafa-0.8.0-GCC-12.3.0.eb @@ -0,0 +1,235 @@ +easyblock = 'Cargo' + +name = 'smafa' +version = '0.8.0' + +homepage = 'https://github.com/wwood/smafa' +description = 'Biological sequence aligner for pre-aligned sequences.' + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/wwood/smafa/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v0.8.0.tar.gz': '6f103ecd5cdf36fb61572a757732eeb07e905c61b497fa247c1a8397ee775c2d'}, + {'addr2line-0.22.0.tar.gz': '6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anstream-0.6.14.tar.gz': '418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b'}, + {'anstyle-1.0.7.tar.gz': '038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b'}, + {'anstyle-parse-0.2.4.tar.gz': 'c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4'}, + {'anstyle-query-1.1.0.tar.gz': 'ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391'}, + {'anstyle-wincon-3.0.3.tar.gz': '61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19'}, + {'assert_cli-0.6.3.tar.gz': 'a29ab7c0ed62970beb0534d637a8688842506d0ff9157de83286dacd065c8149'}, + {'atomic-polyfill-1.0.3.tar.gz': '8cf2bce30dfe09ef0bfaef228b9d414faaf7e563035494d7fe092dba54b300f4'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'backtrace-0.3.73.tar.gz': '5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a'}, + {'bird_tool_utils-0.4.1.tar.gz': '6f5f475a22ef913421b64a8d09fad619d9a3a828a5a7450e9b32ab177aa3df56'}, + {'bird_tool_utils-man-0.4.0.tar.gz': 'a263d1717fd146db3c9bfc0668f9bf19d9078a79fa2c1ba54f00b6d8702d4e0b'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'buffer-redux-1.0.1.tar.gz': '4c9f8ddd22e0a12391d1e7ada69ec3b0da1914f1cec39c5cf977143c5b2854f5'}, + {'bytecount-0.6.8.tar.gz': '5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce'}, + {'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'}, + {'cargo-husky-1.5.0.tar.gz': '7b02b629252fe8ef6460461409564e2c21d0c8e77e0944f3d189ff06c4e932ad'}, + {'cc-1.1.5.tar.gz': '324c74f2155653c90b04f25b2a47a8a631360cb908f92a772695f430c7e31052'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'clap-4.5.9.tar.gz': '64acc1846d54c1fe936a78dc189c34e28d3f5afc348403f28ecf53660b9b8462'}, + {'clap_builder-4.5.9.tar.gz': '6fb8393d67ba2e7bfaf28a23458e4e2b543cc73a99595511eb207fdb8aede942'}, + {'clap_lex-0.7.1.tar.gz': '4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70'}, + {'cobs-0.2.3.tar.gz': '67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15'}, + {'colorchoice-1.0.1.tar.gz': '0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422'}, + {'colored-1.9.4.tar.gz': '5a5f741c91823341bebf717d4c71bda820630ce065443b58bd1b7451af008355'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'critical-section-1.1.2.tar.gz': '7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216'}, + {'difference-2.0.0.tar.gz': '524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198'}, + {'embedded-io-0.4.0.tar.gz': 'ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced'}, + {'env_logger-0.10.2.tar.gz': '4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580'}, + {'environment-0.1.1.tar.gz': '1f4b14e20978669064c33b4c1e0fb4083412e40fe56cbea2eae80fd7591503ee'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'failure-0.1.8.tar.gz': 'd32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86'}, + {'failure_derive-0.1.8.tar.gz': 'aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4'}, + {'fastrand-2.1.0.tar.gz': '9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a'}, + {'flate2-1.0.30.tar.gz': '5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae'}, + {'gimli-0.29.0.tar.gz': '40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd'}, + {'hash32-0.2.1.tar.gz': 'b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67'}, + {'heapless-0.7.17.tar.gz': 'cdc6457c0eb62c71aac4bc17216026d8410337c4126773b9c5daba343f17964f'}, + {'hermit-abi-0.3.9.tar.gz': 'd231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'is-terminal-0.4.12.tar.gz': 'f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b'}, + {'is_terminal_polyfill-1.70.0.tar.gz': 'f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.155.tar.gz': '97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.12.tar.gz': '07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'lzma-sys-0.1.20.tar.gz': '5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'miniz_oxide-0.7.4.tar.gz': 'b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08'}, + {'needletail-0.5.1.tar.gz': 'db05a5ab397f64070d8c998fa0fbb84e484b81f95752af317dac183a82d9295d'}, + {'object-0.36.1.tar.gz': '081b846d1d56ddfc18fdf1a922e4f6e07a11768ea1b92dec44e42b72712ccfce'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'postcard-1.0.8.tar.gz': 'a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'quote-1.0.36.tar.gz': '0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7'}, + {'regex-1.10.5.tar.gz': 'b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f'}, + {'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}, + {'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}, + {'roff-0.1.0.tar.gz': 'e33e4fb37ba46888052c763e4ec2acfedd8f00f62897b630cadb6298b833675e'}, + {'rustc-demangle-0.1.24.tar.gz': '719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f'}, + {'rustc_version-0.4.0.tar.gz': 'bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366'}, + {'rustix-0.38.34.tar.gz': '70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'semver-1.0.23.tar.gz': '61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b'}, + {'serde-1.0.204.tar.gz': 'bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12'}, + {'serde_derive-1.0.204.tar.gz': 'e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222'}, + {'serde_json-1.0.120.tar.gz': '4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5'}, + {'spin-0.9.8.tar.gz': '6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67'}, + {'stable_deref_trait-1.2.0.tar.gz': 'a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.71.tar.gz': 'b146dcf730474b4bcd16c311627b31ede9ab149045db4d6088b3becaea046462'}, + {'synstructure-0.12.6.tar.gz': 'f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f'}, + {'tempfile-3.10.1.tar.gz': '85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1'}, + {'termcolor-1.4.1.tar.gz': '06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-xid-0.2.4.tar.gz': 'f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c'}, + {'utf8parse-0.2.2.tar.gz': '06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821'}, + {'version-compare-0.1.1.tar.gz': '579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.8.tar.gz': '4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'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'}, + {'xz2-0.1.7.tar.gz': '388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2'}, +] + +builddependencies = [ + ('Rust', '1.75.0'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +crates = [ + ('addr2line', '0.22.0'), + ('adler', '1.0.2'), + ('aho-corasick', '1.1.3'), + ('anstream', '0.6.14'), + ('anstyle', '1.0.7'), + ('anstyle-parse', '0.2.4'), + ('anstyle-query', '1.1.0'), + ('anstyle-wincon', '3.0.3'), + ('assert_cli', '0.6.3'), + ('atomic-polyfill', '1.0.3'), + ('autocfg', '1.3.0'), + ('backtrace', '0.3.73'), + ('bird_tool_utils', '0.4.1'), + ('bird_tool_utils-man', '0.4.0'), + ('bitflags', '2.6.0'), + ('buffer-redux', '1.0.1'), + ('bytecount', '0.6.8'), + ('byteorder', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cargo-husky', '1.5.0'), + ('cc', '1.1.5'), + ('cfg-if', '1.0.0'), + ('clap', '4.5.9'), + ('clap_builder', '4.5.9'), + ('clap_lex', '0.7.1'), + ('cobs', '0.2.3'), + ('colorchoice', '1.0.1'), + ('colored', '1.9.4'), + ('crc32fast', '1.4.2'), + ('critical-section', '1.1.2'), + ('difference', '2.0.0'), + ('embedded-io', '0.4.0'), + ('env_logger', '0.10.2'), + ('environment', '0.1.1'), + ('errno', '0.3.9'), + ('failure', '0.1.8'), + ('failure_derive', '0.1.8'), + ('fastrand', '2.1.0'), + ('flate2', '1.0.30'), + ('gimli', '0.29.0'), + ('hash32', '0.2.1'), + ('heapless', '0.7.17'), + ('hermit-abi', '0.3.9'), + ('humantime', '2.1.0'), + ('is-terminal', '0.4.12'), + ('is_terminal_polyfill', '1.70.0'), + ('itoa', '1.0.11'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.155'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.12'), + ('log', '0.4.22'), + ('lzma-sys', '0.1.20'), + ('memchr', '2.7.4'), + ('miniz_oxide', '0.7.4'), + ('needletail', '0.5.1'), + ('object', '0.36.1'), + ('pkg-config', '0.3.30'), + ('postcard', '1.0.8'), + ('proc-macro2', '1.0.86'), + ('quote', '1.0.36'), + ('regex', '1.10.5'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('roff', '0.1.0'), + ('rustc-demangle', '0.1.24'), + ('rustc_version', '0.4.0'), + ('rustix', '0.38.34'), + ('ryu', '1.0.18'), + ('scopeguard', '1.2.0'), + ('semver', '1.0.23'), + ('serde', '1.0.204'), + ('serde_derive', '1.0.204'), + ('serde_json', '1.0.120'), + ('spin', '0.9.8'), + ('stable_deref_trait', '1.2.0'), + ('strsim', '0.11.1'), + ('syn', '1.0.109'), + ('syn', '2.0.71'), + ('synstructure', '0.12.6'), + ('tempfile', '3.10.1'), + ('termcolor', '1.4.1'), + ('unicode-ident', '1.0.12'), + ('unicode-xid', '0.2.4'), + ('utf8parse', '0.2.2'), + ('version-compare', '0.1.1'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.8'), + ('winapi-x86_64-pc-windows-gnu', '0.4.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'), + ('xz2', '0.1.7'), +] + +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..66056138103 --- /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/spektral/spektral-1.2.0-fosscuda-2020b-TensorFlow-2.5.0.eb b/easybuild/easyconfigs/s/spektral/spektral-1.2.0-fosscuda-2020b-TensorFlow-2.5.0.eb new file mode 100644 index 00000000000..75446a8cbff --- /dev/null +++ b/easybuild/easyconfigs/s/spektral/spektral-1.2.0-fosscuda-2020b-TensorFlow-2.5.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'spektral' +version = '1.2.0' +local_tf_version = '2.5.0' +versionsuffix = '-TensorFlow-%s' % local_tf_version + +homepage = 'https://graphneural.network' +description = "Spektral is a Python library for graph deep learning, based on the Keras API and TensorFlow 2" + +toolchain = {'name': 'fosscuda', 'version': '2020b'} + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.11'), + ('lxml', '4.6.2'), + ('networkx', '2.5'), + ('scikit-learn', '0.23.2'), + ('tqdm', '4.56.2'), + ('TensorFlow', local_tf_version), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'checksums': ['215f148e5d5067081bc28abe282bfd0942ed8be6d68f128fd7786006a884abf7'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..d4b6fd82447 --- /dev/null +++ b/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'spektral' +version = '1.3.1' +versionsuffix = '-CUDA-12.1.1' + +homepage = 'https://graphneural.network' +description = "Spektral is a Python library for graph deep learning, based on the Keras API and TensorFlow 2" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('lxml', '4.9.2'), + ('networkx', '3.1'), + ('scikit-learn', '1.3.1'), + ('tqdm', '4.66.1'), + ('TensorFlow', '2.15.1', versionsuffix), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'checksums': ['953d9954995b8b434dd0f464e25407ad83446d39fe7a23543a8e2fec8c01eb8b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a.eb b/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a.eb new file mode 100644 index 00000000000..244640d01f4 --- /dev/null +++ b/easybuild/easyconfigs/s/spektral/spektral-1.3.1-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonBundle' + +name = 'spektral' +version = '1.3.1' + +homepage = 'https://graphneural.network' +description = "Spektral is a Python library for graph deep learning, based on the Keras API and TensorFlow 2" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('lxml', '4.9.2'), + ('networkx', '3.1'), + ('scikit-learn', '1.3.1'), + ('tqdm', '4.66.1'), + ('TensorFlow', '2.13.0'), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'checksums': ['953d9954995b8b434dd0f464e25407ad83446d39fe7a23543a8e2fec8c01eb8b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' 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..a6954207aa7 --- /dev/null +++ b/easybuild/easyconfigs/s/spglib-python/spglib-python-2.5.0-gfbf-2024a.eb @@ -0,0 +1,37 @@ +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'), +] + +use_pip = True + +sanity_pip_check = True + +exts_list = [ + ('pyproject_metadata', '0.8.0', { + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), + ('spglib', version, { + 'checksums': ['f8bb638897be91b9dbd4c085d9fde1f69048f5949e20f3832cb9438e57418d4b'], + }), +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/s/starcode/starcode-1.4-GCC-13.2.0.eb b/easybuild/easyconfigs/s/starcode/starcode-1.4-GCC-13.2.0.eb new file mode 100644 index 00000000000..dfc8917e067 --- /dev/null +++ b/easybuild/easyconfigs/s/starcode/starcode-1.4-GCC-13.2.0.eb @@ -0,0 +1,40 @@ +# easybuild easyconfig +# +# John Dey +# +# Fred Hutchinson Cancer Center - Seattle Washington US +# +easyblock = 'MakeCp' + +name = 'starcode' +version = '1.4' +local_commit = '8987b2e' + +homepage = 'https://github.com/gui11aume/starcode' +description = """Starcode is a DNA sequence clustering software. Starcode clustering is based on all pairs +search within a specified Levenshtein distance (allowing insertions and deletions), followed by a clustering +algorithm: Message Passing, Spheres or Connected Components.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +github_account = 'gui11aume' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['4343c070d9149760516e3a47a46edb2f2280325728a28b83796f6d344faf4e06'] + +dependencies = [ +] + +files_to_copy = [ + 'doc', 'misc', 'test', + (['starcode', 'starcode-umi'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = [('%(name)s', '--help')] + +moduleclass = 'bio' 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..ee5cb197a7d --- /dev/null +++ b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.14.4-gfbf-2024a.eb @@ -0,0 +1,35 @@ +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'), +] + +sanity_pip_check = True +use_pip = True + +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..f9e6778cec2 --- /dev/null +++ b/easybuild/easyconfigs/s/subset-bam/subset-bam-1.1.0.eb @@ -0,0 +1,24 @@ +easyblock = 'Binary' + +name = 'subset-bam' +version = '1.1.0' + +homepage = 'https://github.com/10XGenomics/subset-bam' +description = """subset-bam is a tool to subset a 10x Genomics BAM file based on a tag, +most commonly the cell barcode tag.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/10XGenomics/subset-bam/releases/download/v%(version)s/'] + +sources = [{'download_filename': 'subset-bam_linux', 'filename': name}] +checksums = ['05496ea56d52becdb7972528af0a486be1d52c1749e35bea9ae4c41215ed0a1b'] + +sanity_check_paths = { + 'dirs': [], + 'files': [name], +} + +sanity_check_commands = ["%(name)s --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/svist4get/svist4get-1.3.1-foss-2022b.eb b/easybuild/easyconfigs/s/svist4get/svist4get-1.3.1-foss-2022b.eb new file mode 100644 index 00000000000..72d977763e9 --- /dev/null +++ b/easybuild/easyconfigs/s/svist4get/svist4get-1.3.1-foss-2022b.eb @@ -0,0 +1,61 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) +# Update: Pavel Tománek (Inuits) + +easyblock = 'PythonBundle' + +name = 'svist4get' +version = '1.3.1' + +homepage = 'https://github.com/art-egorov/svist4get' +description = """Svist4get is a simple bioinformatics tool for visualization of +genomic signal tracks in user-defined genomic windows, either arbitrary selected +by genomic coordinates or anchored to particular transcripts or genes.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('pybedtools', '0.9.0'), + ('Biopython', '1.81'), + ('Pillow', '9.4.0'), + ('ImageMagick', '7.1.0-53'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('reportlab', '3.6.9', { + 'patches': ['reportlab-3.6.12-fontconfig.patch'], + 'checksums': ['5d0cc3682456ad213150f6dbffe7d47eab737d809e517c316103376be548fb84', + # reportlab-3.6.12-fontconfig.patch: + '2cc9b40e09650b7404ee9c4d72b134739acc89bacac3da58131cef2308726297'], + }), + ('configs', '3.0.3', { + 'sources': ['%(name)s-%(version)s.zip'], + 'checksums': ['a5ab09e04e441dac6aa856a71fbf5ffc62954352630f79d311b8f8a31d9ce19c'], + }), + ('argparse', '1.4.0', { + 'checksums': ['62b089a55be1d8949cd2bc7e0df0bddb9e028faefc8c32038cc84862aefdd6e4'], + }), + ('Wand', '0.6.10', { + 'checksums': ['373f4a7f2866c868c31ce910e1f9b36a92d132640a20068ec17cea3284fedc57'], + }), + (name, version, { + # unpin statistics dependency - it is old package and interfering with python lib statistics + 'preinstallopts': "sed -i 's/statistics//' setup.py && ", + 'checksums': ['22311fdc956cca531dac7ba924744e8f870a57bc6f27cbe4e8ba9854117e720c'], + }), +] + +sanity_check_paths = { + 'files': ['bin/svist4get', 'bin/svist4get_copier'], + 'dirs': ['lib'], +} + +sanity_check_commands = [ + "svist4get --help", + "svist4get -v", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/sympy/sympy-1.13.3-gfbf-2024a.eb b/easybuild/easyconfigs/s/sympy/sympy-1.13.3-gfbf-2024a.eb new file mode 100644 index 00000000000..98256c920da --- /dev/null +++ b/easybuild/easyconfigs/s/sympy/sympy-1.13.3-gfbf-2024a.eb @@ -0,0 +1,22 @@ +name = 'sympy' +version = '1.13.3' + +homepage = 'https://sympy.org/' +description = """SymPy is a Python library for symbolic mathematics. It aims to + become a full-featured computer algebra system (CAS) while keeping the code as + simple as possible in order to be comprehensible and easily extensible. SymPy + is written entirely in Python and does not require any external libraries.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['b27fd2c6530e0ab39e275fc9b683895367e51d5da91baa8d3d64db2565fec4d9'] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('gmpy2', '2.2.0'), +] + + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/TELEMAC-MASCARET/TELEMAC-MASCARET-8p5r0-foss-2023a.eb b/easybuild/easyconfigs/t/TELEMAC-MASCARET/TELEMAC-MASCARET-8p5r0-foss-2023a.eb new file mode 100644 index 00000000000..ab96be49230 --- /dev/null +++ b/easybuild/easyconfigs/t/TELEMAC-MASCARET/TELEMAC-MASCARET-8p5r0-foss-2023a.eb @@ -0,0 +1,90 @@ +easyblock = 'Binary' + +name = 'TELEMAC-MASCARET' +version = '8p5r0' + +homepage = 'http://www.opentelemac.org' +description = """TELEMAC-MASCARET is an integrated suite of solvers for use in the field of free-surface flow. Having +been used in the context of many studies throughout the world, it has become one of the major standards in its field.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'extra_fcflags': "-fallow-invalid-boz"} + +source_urls = ['https://gitlab.pam-retd.fr/otm/telemac-mascaret/-/archive/v%(version)s/'] +sources = ['telemac-mascaret-v%(version)s.tar.gz'] +checksums = ['2beb9793fb83d17de31b17f001f985fc30702c151e2ced614f5e0117e8e34aa0'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # provides numpy, scipy + ('matplotlib', '3.7.2'), + ('HDF5', '1.14.0'), + ('METIS', '5.1.0'), + ('SCOTCH', '7.0.3'), + ('MUMPS', '5.6.1', '-metis'), +] + +extract_sources = True +unpack_options = '--strip-components=1' + +buildininstalldir = True + +local_tweak_cfg_cmd = ' '.join([ + "sed -i -e 's/S10.gfortran/easybuild/g'", + # strip out use of AED, GOTM, MED (optional dependencies) + r"-e 's/\(^[a-z]*_aed:\).*/\1/g' -e 's/\(^[a-z]*_gotm:\).*/\1/g' -e 's/\(^[a-z]*_med:\).*/\1/g'", + # replace -O2 with desired compiler options + '-e "s/-O2/$F90FLAGS/g"', + # fix linker option for BLAS + '-e "s/ -lblas/ $LIBBLAS/g"', + # downgrade Fortran compiler error to warning + "-e 's/^fflags_gfo:/fflags_gfo: -fallow-invalid-boz/g'", + # Disable hyperthreading option + "-e 's/--use-hwthread-cpus//'", + "$HOMETEL/configs/systel.easybuild.cfg", +]) + +install_cmd = ' && '.join([ + "export HOMETEL=$PWD", + # add Python scripts to $PATH and $PYTHONPATH + "export PATH=$HOMETEL/scripts/python3/:$PATH", + "export PYTHONPATH=$HOMETEL/scripts/python3:$PYTHONPATH", + # force python to flush its output + "export PYTHONUNBUFFERED=1", + "cp $HOMETEL/configs/systel.edf.cfg $HOMETEL/configs/systel.easybuild.cfg", + local_tweak_cfg_cmd, + "export SYSTELCFG=$HOMETEL/configs/systel.easybuild.cfg", + "export USETELCFG=easybuild.dyn", + "export SCALAPACKHOME=$EBROOTSCALAPACK", + "export METISHOME=$EBROOTMETIS", + "export SCOTCHHOME=$EBROOTSCOTCH", + "export MUMPSHOME=$EBROOTMUMPS", + "export HDF5HOME=$EBROOTHDF5", + "config.py", + "compile_telemac.py -j %(parallel)s", +]) + +sanity_check_paths = { + 'files': ['builds/easybuild.dyn/bin/telemac2d', 'builds/easybuild.dyn/bin/telemac3d', + 'builds/easybuild.dyn/lib/libtelemac2d.%s' % SHLIB_EXT, + 'builds/easybuild.dyn/lib/libtelemac3d.%s' % SHLIB_EXT], + 'dirs': ['scripts/python3'], +} + +sanity_check_commands = [ + "tmpdir=$(mktemp -d) && cp -a %(installdir)s/examples/telemac2d/gouttedo $tmpdir/ && chmod -R u+w $tmpdir && " + "cd $tmpdir/gouttedo && telemac2d.py t2d_gouttedo.cas", +] + +modextrapaths = { + 'LD_LIBRARY_PATH': 'builds/easybuild.dyn/lib', + 'PATH': 'scripts/python3', + 'PYTHONPATH': 'scripts/python3', +} + +modextravars = { + 'SYSTELCFG': '%(installdir)s/configs/systel.easybuild.cfg', + 'USETELCFG': 'easybuild.dyn', +} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb new file mode 100644 index 00000000000..ab7aa3071a8 --- /dev/null +++ b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonPackage' + +name = 'TEtranscripts' +version = '2.2.3' + +homepage = 'https://github.com/mhammell-laboratory/TEtranscripts' +description = """TEtranscripts and TEcount takes RNA-seq (and similar data) and annotates reads +to both genes & transposable elements. +TEtranscripts then performs differential analysis using DESeq2.""" + +sources = [SOURCE_TAR_GZ] +checksums = ['e53577e8e73e41c6495fb819977e3e537bbeac7b2fa1635029201a37ee0bf7b8'] + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Pysam', '0.22.0'), + ('R', '4.3.2'), + ('R-bundle-Bioconductor', '3.18', '-R-%(rver)s'), +] + +use_pip = True +download_dep_fail = True + +options = {'modulename': 'TEToolkit'} + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/TEtranscripts', 'bin/TEcount'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'TEtranscripts --version', + 'TEcount --version', +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TF-COMB/TF-COMB-1.1-foss-2022b.eb b/easybuild/easyconfigs/t/TF-COMB/TF-COMB-1.1-foss-2022b.eb new file mode 100644 index 00000000000..2c06e8c9c8f --- /dev/null +++ b/easybuild/easyconfigs/t/TF-COMB/TF-COMB-1.1-foss-2022b.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'TF-COMB' +version = '1.1' + +homepage = 'https://github.com/loosolab/TF-COMB' +description = """Transcription Factor Co-Occurrence using Market Basket analysis.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('tqdm', '4.64.1'), + ('Pysam', '0.21.0'), + ('matplotlib', '3.7.0'), + ('networkx', '3.0'), + ('Graphviz', '8.1.0'), + ('statsmodels', '0.14.0'), + ('dill', '0.3.7'), + ('Seaborn', '0.12.2'), + ('IPython', '8.14.0'), + ('TOBIAS', '0.16.1'), + ('python-louvain', '0.16'), + ('GOATOOLS', '1.4.5'), + ('qnorm', '0.8.1'), +] + +use_pip = True +sanity_pip_check = True + +# remove graphviz from deps - the pip check failing, should be "import gv" +local_tfcomb_preinstallopts = "sed -i '70d' setup.py && " +# fix "import graphviz" to "import gv" +local_tfcomb_preinstallopts += "sed -i 's/import graphviz/import gv as graphviz/' tfcomb/plotting.py && " + +exts_list = [ + ('uropa', '4.0.3', { + 'checksums': ['e0b648881b95f301e3f3ecc924314995312f10b0cbabf96d5a5ce2fb18c53a59'], + }), + (name, version, { + 'preinstallopts': local_tfcomb_preinstallopts, + 'modulename': 'tfcomb', + 'checksums': ['5b718061660e0f9f94d86459eb742ca81de5851b0defd8b08c8a7a7e3370c253'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TINKER/TINKER-8.11.3-foss-2023a.eb b/easybuild/easyconfigs/t/TINKER/TINKER-8.11.3-foss-2023a.eb new file mode 100644 index 00000000000..ac13f1e800f --- /dev/null +++ b/easybuild/easyconfigs/t/TINKER/TINKER-8.11.3-foss-2023a.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'TINKER' +version = '8.11.3' + +homepage = 'https://dasher.wustl.edu/tinker' +description = """The Tinker molecular modeling software is a complete and general package for molecular mechanics + and dynamics, with some special features for biopolymers.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://dasher.wustl.edu/tinker/downloads/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8dfbc9fb8f26742d91139187657e2c905744b0243538f81b75bc04cdc2606ff7'] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +srcdir = 'cmake' + +test_cmd = 'cd ../tinker/test/ && ' +# fix path to executables in .run test scripts +test_cmd += r"sed -i 's|\.\./bin|../../easybuild_obj|g' *.run && " +# run all .run scripts +# manually compare test results with .log files in test dir +# (ifabp succeeds but exits with a memory error) +test_cmd += 'for x in *.run; do echo "START TEST: $x" && ./$x; done' + +postinstallcmds = ['cd %(start_dir)s && cp -a params perl python %(installdir)s'] + +sanity_check_paths = { + 'files': ['lib/libtinker.a'], + 'dirs': ['bin', 'params', 'perl', 'python'], +} + +# (no sanity_check_commands since all programs require multiple other inputs) + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/t/TOBIAS/TOBIAS-0.16.1-foss-2022b.eb b/easybuild/easyconfigs/t/TOBIAS/TOBIAS-0.16.1-foss-2022b.eb new file mode 100644 index 00000000000..9150965319e --- /dev/null +++ b/easybuild/easyconfigs/t/TOBIAS/TOBIAS-0.16.1-foss-2022b.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'TOBIAS' +version = '0.16.1' + +homepage = 'https://github.com/loosolab/TOBIAS' +description = """TOBIAS is a collection of command-line bioinformatics tools +for performing footprinting analysis on ATAC-seq data.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('matplotlib', '3.7.0'), + ('Seaborn', '0.12.2'), + ('Pysam', '0.21.0'), + ('pybedtools', '0.9.0'), + ('boto3', '1.26.163'), + ('pyBigWig', '0.3.22'), + ('scikit-learn', '1.2.1'), + ('PyYAML', '6.0'), + ('XlsxWriter', '3.1.2'), + ('svist4get', '1.3.1'), + ('adjustText', '0.7.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('kneed', '0.8.5', { + 'checksums': ['a4847ac4f1d04852fea278d5de7aa8bfdc3beb7fbca4a182fec0f0efee43f4b1'], + }), + ('logomaker', '0.8', { + 'checksums': ['d8c7501a7d6d7961cd68e5a44e939000ebf1b0c4197a0c9198351e1d681d3f6d'], + }), + ('MOODS-python', '1.9.4.1', { + 'modulename': 'MOODS', + 'checksums': ['b3b5e080cb0cd13c0fd175d0ee0d453fde3e42794fa7ac39a4f6db1ac5ddb4cc'], + }), + ('PyPDF2', '3.0.1', { + 'modulename': 'PyPDF2', + 'checksums': ['a74408f69ba6271f71b9352ef4ed03dc53a31aa404d29b5d31f53bfecfee1440'], + }), + ('tobias', version, { + # remove pyBigWig dependency - pip_check fails with "import pybigwig" + 'preinstallopts': "sed -i '81d' setup.py && ", + 'checksums': ['c46267c01287be06201b3e6f7a36daad1ad86d6c578f96e878501be7da7fd109'], + }), +] + +sanity_check_commands = ["python -c 'import pyBigWig'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..cbf3e47917e --- /dev/null +++ b/easybuild/easyconfigs/t/TRF/TRF-4.09.1-GCCcore-12.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'TRF' +version = '4.09.1' + +homepage = 'https://tandem.bu.edu/trf/trf.html' +description = """Tandem Repeats Finder: a program to analyze DNA sequences.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'Benson-Genomics-Lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['516015b625473350c3d1c9b83cac86baea620c8418498ab64c0a67029c3fb28a'] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +preconfigopts = "autoreconf -i -f && " + +sanity_check_paths = { + 'files': ['bin/trf'], + 'dirs': [], +} + +sanity_check_commands = ["trf -v"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..7b2f4888b23 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,178 @@ +easyblock = 'PythonBundle' + +name = 'TensorFlow' +version = '2.15.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.tensorflow.org/' +description = "An open-source software library for Machine Intelligence" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +use_pip = True +sanity_pip_check = True + +builddependencies = [ + ('Bazel', '6.1.0'), + # git 2.x required, see also https://github.com/tensorflow/tensorflow/issues/29053 + ('git', '2.41.0', '-nodocs'), + ('pybind11', '2.11.1'), + ('UnZip', '6.0'), + # Required to build some of the extensions + ('poetry', '1.5.1'), + # Protobuf disabled since 2.13.0 easyconfigs: + # Compiling with system protobuf don't seem to work, see: + # https://github.com/tensorflow/tensorflow/issues/61593 + # ('protobuf', '24.0'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('cuDNN', '8.9.2.26', versionsuffix, SYSTEM), + ('NCCL', '2.18.3', versionsuffix), + ('Python', '3.11.3'), + ('h5py', '3.9.0'), + ('cURL', '8.0.1'), + ('dill', '0.3.7'), + ('double-conversion', '3.3.0'), + ('flatbuffers', '23.5.26'), + ('flatbuffers-python', '23.5.26'), + ('giflib', '5.2.1'), + ('hwloc', '2.9.1'), + ('ICU', '73.2'), + ('JsonCpp', '1.9.5'), + ('libjpeg-turbo', '2.1.5.1'), + ('ml_dtypes', '0.3.2'), + ('NASM', '2.16.01'), + ('nsync', '1.26.0'), + ('SQLite', '3.42.0'), + ('patchelf', '0.18.0'), + ('libpng', '1.6.39'), + ('snappy', '1.1.10'), + ('zlib', '1.2.13'), + ('tensorboard', '2.15.1'), +] + +# Dependencies created and updated using findPythonDeps, see: +# https://docs.easybuild.io/api/easybuild/scripts/findPythonDeps +# Notable changes since 2.13.0-foss-2023a +# - tensoboard-wit deprecated as of tensorboard 2.13.0 (tensorboard@33abcb54d7) +# - portpicker for tests no longer needed (TF@e85860e838) +# - opt_einsum now comes from ml_dtypes +exts_list = [ + ('wrapt', '1.14.1', { + 'checksums': ['380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d'], + }), + ('termcolor', '2.3.0', { + 'checksums': ['b5b08f68937f138fe92f6c089b99f1e2da0ae56c52b78bf7075fd95420fd9a5a'], + }), + ('tensorflow-estimator', '2.15.0', { + 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', + 'checksums': ['aedf21eec7fb2dc91150fc91a1ce12bc44dbb72278a08b58e79ff87c9e28f153'], + }), + ('keras', '2.15.0', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['2dcc6d2e30cf9c951064b63c1f4c404b966c59caf09e01f3549138ec8ee0dd1f'], + }), + ('google-pasta', '0.2.0', { + 'modulename': 'pasta', + 'checksums': ['c9f2c8dfc8f96d0d5808299920721be30c9eec37f2389f28904f454565c8a16e'], + }), + ('astunparse', '1.6.3', { + 'checksums': ['5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872'], + }), + # Required by tests + ('tblib', '3.0.0', { + 'checksums': ['93622790a0a29e04f0346458face1e144dc4d32f493714c6c3dff82a4adb77e6'], + }), + ('astor', '0.8.1', { + 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], + }), + (name, version, { + 'patches': [ + 'TensorFlow-2.1.0_fix-cuda-build.patch', + 'TensorFlow-2.4.0_dont-use-var-lock.patch', + 'TensorFlow-2.13.0_add-missing-system-protobuf-targets.patch', + 'TensorFlow-2.13.0_exclude-xnnpack-on-ppc.patch', + 'TensorFlow-2.15.1_remove-duplicate-gpu-tests.patch', + 'TensorFlow-2.15.1_remove-libclang-dep.patch', + 'TensorFlow-2.15.1_remove-io-gcs-filesystem-dep.patch', + 'TensorFlow-2.15.1_add-default-shell-env.patch', + 'TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch', + 'TensorFlow-2.15.1_fix-flatbuffer-license.patch', + 'TensorFlow-2.15.1_fix-pybind11-build.patch', + 'TensorFlow-2.15.1_fix-cuda_build_defs.patch', + 'TensorFlow-2.15.1_disable-avx512-extensions.patch', + 'TensorFlow-2.15.1_disable-tf32-in-fused-matmul-tests.patch' + ], + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], + 'test_script': 'TensorFlow-2.x_mnist-test.py', + 'test_tag_filters_cpu': ( + '-gpu,-tpu,-no_cuda_on_cpu_tap,' + '-no_pip,-no_oss,-oss_serial,-benchmark-test,-v1only' + ), + 'test_tag_filters_gpu': ( + 'gpu,-no_gpu,-nogpu,-gpu_cupti,-no_cuda11,' + '-no_pip,-no_oss,-oss_serial,-benchmark-test,-v1only' + ), + 'test_targets': [ + '//tensorflow/core/...', + '-//tensorflow/core:example_java_proto', + '-//tensorflow/core/example:example_protos_closure', + '//tensorflow/cc/...', + '//tensorflow/c/...', + '//tensorflow/python/...', + '-//tensorflow/c/eager:c_api_test_gpu', + '-//tensorflow/c/eager:c_api_distributed_test', + '-//tensorflow/c/eager:c_api_distributed_test_gpu', + '-//tensorflow/c/eager:c_api_cluster_test_gpu', + '-//tensorflow/c/eager:c_api_remote_function_test_gpu', + '-//tensorflow/c/eager:c_api_remote_test_gpu', + '-//tensorflow/core/common_runtime:collective_param_resolver_local_test', + '-//tensorflow/core/kernels/mkl:mkl_fused_ops_test', + '-//tensorflow/core/kernels/mkl:mkl_fused_batch_norm_op_test', + '-//tensorflow/core/ir/importexport/tests/roundtrip/...', + ], + 'testopts': '--test_env=HOME=/tmp --test_timeout=3600 --test_size_filters=small ', + 'testopts_gpu': ( + '--test_env=HOME=/tmp --test_timeout=3600 --test_size_filters=small ' + '--run_under=//tensorflow/tools/ci_build/gpu_build:parallel_gpu_execute ' + ), + 'with_xla': True, + 'checksums': [ + {'v2.15.1.tar.gz': 'f36416d831f06fe866e149c7cd752da410a11178b01ff5620e9f265511ed57cf'}, + {'TensorFlow-2.1.0_fix-cuda-build.patch': + '78c20aeaa7784b8ceb46238a81e8c2461137d28e0b576deeba8357d23fbe1f5a'}, + {'TensorFlow-2.4.0_dont-use-var-lock.patch': + 'b14f2493fd2edf79abd1c4f2dde6c98a3e7d5cb9c25ab9386df874d5f072d6b5'}, + {'TensorFlow-2.13.0_add-missing-system-protobuf-targets.patch': + '77d8c8a5627493fc7c38b4de79d49e60ff6628b05ff969f4cd3ff9857176c459'}, + {'TensorFlow-2.13.0_exclude-xnnpack-on-ppc.patch': + 'd0818206846911d946666ded7d3216c0546e37cee1890a2f48dc1a9d71047cad'}, + {'TensorFlow-2.15.1_remove-duplicate-gpu-tests.patch': + 'd8810d5b875de5be8603afd743774ce9dd8c0d4a82314c7fe2f284a080be7498'}, + {'TensorFlow-2.15.1_remove-libclang-dep.patch': + '871b2f0221b7a150ac9f563ffad7187e052a7eedd95c20fb4524987d7edb6f21'}, + {'TensorFlow-2.15.1_remove-io-gcs-filesystem-dep.patch': + 'eba7351a4b0696c589b9c507bacb0257ebce8c39fde39ab72d5d6a69deaaec02'}, + {'TensorFlow-2.15.1_add-default-shell-env.patch': + '3d5196b4bf2e91048dc8a18f9e8f487a223fcd973d6302e80b0d4000ea3d652b'}, + {'TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch': + '761059e5f5f5eeeef8aed5517a7685a0eb0a9193d4afe8d45237527681c9c0a3'}, + {'TensorFlow-2.15.1_fix-flatbuffer-license.patch': + '2c04d5095977a628a238dbf93c5fada7159c86752a7183e64e0cf7c7ab00caf4'}, + {'TensorFlow-2.15.1_fix-pybind11-build.patch': + '3bb350ac92ab99c63c951c96b3b0160699f5f16822b64f72111ebfd2275cafce'}, + {'TensorFlow-2.15.1_fix-cuda_build_defs.patch': + '091581a7c4fc2fc7af282cab6661632c29029d2f36eccb6695ffa5783e065f88'}, + {'TensorFlow-2.15.1_disable-avx512-extensions.patch': + '506ceecff67237eed9cd9e9e114bc1461f35a343f77f83cb3dab710aa701dc0f'}, + {'TensorFlow-2.15.1_disable-tf32-in-fused-matmul-tests.patch': + 'f78aa0e8f814a57e8d2e6b24ff095df49e8654aadb797393fa95a9378d0aa662'}, + ], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb index 014f3bbd7a5..ebca59072d6 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1-foss-2023a.eb @@ -47,7 +47,7 @@ dependencies = [ ('libpng', '1.6.39'), ('snappy', '1.1.10'), ('zlib', '1.2.13'), - ('grpcio', '1.57.0'), + ('tensorboard', '2.15.1'), ] # Dependencies created and updated using findPythonDeps, see: @@ -57,7 +57,6 @@ dependencies = [ # - portpicker for tests no longer needed (TF@e85860e838) # - opt_einsum now comes from ml_dtypes exts_list = [ - ('wrapt', '1.14.1', { 'checksums': ['380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d'], }), @@ -68,48 +67,6 @@ exts_list = [ 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', 'checksums': ['aedf21eec7fb2dc91150fc91a1ce12bc44dbb72278a08b58e79ff87c9e28f153'], }), - ('Werkzeug', '3.0.2', { - 'source_tmpl': SOURCELOWER_TAR_GZ, - 'checksums': ['e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d'], - }), - ('tensorboard-data-server', '0.7.2', { - 'source_tmpl': 'tensorboard_data_server-%(version)s-py3-none-any.whl', - 'checksums': ['7e0610d205889588983836ec05dc098e80f97b7e7bbff7e994ebb78f578d0ddb'], - }), - ('Markdown', '3.6', { - 'checksums': ['ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224'], - }), - ('oauthlib', '3.2.2', { - 'checksums': ['9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918'], - }), - ('requests-oauthlib', '2.0.0', { - 'checksums': ['b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9'], - }), - ('rsa', '4.9', { - 'checksums': ['e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21'], - }), - ('pyasn1-modules', '0.4.0', { - 'source_tmpl': 'pyasn1_modules-%(version)s.tar.gz', - 'checksums': ['831dbcea1b177b28c9baddf4c6d1013c24c3accd14a1873fffaa6a2e905f17b6'], - }), - ('cachetools', '5.3.3', { - 'checksums': ['ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105'], - }), - ('google-auth', '2.29.0', { - 'modulename': 'google.auth', - 'checksums': ['672dff332d073227550ffc7457868ac4218d6c500b155fe6cc17d2b13602c360'], - }), - ('google-auth-oauthlib', '1.2.0', { - 'checksums': ['292d2d3783349f2b0734a0a0207b1e1e322ac193c2c09d8f7c613fb7cc501ea8'], - }), - ('absl-py', '2.1.0', { - 'modulename': 'absl', - 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], - }), - ('tensorboard', '2.15.2', { - 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', - 'checksums': ['a6f6443728064d962caea6d34653e220e34ef8df764cb06a8212c17e1a8f0622'], - }), ('keras', '2.15.0', { 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', 'checksums': ['2dcc6d2e30cf9c951064b63c1f4c404b966c59caf09e01f3549138ec8ee0dd1f'], @@ -128,23 +85,17 @@ exts_list = [ ('astor', '0.8.1', { 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], }), - # Optional profile plugin + dependency - ('gviz-api', '1.10.0', { - 'source_tmpl': 'gviz_api-%(version)s.tar.gz', - 'checksums': ['846692dd8cc73224fc31b18e41589bd934e1cc05090c6576af4b4b26c2e71b90'], - }), - ('tensorboard-plugin-profile', '2.15.1', { - 'source_tmpl': 'tensorboard_plugin_profile-%(version)s.tar.gz', - 'checksums': ['84bb33e446eb4a9c0616f669fc6a42cdd40eadd9ae1d74bf756f4f0479993273'], - }), (name, version, { 'patches': [ 'TensorFlow-2.13.0_add-missing-system-protobuf-targets.patch', + 'TensorFlow-2.13.0_exclude-xnnpack-on-ppc.patch', 'TensorFlow-2.15.1_remove-libclang-dep.patch', 'TensorFlow-2.15.1_remove-io-gcs-filesystem-dep.patch', 'TensorFlow-2.15.1_add-default-shell-env.patch', + 'TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch', 'TensorFlow-2.15.1_fix-flatbuffer-license.patch', 'TensorFlow-2.15.1_fix-pybind11-build.patch', + 'TensorFlow-2.15.1_disable-avx512-extensions.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], @@ -185,27 +136,24 @@ exts_list = [ {'v2.15.1.tar.gz': 'f36416d831f06fe866e149c7cd752da410a11178b01ff5620e9f265511ed57cf'}, {'TensorFlow-2.13.0_add-missing-system-protobuf-targets.patch': '77d8c8a5627493fc7c38b4de79d49e60ff6628b05ff969f4cd3ff9857176c459'}, + {'TensorFlow-2.13.0_exclude-xnnpack-on-ppc.patch': + 'd0818206846911d946666ded7d3216c0546e37cee1890a2f48dc1a9d71047cad'}, {'TensorFlow-2.15.1_remove-libclang-dep.patch': '871b2f0221b7a150ac9f563ffad7187e052a7eedd95c20fb4524987d7edb6f21'}, {'TensorFlow-2.15.1_remove-io-gcs-filesystem-dep.patch': 'eba7351a4b0696c589b9c507bacb0257ebce8c39fde39ab72d5d6a69deaaec02'}, {'TensorFlow-2.15.1_add-default-shell-env.patch': '3d5196b4bf2e91048dc8a18f9e8f487a223fcd973d6302e80b0d4000ea3d652b'}, + {'TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch': + '761059e5f5f5eeeef8aed5517a7685a0eb0a9193d4afe8d45237527681c9c0a3'}, {'TensorFlow-2.15.1_fix-flatbuffer-license.patch': '2c04d5095977a628a238dbf93c5fada7159c86752a7183e64e0cf7c7ab00caf4'}, {'TensorFlow-2.15.1_fix-pybind11-build.patch': '3bb350ac92ab99c63c951c96b3b0160699f5f16822b64f72111ebfd2275cafce'}, + {'TensorFlow-2.15.1_disable-avx512-extensions.patch': + '506ceecff67237eed9cd9e9e114bc1461f35a343f77f83cb3dab710aa701dc0f'}, ], }), ] -# Taken from tensorboard-2.15.1-gfbf-2023a.eb: -# Relax restriction on protobuf dependency as issue was fixed -# in https://github.com/protocolbuffers/upb/pull/1514 -# see also: https://github.com/easybuilders/easybuild-easyconfigs/pull/19671 -postinstallcmds = [ - 'sed -i "s/Requires-Dist: protobuf.*/Requires-Dist: protobuf >=3.19.6/g" ' + - '%(installdir)s/lib/python%(pyshortver)s/site-packages/tensorboard-2.15.2.dist-info/METADATA', -] - moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-avx512-extensions.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-avx512-extensions.patch new file mode 100644 index 00000000000..7778d2b4a91 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-avx512-extensions.patch @@ -0,0 +1,19 @@ +(Some of the) AVX512 extensions to Eigen introduced by TensorFlow are broken and return wrong values. +So disable them for now to keep AVX512 in the other code parts working. +See https://github.com/tensorflow/tensorflow/issues/49944 + +Author: Alexander Grund (TU Dresden) + +diff --git a/third_party/xla/third_party/tsl/tsl/framework/fixedpoint/FixedPoint.h b/third_party/xla/third_party/tsl/tsl/framework/fixedpoint/FixedPoint.h +index 5301914ad37..8923bfed7bf 100644 +--- a/third_party/xla/third_party/tsl/tsl/framework/fixedpoint/FixedPoint.h ++++ b/third_party/xla/third_party/tsl/tsl/framework/fixedpoint/FixedPoint.h +@@ -20,7 +20,7 @@ limitations under the License. + #include "tsl/framework/fixedpoint_types.h" + + // Use optimized implementations whenever available +-#if defined(EIGEN_VECTORIZE_AVX512DQ) || defined(EIGEN_VECTORIZE_AVX512BW) ++#if 0 + #include "tsl/framework/fixedpoint/PacketMathAVX512.h" + #include "tsl/framework/fixedpoint/TypeCastingAVX512.h" + diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-tf32-in-fused-matmul-tests.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-tf32-in-fused-matmul-tests.patch new file mode 100644 index 00000000000..9cc742e53d0 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_disable-tf32-in-fused-matmul-tests.patch @@ -0,0 +1,46 @@ +Fixes failing FusedMatMul test on certain GPU models + +diff --git a/tensorflow/core/kernels/matmul_op_test.cc b/tensorflow/core/kernels/matmul_op_test.cc +index 8d81d4c796e..2de0365f067 100644 +--- a/tensorflow/core/kernels/matmul_op_test.cc ++++ b/tensorflow/core/kernels/matmul_op_test.cc +@@ -21,6 +21,7 @@ limitations under the License. + #include "tensorflow/core/framework/tensor.h" + #include "tensorflow/core/kernels/ops_testutil.h" + #include "tensorflow/core/lib/core/status_test_util.h" ++#include "tensorflow/core/platform/tensor_float_32_utils.h" + #include "tensorflow/core/platform/test.h" + #include "tensorflow/core/platform/test_benchmark.h" + #include "tensorflow/core/protobuf/rewriter_config.pb.h" +@@ -287,6 +288,7 @@ TYPED_TEST_SUITE_P(FusedMatMulWithBiasOpTest); + // -------------------------------------------------------------------------- // + + TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul256x128x64) { ++ tensorflow::enable_tensor_float_32_execution(false); + this->VerifyMatMulWithBias(256, 128, 64, false, false); + this->VerifyMatMulWithBias(256, 128, 64, true, false); + this->VerifyMatMulWithBias(256, 128, 64, false, true); +@@ -294,6 +296,7 @@ TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul256x128x64) { + } + + TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul1x256x256) { ++ tensorflow::enable_tensor_float_32_execution(false); + this->VerifyMatMulWithBias(1, 256, 256, false, false); + this->VerifyMatMulWithBias(4, 128, 256, false, false); + this->VerifyMatMulWithBias(1, 256, 256, true, false); +@@ -302,6 +305,7 @@ TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul1x256x256) { + } + + TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul256x256x1) { ++ tensorflow::enable_tensor_float_32_execution(false); + this->VerifyMatMulWithBias(256, 256, 1, false, false); + this->VerifyMatMulWithBias(256, 128, 4, false, false); + this->VerifyMatMulWithBias(256, 256, 1, true, false); +@@ -314,6 +318,7 @@ TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul1x256x1) { + } + + TYPED_TEST_P(FusedMatMulWithBiasOpTest, MatMul256x128x64WithActivation) { ++ tensorflow::enable_tensor_float_32_execution(false); + for (const string& activation : {"Relu", "Relu6", "Elu", "LeakyRelu"}) { + this->VerifyConv2DWithBiasAndActivation(256, 128, 64, false, false, + activation); diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch new file mode 100644 index 00000000000..514f215cde9 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-AVX512-eigen-compilation.patch @@ -0,0 +1,47 @@ +Fix a compilation error for CPUs with AVX512 features where an issue in Eigen leads to +> invalid 'static_cast' from type 'const Eigen::internal::eigen_packet_wrapper<__vector(4) long long int, 1>' to type '__vector(16) float' + +See https://gitlab.com/libeigen/eigen/-/issues/2829 + +Author: Alexander Grund (TU Dresden) + +diff --git a/third_party/eigen3/fix-avx512.patch b/third_party/eigen3/fix-avx512.patch +new file mode 100644 +index 00000000000..0650d52a0c9 +--- /dev/null ++++ b/third_party/eigen3/fix-avx512.patch +@@ -0,0 +1,22 @@ ++diff --git a/Eigen/src/Core/arch/AVX512/TypeCasting.h b/Eigen/src/Core/arch/AVX512/TypeCasting.h ++index 02c56282f..e253e6b49 100644 ++--- a/Eigen/src/Core/arch/AVX512/TypeCasting.h +++++ b/Eigen/src/Core/arch/AVX512/TypeCasting.h ++@@ -145,8 +145,6 @@ template<> EIGEN_STRONG_INLINE Packet8bf preinterpret(con ++ return _mm256_castsi256_si128(a); ++ } ++ ++-#ifndef EIGEN_VECTORIZE_AVX512FP16 ++- ++ template<> EIGEN_STRONG_INLINE Packet16f pcast(const Packet16h& a) { ++ return half2float(a); ++ } ++@@ -155,8 +153,6 @@ template<> EIGEN_STRONG_INLINE Packet16h pcast(const Packe ++ return float2half(a); ++ } ++ ++-#endif ++- ++ template<> EIGEN_STRONG_INLINE Packet16f pcast(const Packet16bf& a) { ++ return Bf16ToF32(a); ++ } +diff --git a/third_party/eigen3/workspace.bzl b/third_party/eigen3/workspace.bzl +index d1d8d4ac486..da549e37432 100644 +--- a/third_party/eigen3/workspace.bzl ++++ b/third_party/eigen3/workspace.bzl +@@ -14,6 +14,7 @@ def repo(): + tf_http_archive( + name = "eigen_archive", + build_file = "//third_party/eigen3:eigen_archive.BUILD", ++ patch_file = ["//third_party/eigen3:fix-avx512.patch"], + sha256 = EIGEN_SHA256, + strip_prefix = "eigen-{commit}".format(commit = EIGEN_COMMIT), + urls = tf_mirror_urls("https://gitlab.com/libeigen/eigen/-/archive/{commit}/eigen-{commit}.tar.gz".format(commit = EIGEN_COMMIT)), diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-cuda_build_defs.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-cuda_build_defs.patch new file mode 100644 index 00000000000..0982df21bb9 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_fix-cuda_build_defs.patch @@ -0,0 +1,40 @@ +Backport cuda_build_defs path fix for TF 2.15, see: + +https://github.com/tensorflow/tensorflow/commit/1536f2ca228099f0cf7793d3031d9b9bebbf03ed + +diff --git a/third_party/nccl/system.BUILD.tpl b/third_party/nccl/system.BUILD.tpl +index 405d1e7298b..6e2a22a950b 100644 +--- a/third_party/nccl/system.BUILD.tpl ++++ b/third_party/nccl/system.BUILD.tpl +@@ -1,6 +1,6 @@ + load("@bazel_skylib//rules:write_file.bzl", "write_file") + load( +- "@org_tensorflow//tensorflow/platform/default:cuda_build_defs.bzl", ++ "@local_tsl//tsl/platform/default:cuda_build_defs.bzl", + "cuda_rpath_flags" + ) + +diff --git a/third_party/xla/third_party/nccl/system.BUILD.tpl b/third_party/xla/third_party/nccl/system.BUILD.tpl +index 13328fdeeac..6e2a22a950b 100644 +--- a/third_party/xla/third_party/nccl/system.BUILD.tpl ++++ b/third_party/xla/third_party/nccl/system.BUILD.tpl +@@ -1,6 +1,6 @@ + load("@bazel_skylib//rules:write_file.bzl", "write_file") + load( +- "@local_xla//tensorflow/platform/default:cuda_build_defs.bzl", ++ "@local_tsl//tsl/platform/default:cuda_build_defs.bzl", + "cuda_rpath_flags" + ) + +diff --git a/third_party/xla/third_party/tsl/third_party/nccl/system.BUILD.tpl b/third_party/xla/third_party/tsl/third_party/nccl/system.BUILD.tpl +index b45138eaa79..6e2a22a950b 100644 +--- a/third_party/xla/third_party/tsl/third_party/nccl/system.BUILD.tpl ++++ b/third_party/xla/third_party/tsl/third_party/nccl/system.BUILD.tpl +@@ -1,6 +1,6 @@ + load("@bazel_skylib//rules:write_file.bzl", "write_file") + load( +- "@local_tsl//tensorflow/platform/default:cuda_build_defs.bzl", ++ "@local_tsl//tsl/platform/default:cuda_build_defs.bzl", + "cuda_rpath_flags" + ) + diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_remove-duplicate-gpu-tests.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_remove-duplicate-gpu-tests.patch new file mode 100644 index 00000000000..7c6d72c89c9 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.15.1_remove-duplicate-gpu-tests.patch @@ -0,0 +1,55 @@ +TensorFlow adds some GPU tests twice increasing the runtime of the test suite. +This filters out the test part meant for CPU. + +See https://github.com/tensorflow/tensorflow/issues/47081 +From https://github.com/tensorflow/tensorflow/pull/59129 + +Author: Alexander Grund (TU Dresden) +--- + tensorflow/tensorflow.bzl | 33 +++++++++++++++++---------------- + 1 file changed, 17 insertions(+), 16 deletions(-) + +diff --git a/tensorflow/tensorflow.bzl b/tensorflow/tensorflow.bzl +index a1531f55cca..3b9c977dcc4 100644 +--- a/tensorflow/tensorflow.bzl ++++ b/tensorflow/tensorflow.bzl +@@ -1626,22 +1626,23 @@ def tf_gpu_cc_test( + linkopts = [], + **kwargs): + targets = [] +- tf_cc_test( +- name = name, +- size = size, +- srcs = srcs, +- args = args, +- data = data, +- extra_copts = extra_copts + if_cuda(["-DNV_CUDNN_DISABLE_EXCEPTION"]), +- kernels = kernels, +- linkopts = linkopts, +- linkstatic = linkstatic, +- suffix = "_cpu", +- tags = tags, +- deps = deps, +- **kwargs +- ) +- targets.append(name + "_cpu") ++ if 'gpu' not in tags: ++ tf_cc_test( ++ name = name, ++ size = size, ++ srcs = srcs, ++ args = args, ++ data = data, ++ extra_copts = extra_copts + if_cuda(["-DNV_CUDNN_DISABLE_EXCEPTION"]), ++ kernels = kernels, ++ linkopts = linkopts, ++ linkstatic = linkstatic, ++ suffix = "_cpu", ++ tags = tags, ++ deps = deps, ++ **kwargs ++ ) ++ targets.append(name + "_cpu") + tf_cc_test( + name = name, + size = size, diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb index 2cfb8444ca4..daa5022fb1f 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-foss-2020a-Python-3.8.2.eb @@ -40,9 +40,7 @@ dependencies = [ ('zlib', '1.2.11'), ] -exts_default_options = { - 'sanity_pip_check': True, -} +sanity_pip_check = True use_pip = True # Dependencies created and updated using findPythonDeps.sh: diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb index 54fdbc44964..7a4a7766ca6 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.3.1-fosscuda-2020a-Python-3.8.2.eb @@ -42,9 +42,7 @@ dependencies = [ ('zlib', '1.2.11'), ] -exts_default_options = { - 'sanity_pip_check': True, -} +sanity_pip_check = True use_pip = True # Dependencies created and updated using findPythonDeps.sh: 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/Tk/Tk-8.6.14-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/Tk/Tk-8.6.14-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..4069dc5a048 --- /dev/null +++ b/easybuild/easyconfigs/t/Tk/Tk-8.6.14-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'Tk' +version = '8.6.14' + +homepage = 'https://www.tcl.tk/' +description = """Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for + building a graphical user interface (GUI) in many different programming languages.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ["https://prdownloads.sourceforge.net/tcl"] +sources = ['%(namelower)s%(version)s-src.tar.gz'] +checksums = ['8ffdb720f47a6ca6107eac2dd877e30b0ef7fac14f3a84ebbd0b3612cee41a94'] + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Tcl', version), + ('X11', '20240607'), + ('zlib', '1.3.1'), +] + +configopts = '--enable-threads --with-tcl=$EBROOTTCL/lib CFLAGS="-I$EBROOTTCL/include"' + +installopts = "&& make install-private-headers" + +postinstallcmds = ["ln -s wish%(version_major_minor)s %(installdir)s/bin/wish"] + +sanity_check_paths = { + 'files': ["bin/wish", "lib/tkConfig.sh", "include/tkInt.h"], + 'dirs': [], +} + +start_dir = 'unix' + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/Tkinter/Tkinter-3.12.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/Tkinter/Tkinter-3.12.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..00f02ee6424 --- /dev/null +++ b/easybuild/easyconfigs/t/Tkinter/Tkinter-3.12.3-GCCcore-13.3.0.eb @@ -0,0 +1,25 @@ +name = 'Tkinter' +version = '3.12.3' + +homepage = 'https://python.org/' +description = "Tkinter module, built with the Python buildsystem" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.python.org/ftp/python/%(version)s/'] +sources = ['Python-%(version)s.tgz'] +checksums = ['a6b9459f45a6ebbbc1af44f5762623fa355a0c87208ed417628b379d762dddb0'] + +builddependencies = [ + ('binutils', '2.42'), + ('libffi', '3.4.5'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Tk', '8.6.14'), + ('zlib', '1.3.1'), +] + +moduleclass = 'lang' 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..b4191a47cf0 --- /dev/null +++ b/easybuild/easyconfigs/t/Tombo/Tombo-1.5.1-foss-2023a.eb @@ -0,0 +1,50 @@ +# 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'), +] + +use_pip = True + +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_pip_check = True + +sanity_check_commands = [ + "tombo --help", + "tombo --version", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb b/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..3f1bbc6fe83 --- /dev/null +++ b/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'Tarball' + +name = 'TransDecoder' +version = '5.7.1' + +homepage = 'https://github.com/TransDecoder/TransDecoder/wiki' +description = """TransDecoder identifies candidate coding regions within transcript sequences, + such as those generated by de novo RNA-Seq transcript assembly using Trinity, + or constructed based on RNA-Seq alignments to the genome using + Tophat and Cufflinks.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/TransDecoder/TransDecoder/archive/'] +sources = ['TransDecoder-v%(version)s.tar.gz'] +checksums = ['41dd5e95f6ba946ff21340417d867e5e99f123b4035779b25d3cffd20b828a30'] + +dependencies = [ + ('Perl', '5.36.1'), + ('CD-HIT', '4.8.1'), +] + +sanity_check_paths = { + 'files': ['TransDecoder.LongOrfs', 'TransDecoder.Predict'], + 'dirs': ['PerlLib', 'sample_data', 'util'], +} + +sanity_check_commands = [] + +modextrapaths = { + 'PATH': '', + 'PERL5LIB': 'PerlLib', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb b/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb new file mode 100644 index 00000000000..94a257d4b18 --- /dev/null +++ b/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonBundle' + +name = 'Transformers' +version = '4.44.0' + +homepage = 'https://github.com/huggingface/transformers' +description = """State-of-the-art Natural Language Processing for PyTorch and TensorFlow 2.0""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('PyYAML', '6.0.1'), + ('tqdm', '4.66.2'), + ('tokenizers', '0.19.1'), # tokenizers>=0.19,<0.20 + ('Safetensors', '0.4.4'), # safetensors>=0.4.1 +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('regex', '2024.7.24', { + 'checksums': ['9cfd009eed1a46b27c14039ad5bbc5e71b6367c5b2e6d5f5da0ea91600817506'], + }), + ('transformers', version, { + 'checksums': ['75699495e30b7635ca444d8d372e138c687ab51a875b387e33f1fb759c37f196'], + }), +] + +sanity_check_commands = [ + "python -c 'from transformers import AutoTokenizer'", +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/Trim_Galore/Trim_Galore-0.6.10-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/Trim_Galore/Trim_Galore-0.6.10-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..bf5c351c4fd --- /dev/null +++ b/easybuild/easyconfigs/t/Trim_Galore/Trim_Galore-0.6.10-GCCcore-12.3.0.eb @@ -0,0 +1,46 @@ +# Contribution from the Crick HPC team +# uploaded by J. Sassmannshausen +# Updated to version 0.6.2: Pavel Grochal (INUITS) +# Updated to version 0.6.5: Alex Domingo (VUB) +# Updated to version 0.6.7 by J. Sassmannshausen NHS/GSTT + +easyblock = 'Tarball' + +name = 'Trim_Galore' +version = '0.6.10' + +homepage = 'https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/' +description = """Trim Galore! is a wrapper script to automate quality and adapter +trimming as well as quality control, with some added functionality to remove biased +methylation positions for RRBS sequence files (for directional, non-directional +(or paired-end) sequencing).""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/FelixKrueger/TrimGalore/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['3a4e414fc658d6eb4356f1572351204e8475a9d7dc79f6798270b57d35bda017'] + +dependencies = [ + ('Python', '3.11.3'), + ('Java', '11', '', SYSTEM), + ('pigz', '2.8'), + ('Perl', '5.36.1'), + ('cutadapt', '4.9'), + ('FastQC', '0.11.9', '-Java-%(javaver)s', SYSTEM), +] + +postinstallcmds = [ + "mkdir %(installdir)s/bin && mv %(installdir)s/%(namelower)s %(installdir)s/bin/%(namelower)s", +] + +fix_perl_shebang_for = ['bin/%(namelower)s'] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = [('%(namelower)s', '-v')] + +moduleclass = 'bio' 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 b5a28e53771..4108cd9de19 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 5f9d39b5c69..bd49df5d0a8 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/Triton/Triton-2.1.0-disable_rocm_support.patch b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-disable_rocm_support.patch new file mode 100644 index 00000000000..13d736b4bfc --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-disable_rocm_support.patch @@ -0,0 +1,88 @@ +Disable experimental support for AMD GPUs +author: Alex Domingo (Vrije Universiteit Brussel) +author: Samuel Moors (Vrije Universiteit Brussel) +diff -ur triton-2.1.0.orig/CMakeLists.txt triton-2.1.0/CMakeLists.txt +--- triton-2.1.0.orig/CMakeLists.txt 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/CMakeLists.txt 2024-09-01 10:40:17.863374000 +0200 +@@ -70,7 +70,7 @@ + AMDGPUInfo AMDGPUcodegen + ) + else() +- find_package(LLVM 11 REQUIRED COMPONENTS "nvptx;amdgpu") ++ find_package(LLVM 11 REQUIRED COMPONENTS "nvptx") + endif() + + message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}") +@@ -89,9 +89,7 @@ + LLVMNVPTXCodeGen + LLVMNVPTXDesc + LLVMNVPTXInfo +- LLVMAMDGPUDisassembler + LLVMMCDisassembler +- LLVMAMDGPUCodeGen + LLVMMIRParser + LLVMGlobalISel + LLVMSelectionDAG +@@ -116,10 +114,7 @@ + LLVMObject + LLVMTextAPI + LLVMBitReader +- LLVMAMDGPUAsmParser + LLVMMCParser +- LLVMAMDGPUDesc +- LLVMAMDGPUUtils + LLVMMC + LLVMDebugInfoCodeView + LLVMDebugInfoMSF +@@ -127,7 +122,6 @@ + LLVMRemarks + LLVMBitstreamReader + LLVMBinaryFormat +- LLVMAMDGPUInfo + LLVMSupport + LLVMDemangle + LLVMPasses +diff -ur triton-2.1.0.orig/lib/Target/HSACO/HSACOTranslation.cpp triton-2.1.0/lib/Target/HSACO/HSACOTranslation.cpp +--- triton-2.1.0.orig/lib/Target/HSACO/HSACOTranslation.cpp 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/lib/Target/HSACO/HSACOTranslation.cpp 2024-09-02 21:27:09.233712000 +0200 +@@ -37,13 +37,6 @@ + + namespace { + +-void init_llvm() { +- LLVMInitializeAMDGPUTarget(); +- LLVMInitializeAMDGPUTargetInfo(); +- LLVMInitializeAMDGPUTargetMC(); +- LLVMInitializeAMDGPUAsmParser(); +- LLVMInitializeAMDGPUAsmPrinter(); +-} + + std::unique_ptr + initialize_module(llvm::Module *module, const std::string &triple, +@@ -155,7 +148,6 @@ + llir_to_amdgcn_and_hsaco(llvm::Module *module, std::string gfx_arch, + std::string gfx_triple, std::string gfx_features) { + +- init_llvm(); + + // verify and store llvm + auto module_obj = llvm::CloneModule(*module); +diff -ur triton-2.1.0.orig/python/src/triton.cc triton-2.1.0/python/src/triton.cc +--- triton-2.1.0.orig/python/src/triton.cc 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/python/src/triton.cc 2024-09-01 10:41:29.146862440 +0200 +@@ -60,7 +60,6 @@ + enum backend_t { + HOST, + CUDA, +- ROCM, + }; + + void init_triton_runtime(py::module &&m) { +@@ -68,7 +67,6 @@ + py::enum_(m, "backend", py::module_local()) + .value("HOST", HOST) + .value("CUDA", CUDA) +- .value("ROCM", ROCM) + .export_values(); + } + diff --git a/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..a1cdbe87df3 --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonPackage' + +name = 'Triton' +version = '2.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://triton-lang.org/' + +description = """Triton is a language and compiler for parallel programming. It aims to provide a +Python-based programming environment for productively writing custom DNN compute +kernels capable of running at maximal throughput on modern GPU hardware.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'openai' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s-disable_rocm_support.patch', + '%(name)s-%(version)s-use_eb_env_python_build.patch', +] +checksums = [ + {'v2.1.0.tar.gz': '4338ca0e80a059aec2671f02bfc9320119b051f378449cf5f56a1273597a3d99'}, + {'Triton-2.1.0-disable_rocm_support.patch': 'e4d7c0947c3287b3f0871a004e8b483963f637c9fa3ef6212ac3a34660de2a7c'}, + {'Triton-2.1.0-use_eb_env_python_build.patch': 'd68bf766c699ad6a778d9449d3bccdadc2f20f1f86ba13e1359ad297b12fbf7c'}, +] + +builddependencies = [ + ('Clang', '17.0.0_20230515', versionsuffix), # this is the exact commit that would be downloaded by Triton + ('CMake', '3.26.3'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), +] + +use_pip = True +download_dep_fail = True + +start_dir = 'python' + +preinstallopts = 'export LLVM_INCLUDE_DIRS=$EBROOTCLANG/include && ' +preinstallopts += 'export LLVM_LIBRARY_DIR=$EBROOTCLANG/lib && ' +preinstallopts += 'export LLVM_SYSPATH=$EBROOTCLANG && ' +preinstallopts += 'export TRITON_BUILD_WITH_CLANG_LLD=1 && ' + +# make pip print output of cmake +installopts = "-v " + +sanity_pip_check = True + +modluafooter = 'setenv("TRITON_PTXAS_PATH", pathJoin(os.getenv("CUDA_HOME"), "bin", "ptxas"))' + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch new file mode 100644 index 00000000000..650134e73be --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-2.1.0-use_eb_env_python_build.patch @@ -0,0 +1,93 @@ +Fix Triton cmake build to use dependencies from EasyBuild +author: Alex Domingo (Vrije Universiteit Brussel) +author: Samuel Moors (Vrije Universiteit Brussel) +diff -ur triton-2.1.0.orig/lib/Target/LLVMIR/LLVMIRTranslation.cpp triton-2.1.0/lib/Target/LLVMIR/LLVMIRTranslation.cpp +--- triton-2.1.0.orig/lib/Target/LLVMIR/LLVMIRTranslation.cpp 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/lib/Target/LLVMIR/LLVMIRTranslation.cpp 2024-09-02 19:46:06.574421829 +0200 +@@ -35,6 +35,7 @@ + #endif + #include + #include ++#include // for getenv + + namespace fs = std::filesystem; + +@@ -177,6 +178,7 @@ + } + + if (!funcs.empty()) { ++ std::filesystem::path cuda_home = std::getenv("CUDA_HOME"); + static const std::string libdevice = "libdevice"; + // first search for environmental path + std::string env_path = ::triton::tools::getenv("TRITON_LIBDEVICE_PATH"); +@@ -189,8 +191,7 @@ + // `triton/third_party/cuda/lib/libdevice.10.bc` + static const auto this_library_path = getThisLibraryPath(); + static const auto runtime_path = +- this_library_path.parent_path().parent_path() / "third_party" / "cuda" / +- "lib" / "libdevice.10.bc"; ++ cuda_home / "nvvm" / "libdevice" / "libdevice.10.bc"; + if (fs::exists(runtime_path)) { + externLibs.try_emplace(libdevice, runtime_path.string()); + } else { +diff -ur triton-2.1.0.orig/python/setup.py triton-2.1.0/python/setup.py +--- triton-2.1.0.orig/python/setup.py 2023-09-01 08:28:27.000000000 +0200 ++++ triton-2.1.0/python/setup.py 2024-09-02 18:16:58.044760300 +0200 +@@ -202,13 +202,13 @@ + + def build_extension(self, ext): + lit_dir = shutil.which('lit') +- user_home = os.getenv("HOME") or os.getenv("USERPROFILE") or \ +- os.getenv("HOMEPATH") or None +- if not user_home: +- raise RuntimeError("Could not find user home directory") +- triton_cache_path = os.path.join(user_home, ".triton") ++ # user_home = os.getenv("HOME") or os.getenv("USERPROFILE") or \ ++ # os.getenv("HOMEPATH") or None ++ # if not user_home: ++ # raise RuntimeError("Could not find user home directory") ++ # triton_cache_path = os.path.join(user_home, ".triton") + # lit is used by the test suite +- thirdparty_cmake_args = get_thirdparty_packages(triton_cache_path) ++ # thirdparty_cmake_args = get_thirdparty_packages(triton_cache_path) + extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.path))) + # create build directories + if not os.path.exists(self.build_temp): +@@ -216,8 +216,9 @@ + # python directories + python_include_dir = sysconfig.get_path("platinclude") + cmake_args = [ ++ "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON", + "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON", +- "-DLLVM_ENABLE_WERROR=ON", ++ # "-DLLVM_ENABLE_WERROR=ON", + "-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=" + extdir, + "-DTRITON_BUILD_TUTORIALS=OFF", + "-DTRITON_BUILD_PYTHON_MODULE=ON", +@@ -227,7 +228,7 @@ + ] + if lit_dir is not None: + cmake_args.append("-DLLVM_EXTERNAL_LIT=" + lit_dir) +- cmake_args.extend(thirdparty_cmake_args) ++ # cmake_args.extend(thirdparty_cmake_args) + + # configuration + cfg = get_build_type() +@@ -245,7 +246,7 @@ + build_args += ["--", "/m"] + else: + cmake_args += ["-DCMAKE_BUILD_TYPE=" + cfg] +- max_jobs = os.getenv("MAX_JOBS", str(2 * os.cpu_count())) ++ max_jobs = os.getenv("MAX_JOBS", str(len(os.sched_getaffinity(0)))) + build_args += ['-j' + max_jobs] + + if check_env_flag("TRITON_BUILD_WITH_CLANG_LLD"): +@@ -262,7 +263,7 @@ + subprocess.check_call(["cmake", "--build", "."] + build_args, cwd=cmake_dir) + + +-download_and_copy_ptxas() ++# download_and_copy_ptxas() + + + setup( diff --git a/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5b532a99e9f --- /dev/null +++ b/easybuild/easyconfigs/t/TurboVNC/TurboVNC-3.1.2-GCCcore-13.3.0.eb @@ -0,0 +1,63 @@ +easyblock = 'CMakeMake' + +name = 'TurboVNC' +version = '3.1.2' + +homepage = 'https://www.turbovnc.org' +description = """TurboVNC is a derivative of VNC (Virtual Network Computing) that is tuned to provide + peak performance for 3D and video workloads.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(name)s/%(namelower)s/archive'] +sources = ['%(version)s.tar.gz'] + +checksums = [ + '98629cd2b676df5d30df51c69edd97cf99b395c3080cc55e2f997ac33a7d40de', # 3.0.1.tar.gz +] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] + +dependencies = [ + ('Java', '21.0.2', '', SYSTEM), + ('X11', '20240607'), + ('pixman', '0.43.4'), + ('libjpeg-turbo', '3.0.1'), + ('Mesa', '24.1.3'), + ('libGLU', '9.0.3'), + ('libglvnd', '1.7.0'), + ('OpenSSL', '3', '', SYSTEM), +] + +osdependencies = [('pam-devel', 'libpam0g-dev')] + +configopts = "-DTVNC_BUILDJAVA=0 -DTVNC_SYSTEMX11=1 " +configopts += "-DX11_X11_LIB=$EBROOTX11/lib/libX11.%s " % SHLIB_EXT +configopts += "-DX11_Xau_LIB=$EBROOTX11/lib/libXau.%s " % SHLIB_EXT +configopts += "-DX11_SM_LIB=$EBROOTX11/lib/libSM.%s " % SHLIB_EXT +configopts += "-DX11_ICE_LIB=$EBROOTX11/lib/libICE.%s " % SHLIB_EXT +configopts += "-DX11_Pixman_LIB=$EBROOTPIXMAN/lib/libpixman-1.%s.0 " % SHLIB_EXT +configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_egl_LIBRARY=$EBROOTLIBGLVND/lib/libEGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_opengl_LIBRARY=$EBROOTLIBGLVND/lib/libOpenGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_glx_LIBRARY=$EBROOTLIBGLVND/lib/libGLX.%s " % SHLIB_EXT + +# if installdir starts with /opt, i.e. /opt/xxx, CMake will set SYSCONFDIR to /etc/opt/xxx instead of /opt/xxx/etc +# https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html +# the solution is to define CMAKE_INSTALL_SYSCONFDIR explicitly +configopts += "-DCMAKE_INSTALL_SYSCONFDIR=%(installdir)s/etc " + +# remove etc/turbovncserver-security.conf, to avoid errors like: +# (EE) Fatal server error: +# (EE) ERROR: .../TurboVNC/2.2.3-GCCcore-8.2.0/etc/turbovncserver-security.conf must be owned by you or by root +postinstallcmds = ['rm -rf %(installdir)s/etc/turbovncserver-security.conf'] + +sanity_check_paths = { + 'files': ['bin/vncserver', 'bin/vncpasswd', 'bin/Xvnc'], + 'dirs': [], +} + +moduleclass = 'vis' 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..107e7dbb9c9 --- /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'), +] + +parallel = 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/tbb/tbb-2021.13.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/t/tbb/tbb-2021.13.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..15af40d5548 --- /dev/null +++ b/easybuild/easyconfigs/t/tbb/tbb-2021.13.0-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'tbb' +version = '2021.13.0' + +homepage = 'https://github.com/oneapi-src/oneTBB' +description = """Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that + take full advantage of multicore performance, that are portable, composable and have future-proof scalability.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +# The following option is needed to supress the "stringop-overflow error". +# See https://github.com/oneapi-src/oneTBB/issues/1180#issuecomment-1690958371 for details. +toolchainopts = {'extra_cxxflags': '-Wno-error=stringop-overflow'} + +source_urls = ['https://github.com/oneapi-src/oneTBB/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['3ad5dd08954b39d113dc5b3f8a8dc6dc1fd5250032b7c491eb07aed5c94133e1'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +dependencies = [('hwloc', '2.9.2')] + +sanity_check_paths = { + 'files': ['lib/libtbb.%s' % SHLIB_EXT, 'lib/libtbbmalloc.%s' % SHLIB_EXT], + 'dirs': ['lib', 'include', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tbb/tbb-2021.13.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tbb/tbb-2021.13.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..d75527cdfb0 --- /dev/null +++ b/easybuild/easyconfigs/t/tbb/tbb-2021.13.0-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'tbb' +version = '2021.13.0' + +homepage = 'https://github.com/oneapi-src/oneTBB' +description = """Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that + take full advantage of multicore performance, that are portable, composable and have future-proof scalability.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +# The following option is needed to supress the "stringop-overflow error". +# See https://github.com/oneapi-src/oneTBB/issues/1180#issuecomment-1690958371 for details. +toolchainopts = {'extra_cxxflags': '-Wno-error=stringop-overflow'} + +source_urls = ['https://github.com/oneapi-src/oneTBB/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['3ad5dd08954b39d113dc5b3f8a8dc6dc1fd5250032b7c491eb07aed5c94133e1'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), +] +dependencies = [ + ('hwloc', '2.10.0'), +] + + +sanity_check_paths = { + 'files': ['lib/libtbb.%s' % SHLIB_EXT, 'lib/libtbbmalloc.%s' % SHLIB_EXT], + 'dirs': ['lib', 'include', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/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.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/tdlib/tdlib-0.9.3-GCC-13.2.0.eb b/easybuild/easyconfigs/t/tdlib/tdlib-0.9.3-GCC-13.2.0.eb new file mode 100644 index 00000000000..63408d65ee7 --- /dev/null +++ b/easybuild/easyconfigs/t/tdlib/tdlib-0.9.3-GCC-13.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'tdlib' +version = '0.9.3' + +homepage = 'https://github.com/freetdi/tdlib/' +description = """treedec provides tree decomposition algorithms.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/freetdi/tdlib/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['d1730c98f41dcb23bbd0bd8de9dbec51df015304f28a38935848925901594ae8'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Boost', '1.83.0'), + ('Python', '3.11.5'), +] + +preconfigopts = 'autoreconf --install && ' + +sanity_check_paths = { + 'files': [ + 'include/treedec/combinations.hpp', + ], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.65-foss-2023a.eb b/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.65-foss-2023a.eb new file mode 100644 index 00000000000..5dd271c0d88 --- /dev/null +++ b/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.65-foss-2023a.eb @@ -0,0 +1,62 @@ +# Thomas Hoffmann, EMBL Heidlelberg, structures-it@embl.de, 2024/10 +easyblock = 'PythonBundle' + +name = 'tensorstore' +version = '0.1.65' + +homepage = 'https://github.com/google/tensorstore' +description = """TensorStore is an open-source C++ and Python software library designed for +storage and manipulation of large multi-dimensional arrays.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('NASM', '2.16.01'), + ('pybind11', '2.11.1'), + ('Bazel', '6.3.1'), + + + + ('PyYAML', '6.0'), + ('zlib', '1.2.13'), + ('LibTIFF', '4.5.0'), + ('snappy', '1.1.10'), + ('Brotli', '1.0.9'), + ('protobuf', '24.0'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.5'), + ('libwebp', '1.3.1'), + ('nlohmann_json', '3.11.2'), + ('Blosc', '1.21.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ml_dtypes', '0.3.2'), +] + +use_pip = True + + +local_ts_useebbazel = """sed -i 's/bazel_path =.*/""" +local_ts_useebbazel += """bazel_path = os.path.join(os.getenv("EBROOTBAZEL"),"bin", "bazel")/g'""" +local_ts_useebbazel += " bazelisk.py&& " # TODO: patch? +local_ts_version = """sed -i "s/use_scm_version=/version='%(version)s',&/g" setup.py&&""" +local_ts_bzl_exp = """export TENSORSTORE_BAZEL_STARTUP_OPTIONS='--output_user_root %(builddir)s/cache' &&""" +# inject CFLAGS: +local_ts_bzl_exp += """export TENSORSTORE_BAZEL_BUILD_OPTIONS="$(for i in $CFLAGS;do echo --copt=$i; done)" &&""" + + +local_ts_preinstall = local_ts_version + local_ts_useebbazel + local_ts_bzl_exp + +exts_list = [ + (name, version, { + 'installopts': '-v', + 'preinstallopts': local_ts_preinstall, + 'checksums': ['65cbe5a600c32569bb0b9f597ea318cc298a13b42d5fc98168c97bb11f320eae'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..94cf0915ff9 --- /dev/null +++ b/easybuild/easyconfigs/t/tesseract/tesseract-5.3.4-GCCcore-12.3.0.eb @@ -0,0 +1,66 @@ +easyblock = 'CMakeMake' + +name = 'tesseract' +version = '5.3.4' +_tessdata_ver = '4.1.0' + +homepage = 'https://github.com/tesseract-ocr/tesseract' +description = """Tesseract is an optical character recognition engine""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'tesseract-ocr' +source_urls = [GITHUB_SOURCE] +sources = [ + '%(version)s.tar.gz', + { + 'source_urls': ['https://github.com/tesseract-ocr/tessdata_best/archive/'], + 'download_filename': '%s.tar.gz' % _tessdata_ver, + 'filename': 'tessdata_best-%s.tar.gz' % _tessdata_ver, + }, +] +checksums = [ + {'5.3.4.tar.gz': '141afc12b34a14bb691a939b4b122db0d51bd38feda7f41696822bacea7710c7'}, + {'tessdata_best-4.1.0.tar.gz': 'bb05b738298ae73e7130e2913ed002b49d94cd1cea508e63be1928fe47770b32'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), + ('pkgconf', '1.9.5') +] + +dependencies = [ + ('zlib', '1.2.13'), + ('libpng', '1.6.39'), + ('libjpeg-turbo', '2.1.5.1'), + ('LibTIFF', '4.5.0'), + ('Leptonica', '1.84.1'), + ('libarchive', '3.6.2'), + ('ICU', '73.2'), + ('fontconfig', '2.14.2'), + ('GLib', '2.77.1'), + ('cairo', '1.17.8'), + ('Pango', '1.50.14'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +postinstallcmds = [ + 'rm %(builddir)s/tessdata_best-*/configs', + 'rm -rf %(builddir)s/tessdata_best-*/tessconfigs', + 'mv %(builddir)s/tessdata_best-*/* %(installdir)s/share/tessdata' +] + +modextrapaths = { + 'TESSDATA_PREFIX': 'share/tessdata', +} + +sanity_check_paths = { + 'files': ['bin/tesseract', 'lib/libtesseract.a', 'lib/libtesseract.%s' % SHLIB_EXT], + 'dirs': ['share/tessdata', 'include/tesseract'] +} + +sanity_check_commands = ['tesseract --version', 'tesseract --list-langs'] + +moduleclass = 'vis' 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..a954aa9e443 --- /dev/null +++ b/easybuild/easyconfigs/t/timm/timm-1.0.8-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonBundle' + +name = 'timm' +version = '1.0.8' + +homepage = 'https://huggingface.co/docs/timm' +description = """ +timm is a library containing SOTA computer vision models, layers, utilities, +optimizers, schedulers, data-loaders, augmentations, and training/evaluation +scripts. It comes packaged with >700 pretrained models, and is designed to be +flexible and easy to use. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('PyYAML', '6.0'), + ('tqdm', '4.66.1'), + ('torchvision', '0.16.0'), + ('Safetensors', '0.4.3'), +] + +builddependencies = [ + ('PDM', '2.12.4'), +] + +use_pip = True + +exts_list = [ + ('huggingface_hub', '0.24.5', { + 'checksums': ['7b45d6744dd53ce9cbf9880957de00e9d10a9ae837f1c9b7255fc8fa4e8264f3'], + }), + (name, version, { + 'checksums': ['f54a579f1cc39c43d99a4b03603e39c4cee87d4f0a08aba9c22e19064b30bf95'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..3b5675b24df --- /dev/null +++ b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb @@ -0,0 +1,567 @@ +easyblock = 'CargoPythonBundle' + +name = 'tokenizers' +version = '0.19.1' + +homepage = 'https://github.com/huggingface/tokenizers' +description = "Fast State-of-the-Art Tokenizers optimized for Research and Production" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +crates = [ + ('adler2', '2.0.0'), + ('aho-corasick', '1.1.3'), + ('anes', '0.1.6'), + ('anstream', '0.6.13'), + ('anstyle', '1.0.6'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('assert_approx_eq', '1.1.0'), + ('autocfg', '1.2.0'), + ('autocfg', '1.3.0'), + ('base64', '0.13.1'), + ('base64', '0.22.1'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '1.3.2'), + ('bitflags', '2.5.0'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('cast', '0.3.0'), + ('cc', '1.0.94'), + ('cc', '1.1.13'), + ('cfg-if', '1.0.0'), + ('ciborium', '0.2.2'), + ('ciborium-io', '0.2.2'), + ('ciborium-ll', '0.2.2'), + ('clap', '4.5.16'), + ('clap_builder', '4.5.15'), + ('clap_lex', '0.7.2'), + ('colorchoice', '1.0.0'), + ('console', '0.15.8'), + ('core-foundation', '0.9.4'), + ('core-foundation-sys', '0.8.7'), + ('crc32fast', '1.4.2'), + ('criterion', '0.5.1'), + ('criterion-plot', '0.5.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('crossbeam-utils', '0.8.20'), + ('crunchy', '0.2.2'), + ('darling', '0.20.8'), + ('darling', '0.20.10'), + ('darling_core', '0.20.8'), + ('darling_core', '0.20.10'), + ('darling_macro', '0.20.8'), + ('darling_macro', '0.20.10'), + ('derive_builder', '0.20.0'), + ('derive_builder_core', '0.20.0'), + ('derive_builder_macro', '0.20.0'), + ('dirs', '5.0.1'), + ('dirs-sys', '0.4.1'), + ('either', '1.11.0'), + ('either', '1.13.0'), + ('encode_unicode', '0.3.6'), + ('env_filter', '0.1.0'), + ('env_logger', '0.11.3'), + ('errno', '0.3.8'), + ('errno', '0.3.9'), + ('esaxx-rs', '0.1.10'), + ('fancy-regex', '0.13.0'), + ('fastrand', '2.0.2'), + ('fastrand', '2.1.0'), + ('flate2', '1.0.32'), + ('fnv', '1.0.7'), + ('foreign-types', '0.3.2'), + ('foreign-types-shared', '0.1.1'), + ('form_urlencoded', '1.2.1'), + ('getrandom', '0.2.14'), + ('getrandom', '0.2.15'), + ('half', '2.4.1'), + ('heck', '0.4.1'), + ('hermit-abi', '0.4.0'), + ('hf-hub', '0.3.2'), + ('humantime', '2.1.0'), + ('ident_case', '1.0.1'), + ('idna', '0.5.0'), + ('indicatif', '0.17.8'), + ('indoc', '2.0.5'), + ('instant', '0.1.12'), + ('instant', '0.1.13'), + ('is-terminal', '0.4.13'), + ('itertools', '0.10.5'), + ('itertools', '0.11.0'), + ('itertools', '0.12.1'), + ('itoa', '1.0.11'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.4.0'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.153'), + ('libc', '0.2.158'), + ('libredox', '0.1.3'), + ('linux-raw-sys', '0.4.13'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.11'), + ('log', '0.4.21'), + ('log', '0.4.22'), + ('macro_rules_attribute', '0.2.0'), + ('macro_rules_attribute-proc_macro', '0.2.0'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.7.2'), + ('memchr', '2.7.4'), + ('memoffset', '0.9.1'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.8.0'), + ('monostate', '0.1.12'), + ('monostate', '0.1.13'), + ('monostate-impl', '0.1.12'), + ('monostate-impl', '0.1.13'), + ('native-tls', '0.2.12'), + ('ndarray', '0.15.6'), + ('nom', '7.1.3'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.18'), + ('num-traits', '0.2.19'), + ('number_prefix', '0.4.0'), + ('numpy', '0.21.0'), + ('once_cell', '1.19.0'), + ('onig', '6.4.0'), + ('onig_sys', '69.8.1'), + ('oorandom', '11.1.4'), + ('openssl', '0.10.66'), + ('openssl-macros', '0.1.1'), + ('openssl-probe', '0.1.5'), + ('openssl-sys', '0.9.103'), + ('option-ext', '0.2.0'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.9'), + ('paste', '1.0.14'), + ('paste', '1.0.15'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('plotters', '0.3.6'), + ('plotters-backend', '0.3.6'), + ('plotters-svg', '0.3.6'), + ('portable-atomic', '1.6.0'), + ('portable-atomic', '1.7.0'), + ('ppv-lite86', '0.2.17'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.81'), + ('proc-macro2', '1.0.86'), + ('pyo3', '0.21.2'), + ('pyo3-build-config', '0.21.2'), + ('pyo3-ffi', '0.21.2'), + ('pyo3-macros', '0.21.2'), + ('pyo3-macros-backend', '0.21.2'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-cond', '0.3.0'), + ('rayon-core', '1.12.1'), + ('redox_syscall', '0.4.1'), + ('redox_users', '0.4.6'), + ('regex', '1.10.4'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.3'), + ('regex-syntax', '0.8.4'), + ('ring', '0.17.8'), + ('rustc-hash', '1.1.0'), + ('rustix', '0.38.34'), + ('rustix', '0.38.32'), + ('rustls', '0.23.12'), + ('rustls-pki-types', '1.8.0'), + ('rustls-webpki', '0.102.6'), + ('ryu', '1.0.17'), + ('ryu', '1.0.18'), + ('same-file', '1.0.6'), + ('schannel', '0.1.23'), + ('scopeguard', '1.2.0'), + ('security-framework', '2.11.1'), + ('security-framework-sys', '2.11.1'), + ('serde', '1.0.198'), + ('serde', '1.0.208'), + ('serde_derive', '1.0.198'), + ('serde_derive', '1.0.208'), + ('serde_json', '1.0.116'), + ('serde_json', '1.0.125'), + ('shlex', '1.3.0'), + ('smallvec', '1.13.2'), + ('spin', '0.9.8'), + ('spm_precompiled', '0.1.4'), + ('strsim', '0.10.0'), + ('strsim', '0.11.1'), + ('subtle', '2.6.1'), + ('syn', '2.0.60'), + ('syn', '2.0.75'), + ('target-lexicon', '0.12.14'), + ('tempfile', '3.10.1'), + ('tempfile', '3.12.0'), + ('thiserror', '1.0.58'), + ('thiserror', '1.0.63'), + ('thiserror-impl', '1.0.58'), + ('thiserror-impl', '1.0.63'), + ('tinytemplate', '1.2.1'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unicode-normalization-alignments', '0.1.12'), + ('unicode-segmentation', '1.11.0'), + ('unicode-width', '0.1.11'), + ('unicode-width', '0.1.13'), + ('unicode_categories', '0.1.1'), + ('unindent', '0.2.3'), + ('untrusted', '0.9.0'), + ('ureq', '2.10.1'), + ('url', '2.5.2'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('walkdir', '2.5.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.93'), + ('wasm-bindgen-backend', '0.2.93'), + ('wasm-bindgen-macro', '0.2.93'), + ('wasm-bindgen-macro-support', '0.2.93'), + ('wasm-bindgen-shared', '0.2.93'), + ('web-sys', '0.3.70'), + ('webpki-roots', '0.26.3'), + ('winapi-util', '0.1.9'), + ('windows-sys', '0.48.0'), + ('windows-sys', '0.52.0'), + ('windows-sys', '0.59.0'), + ('windows-targets', '0.48.5'), + ('windows-targets', '0.52.5'), + ('windows-targets', '0.52.6'), + ('windows_aarch64_gnullvm', '0.48.5'), + ('windows_aarch64_gnullvm', '0.52.5'), + ('windows_aarch64_gnullvm', '0.52.6'), + ('windows_aarch64_msvc', '0.48.5'), + ('windows_aarch64_msvc', '0.52.5'), + ('windows_aarch64_msvc', '0.52.6'), + ('windows_i686_gnu', '0.48.5'), + ('windows_i686_gnu', '0.52.5'), + ('windows_i686_gnu', '0.52.6'), + ('windows_i686_gnullvm', '0.52.5'), + ('windows_i686_gnullvm', '0.52.6'), + ('windows_i686_msvc', '0.48.5'), + ('windows_i686_msvc', '0.52.5'), + ('windows_i686_msvc', '0.52.6'), + ('windows_x86_64_gnu', '0.48.5'), + ('windows_x86_64_gnu', '0.52.5'), + ('windows_x86_64_gnu', '0.52.6'), + ('windows_x86_64_gnullvm', '0.48.5'), + ('windows_x86_64_gnullvm', '0.52.5'), + ('windows_x86_64_gnullvm', '0.52.6'), + ('windows_x86_64_msvc', '0.48.5'), + ('windows_x86_64_msvc', '0.52.5'), + ('windows_x86_64_msvc', '0.52.6'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), + ('zeroize', '1.8.1'), +] +sources = [SOURCE_TAR_GZ] +checksums = [ + {'tokenizers-0.19.1.tar.gz': 'ee59e6680ed0fdbe6b724cf38bd70400a0c1dd623b07ac729087270caeac88e3'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anes-0.1.6.tar.gz': '4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299'}, + {'anstream-0.6.13.tar.gz': 'd96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'assert_approx_eq-1.1.0.tar.gz': '3c07dab4369547dbe5114677b33fbbf724971019f3818172d59a97a61c774ffd'}, + {'autocfg-1.2.0.tar.gz': 'f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'base64-0.22.1.tar.gz': '72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.5.0.tar.gz': 'cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'cast-0.3.0.tar.gz': '37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5'}, + {'cc-1.0.94.tar.gz': '17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7'}, + {'cc-1.1.13.tar.gz': '72db2f7947ecee9b03b510377e8bb9077afa27176fdbff55c51027e976fdcc48'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'ciborium-0.2.2.tar.gz': '42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e'}, + {'ciborium-io-0.2.2.tar.gz': '05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757'}, + {'ciborium-ll-0.2.2.tar.gz': '57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9'}, + {'clap-4.5.16.tar.gz': 'ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019'}, + {'clap_builder-4.5.15.tar.gz': '216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6'}, + {'clap_lex-0.7.2.tar.gz': '1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'console-0.15.8.tar.gz': '0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb'}, + {'core-foundation-0.9.4.tar.gz': '91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'criterion-0.5.1.tar.gz': 'f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f'}, + {'criterion-plot-0.5.0.tar.gz': '6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'darling-0.20.8.tar.gz': '54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391'}, + {'darling-0.20.10.tar.gz': '6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989'}, + {'darling_core-0.20.8.tar.gz': '9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f'}, + {'darling_core-0.20.10.tar.gz': '95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5'}, + {'darling_macro-0.20.8.tar.gz': 'a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f'}, + {'darling_macro-0.20.10.tar.gz': 'd336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806'}, + {'derive_builder-0.20.0.tar.gz': '0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7'}, + {'derive_builder_core-0.20.0.tar.gz': 'd48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d'}, + {'derive_builder_macro-0.20.0.tar.gz': '206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b'}, + {'dirs-5.0.1.tar.gz': '44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225'}, + {'dirs-sys-0.4.1.tar.gz': '520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c'}, + {'either-1.11.0.tar.gz': 'a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'env_filter-0.1.0.tar.gz': 'a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea'}, + {'env_logger-0.11.3.tar.gz': '38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9'}, + {'errno-0.3.8.tar.gz': 'a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'esaxx-rs-0.1.10.tar.gz': 'd817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6'}, + {'fancy-regex-0.13.0.tar.gz': '531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2'}, + {'fastrand-2.0.2.tar.gz': '658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984'}, + {'fastrand-2.1.0.tar.gz': '9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a'}, + {'flate2-1.0.32.tar.gz': '9c0596c1eac1f9e04ed902702e9878208b336edc9d6fddc8a48387349bab3666'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'foreign-types-0.3.2.tar.gz': 'f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1'}, + {'foreign-types-shared-0.1.1.tar.gz': '00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'getrandom-0.2.14.tar.gz': '94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'half-2.4.1.tar.gz': '6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.4.0.tar.gz': 'fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc'}, + {'hf-hub-0.3.2.tar.gz': '2b780635574b3d92f036890d8373433d6f9fc7abb320ee42a5c25897fc8ed732'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'ident_case-1.0.1.tar.gz': 'b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'indicatif-0.17.8.tar.gz': '763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3'}, + {'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'instant-0.1.13.tar.gz': 'e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222'}, + {'is-terminal-0.4.13.tar.gz': '261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'js-sys-0.3.70.tar.gz': '1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'libredox-0.1.3.tar.gz': 'c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d'}, + {'linux-raw-sys-0.4.13.tar.gz': '01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.11.tar.gz': '3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45'}, + {'log-0.4.21.tar.gz': '90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'macro_rules_attribute-0.2.0.tar.gz': '8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13'}, + {'macro_rules_attribute-proc_macro-0.2.0.tar.gz': + 'b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.7.2.tar.gz': '6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'monostate-0.1.12.tar.gz': 'a20fffcd8ca4c69d31e036a71abc400147b41f90895df4edcb36497a1f8af8bf'}, + {'monostate-0.1.13.tar.gz': '0d208407d7552cd041d8cdb69a1bc3303e029c598738177a3d87082004dc0e1e'}, + {'monostate-impl-0.1.12.tar.gz': 'bf307cbbbd777a9c10cec88ddafee572b3484caad5cce0c9236523c3803105a6'}, + {'monostate-impl-0.1.13.tar.gz': 'a7ce64b975ed4f123575d11afd9491f2e37bbd5813fbfbc0f09ae1fbddea74e0'}, + {'native-tls-0.2.12.tar.gz': 'a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'numpy-0.21.0.tar.gz': 'ec170733ca37175f5d75a5bea5911d6ff45d2cd52849ce98b685394e4f2f37f4'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'onig-6.4.0.tar.gz': '8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f'}, + {'onig_sys-69.8.1.tar.gz': '7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7'}, + {'oorandom-11.1.4.tar.gz': 'b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9'}, + {'openssl-0.10.66.tar.gz': '9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-probe-0.1.5.tar.gz': 'ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf'}, + {'openssl-sys-0.9.103.tar.gz': '7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6'}, + {'option-ext-0.2.0.tar.gz': '04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.9.tar.gz': '4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'paste-1.0.15.tar.gz': '57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'plotters-0.3.6.tar.gz': 'a15b6eccb8484002195a3e44fe65a4ce8e93a625797a063735536fd59cb01cf3'}, + {'plotters-backend-0.3.6.tar.gz': '414cec62c6634ae900ea1c56128dfe87cf63e7caece0852ec76aba307cebadb7'}, + {'plotters-svg-0.3.6.tar.gz': '81b30686a7d9c3e010b84284bdd26a29f2138574f52f5eb6f794fc0ad924e705'}, + {'portable-atomic-1.6.0.tar.gz': '7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0'}, + {'portable-atomic-1.7.0.tar.gz': 'da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro2-1.0.81.tar.gz': '3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'pyo3-0.21.2.tar.gz': 'a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8'}, + {'pyo3-build-config-0.21.2.tar.gz': '7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50'}, + {'pyo3-ffi-0.21.2.tar.gz': '01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403'}, + {'pyo3-macros-0.21.2.tar.gz': '77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c'}, + {'pyo3-macros-backend-0.21.2.tar.gz': '08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c'}, + {'quote-1.0.36.tar.gz': '0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-cond-0.3.0.tar.gz': '059f538b55efd2309c9794130bc149c6a553db90e9d99c2030785c82f0bd7df9'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'redox_syscall-0.4.1.tar.gz': '4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa'}, + {'redox_users-0.4.6.tar.gz': 'ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43'}, + {'regex-1.10.4.tar.gz': 'c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c'}, + {'regex-1.10.6.tar.gz': '4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619'}, + {'regex-automata-0.4.6.tar.gz': '86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea'}, + {'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}, + {'regex-syntax-0.8.3.tar.gz': 'adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56'}, + {'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}, + {'ring-0.17.8.tar.gz': 'c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustix-0.38.34.tar.gz': '70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f'}, + {'rustix-0.38.32.tar.gz': '65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89'}, + {'rustls-0.23.12.tar.gz': 'c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044'}, + {'rustls-pki-types-1.8.0.tar.gz': 'fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0'}, + {'rustls-webpki-0.102.6.tar.gz': '8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'same-file-1.0.6.tar.gz': '93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502'}, + {'schannel-0.1.23.tar.gz': 'fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'security-framework-2.11.1.tar.gz': '897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02'}, + {'security-framework-sys-2.11.1.tar.gz': '75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf'}, + {'serde-1.0.198.tar.gz': '9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc'}, + {'serde-1.0.208.tar.gz': 'cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2'}, + {'serde_derive-1.0.198.tar.gz': 'e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9'}, + {'serde_derive-1.0.208.tar.gz': '24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf'}, + {'serde_json-1.0.116.tar.gz': '3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813'}, + {'serde_json-1.0.125.tar.gz': '83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'spin-0.9.8.tar.gz': '6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67'}, + {'spm_precompiled-0.1.4.tar.gz': '5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'subtle-2.6.1.tar.gz': '13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292'}, + {'syn-2.0.60.tar.gz': '909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3'}, + {'syn-2.0.75.tar.gz': 'f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9'}, + {'target-lexicon-0.12.14.tar.gz': 'e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f'}, + {'tempfile-3.10.1.tar.gz': '85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1'}, + {'tempfile-3.12.0.tar.gz': '04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64'}, + {'thiserror-1.0.58.tar.gz': '03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297'}, + {'thiserror-1.0.63.tar.gz': 'c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724'}, + {'thiserror-impl-1.0.58.tar.gz': 'c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7'}, + {'thiserror-impl-1.0.63.tar.gz': 'a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261'}, + {'tinytemplate-1.2.1.tar.gz': 'be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'unicode-bidi-0.3.15.tar.gz': '08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.23.tar.gz': 'a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5'}, + {'unicode-normalization-alignments-0.1.12.tar.gz': + '43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de'}, + {'unicode-segmentation-1.11.0.tar.gz': 'd4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202'}, + {'unicode-width-0.1.11.tar.gz': 'e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85'}, + {'unicode-width-0.1.13.tar.gz': '0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d'}, + {'unicode_categories-0.1.1.tar.gz': '39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e'}, + {'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}, + {'untrusted-0.9.0.tar.gz': '8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1'}, + {'ureq-2.10.1.tar.gz': 'b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'walkdir-2.5.0.tar.gz': '29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.93.tar.gz': 'a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5'}, + {'wasm-bindgen-backend-0.2.93.tar.gz': '9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b'}, + {'wasm-bindgen-macro-0.2.93.tar.gz': '585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf'}, + {'wasm-bindgen-macro-support-0.2.93.tar.gz': 'afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836'}, + {'wasm-bindgen-shared-0.2.93.tar.gz': 'c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484'}, + {'web-sys-0.3.70.tar.gz': '26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0'}, + {'webpki-roots-0.26.3.tar.gz': 'bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd'}, + {'winapi-util-0.1.9.tar.gz': 'cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb'}, + {'windows-sys-0.48.0.tar.gz': '677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.48.5.tar.gz': '9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c'}, + {'windows-targets-0.52.5.tar.gz': '6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.48.5.tar.gz': '2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8'}, + {'windows_aarch64_gnullvm-0.52.5.tar.gz': '7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.48.5.tar.gz': 'dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc'}, + {'windows_aarch64_msvc-0.52.5.tar.gz': '9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.48.5.tar.gz': 'a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e'}, + {'windows_i686_gnu-0.52.5.tar.gz': '88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.5.tar.gz': '87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.48.5.tar.gz': '8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406'}, + {'windows_i686_msvc-0.52.5.tar.gz': 'db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.48.5.tar.gz': '53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e'}, + {'windows_x86_64_gnu-0.52.5.tar.gz': '4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.48.5.tar.gz': '0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc'}, + {'windows_x86_64_gnullvm-0.52.5.tar.gz': '852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.48.5.tar.gz': 'ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538'}, + {'windows_x86_64_msvc-0.52.5.tar.gz': 'bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, + {'zeroize-1.8.1.tar.gz': 'ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde'}, +] + +_rust_ver = '1.76.0' +builddependencies = [ + ('binutils', '2.40'), + ('Rust', _rust_ver), + ('maturin', '1.5.0', '-Rust-%s' % _rust_ver), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), # fsspec, filelock used by hf-hub + ('PyYAML', '6.0.1'), # used by hf-hub + ('tqdm', '4.66.2'), # used by hf-hub +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('huggingface-hub', '0.24.6', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['cc2579e761d070713eaa9c323e3debe39d5b464ae3a7261c39a9195b27bb8000'], + }), + (name, version, { + 'checksums': ['ee59e6680ed0fdbe6b724cf38bd70400a0c1dd623b07ac729087270caeac88e3'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/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..d4266c8c1c9 --- /dev/null +++ b/easybuild/easyconfigs/t/tornado/tornado-6.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,29 @@ +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"), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = "lib" diff --git a/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b9d92f49462 --- /dev/null +++ b/easybuild/easyconfigs/t/tqdm/tqdm-4.66.5-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +# # +# Author: Robert Mijakovic +# # +easyblock = 'PythonPackage' + +name = 'tqdm' +version = '4.66.5' + +homepage = 'https://github.com/tqdm/tqdm' +description = "A fast, extensible progress bar for Python and CLI" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e1020aef2e5096702d8a025ac7d16b1577279c9d63f8375b63083e9a5f0fcbad'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +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..a25c1a4ac0f --- /dev/null +++ b/easybuild/easyconfigs/t/trimesh/trimesh-4.4.9-gfbf-2024a.eb @@ -0,0 +1,33 @@ +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'] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + + +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..3bea1107bfc --- /dev/null +++ b/easybuild/easyconfigs/t/trusTEr/trusTEr-0.1.1-20241025-foss-2023a.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonPackage' + +name = 'trusTEr' +version = '0.1.1-20241025' +local_commit = '6358eef' + +homepage = 'https://github.com/raquelgarza/truster' +description = """Takes fastq files from 10x single cell RNA sequencing, clusters cells using Seurat, +and can be used to produce read count matrices in a cluster level. +You can also quantify reads per cluster having predefined clusters.""" + +source_urls = ['https://github.com/raquelgarza/truster/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['ef6f454a73f545e5f90a28a80d388afb763a43ac1256f3c182bf947728b4e39a'] + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('CellRanger', '8.0.1', '', SYSTEM), + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('Seurat', '5.1.0', '-R-%(rver)s'), + ('STAR', '2.7.11a'), + ('velocyto', '0.17.17'), + ('TEtranscripts', '2.2.3'), + ('bamtofastq', '1.4.1'), + ('subset-bam', '1.1.0', '', SYSTEM), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..552279e3ffe --- /dev/null +++ b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.11.0-GCCcore-13.3.0.eb @@ -0,0 +1,21 @@ +easyblock = 'PythonPackage' + +name = 'typing-extensions' +version = '4.11.0' + +homepage = 'https://github.com/python/typing_extensions' +description = "Typing Extensions - Backported and Experimental Type Hints for Python" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = ['typing_extensions-%(version)s.tar.gz'] +checksums = ['83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0'] + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'devel' 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..f8bba051951 --- /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..a0b4865a721 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,55 @@ +easyblock = 'ConfigureMake' + +name = 'UCC-CUDA' +version = '1.3.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.openucx.org/' +description = """UCC (Unified Collective Communication) is a collective +communication operations API and library that is flexible, complete, and +feature-rich for current and emerging programming models and runtimes. + +This module adds the UCC CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucc/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_link_against_existing_UCC_libs.patch', +] +checksums = [ + {'v1.3.0.tar.gz': 'b56379abe5f1c125bfa83be305d78d81a64aa271b7b5fff0ac17b86725ff3acf'}, + {'UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch': + '758228357ce2a6ae50fb26a0b43e9176feaf379e266365f38205ce679267fc0d'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('UCC', version), + ('CUDA', '12.6.0', '', SYSTEM), + ('UCX-CUDA', '1.16.0', '-CUDA-%(cudaver)s'), + ('NCCL', '2.22.3', '-CUDA-%(cudaver)s'), +] + +preconfigopts = "./autogen.sh && " + +buildopts = '-C src/components/mc/cuda V=1 && make -C src/components/tl/nccl V=1' +installopts = '-C src/components/mc/cuda && make -C src/components/tl/nccl install' + +sanity_check_paths = { + 'files': ['lib/ucc/libucc_mc_cuda.%s' % SHLIB_EXT, 'lib/ucc/libucc_tl_nccl.%s' % SHLIB_EXT], + 'dirs': ['lib'] +} + +sanity_check_commands = ["ucc_info -c"] + +modextrapaths = {'EB_UCC_EXTRA_COMPONENT_PATH': 'lib/ucc'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch new file mode 100644 index 00000000000..5d005e067f7 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch @@ -0,0 +1,27 @@ +Make CUDA/NCCL plugins link against the existing ucc libraries. + +Bart Oldeman, 2022-08-02 +Mikael OEhman, 2023-06-16 +diff -ur ucc-1.3.0.orig/src/components/mc/cuda/Makefile.am ucc-1.3.0/src/components/ec/cuda/Makefile.am +--- ucc-1.3.0.orig/src/components/mc/cuda/Makefile.am.orig 2023-06-16 12:56:53.205939925 +0200 ++++ ucc-1.3.0/src/components/mc/cuda/Makefile.am 2023-06-16 13:02:21.716110609 +0200 +@@ -14,7 +14,7 @@ + libucc_mc_cuda_la_CFLAGS = $(BASE_CFLAGS) + libucc_mc_cuda_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) + libucc_mc_cuda_la_LIBADD = $(CUDA_LIBS) \ +- $(UCC_TOP_BUILDDIR)/src/libucc.la ++ -lucc + + include $(top_srcdir)/config/module.am + endif +diff -ur ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am ucc-1.0.0/src/components/tl/nccl/Makefile.am +--- ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am 2022-04-15 12:43:33.000000000 +0000 ++++ ucc-1.0.0/src/components/tl/nccl/Makefile.am 2022-08-02 12:13:59.334795989 +0000 +@@ -21,6 +21,6 @@ + libucc_tl_nccl_la_CPPFLAGS = $(AM_CPPFLAGS) $(BASE_CPPFLAGS) $(CUDA_CPPFLAGS) $(NCCL_CPPFLAGS) + libucc_tl_nccl_la_CFLAGS = $(BASE_CFLAGS) + libucc_tl_nccl_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) $(NCCL_LDFLAGS) +-libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) $(UCC_TOP_BUILDDIR)/src/libucc.la ++libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) -lucc + + include $(top_srcdir)/config/module.am diff --git a/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 00000000000..34271e18021 --- /dev/null +++ b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,41 @@ +easyblock = 'EB_UCX_Plugins' + +name = 'UCX-CUDA' +version = '1.16.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications + +This module adds the UCX CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = [{'filename': 'ucx-%(version)s.tar.gz', 'alt_location': 'UCX'}] +patches = ['%(name)s-1.16.0_link_against_existing_UCX_libs.patch'] +checksums = [ + {'ucx-1.16.0.tar.gz': 'f73770d3b583c91aba5fb07557e655ead0786e057018bfe42f0ebe8716e9d28c'}, + {'UCX-CUDA-1.16.0_link_against_existing_UCX_libs.patch': + 'aa5bab38c188276958dd6829da4929ed9ff0b67cd55665b4459521cf3fbbe46d'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('UCX', version), + ('CUDA', '12.6.0', '', SYSTEM), + ('GDRCopy', '2.4.1'), +] + + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0_link_against_existing_UCX_libs.patch b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0_link_against_existing_UCX_libs.patch new file mode 100644 index 00000000000..92973cd7f80 --- /dev/null +++ b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.16.0_link_against_existing_UCX_libs.patch @@ -0,0 +1,93 @@ +diff --git a/configure.ac b/configure.ac +index 8d8da54..2765fe0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -30,13 +30,13 @@ valgrind_libpath="" + AC_USE_SYSTEM_EXTENSIONS + AC_CONFIG_HEADERS([config.h]) + +-AC_CHECK_PROG(GITBIN, git, yes) +-AS_IF([test x"${GITBIN}" = x"yes"], +- [# remove preceding "refs/heads/" (11 characters) for symbolic ref +- AC_SUBST(SCM_BRANCH, esyscmd([sh -c 'git symbolic-ref --quiet HEAD | sed "s/^.\{11\}//"'])) +- AC_SUBST(SCM_VERSION, esyscmd([sh -c 'git rev-parse --short=7 HEAD']))], +- [AC_SUBST(SCM_BRANCH, "") +- AC_SUBST(SCM_VERSION, "0000000")]) ++#AC_CHECK_PROG(GITBIN, git, yes) ++#AS_IF([test x"${GITBIN}" = x"yes"], ++# [# remove preceding "refs/heads/" (11 characters) for symbolic ref ++# AC_SUBST(SCM_BRANCH, esyscmd([sh -c 'git symbolic-ref --quiet HEAD | sed "s/^.\{11\}//"'])) ++# AC_SUBST(SCM_VERSION, esyscmd([sh -c 'git rev-parse --short=7 HEAD']))], ++# [AC_SUBST(SCM_BRANCH, "") ++# AC_SUBST(SCM_VERSION, "0000000")]) + + AH_TOP([ + #ifndef UCX_CONFIG_H +diff --git a/src/ucm/cuda/Makefile.am b/src/ucm/cuda/Makefile.am +index 00bd224..22e719f 100644 +--- a/src/ucm/cuda/Makefile.am ++++ b/src/ucm/cuda/Makefile.am +@@ -9,7 +9,7 @@ if HAVE_CUDA + module_LTLIBRARIES = libucm_cuda.la + libucm_cuda_la_CPPFLAGS = $(BASE_CPPFLAGS) $(CUDA_CPPFLAGS) + libucm_cuda_la_CFLAGS = $(BASE_CFLAGS) $(CUDA_CFLAGS) +-libucm_cuda_la_LIBADD = ../libucm.la $(CUDA_LIBS) $(CUDART_LIBS) ++libucm_cuda_la_LIBADD = -lucm $(CUDA_LIBS) $(CUDART_LIBS) + libucm_cuda_la_LDFLAGS = $(UCM_MODULE_LDFLAGS) \ + $(patsubst %, -Xlinker %, $(CUDA_LDFLAGS)) \ + -version-info $(SOVERSION) +diff --git a/src/ucm/rocm/Makefile.am b/src/ucm/rocm/Makefile.am +index f9e183f..dcd1587 100644 +--- a/src/ucm/rocm/Makefile.am ++++ b/src/ucm/rocm/Makefile.am +@@ -10,7 +10,7 @@ if HAVE_ROCM + module_LTLIBRARIES = libucm_rocm.la + libucm_rocm_la_CPPFLAGS = $(BASE_CPPFLAGS) $(ROCM_CPPFLAGS) + libucm_rocm_la_CFLAGS = $(BASE_CFLAGS) $(ROCM_CFLAGS) +-libucm_rocm_la_LIBADD = ../libucm.la ++libucm_rocm_la_LIBADD = -lucm + libucm_rocm_la_LDFLAGS = $(UCM_MODULE_LDFLAGS) \ + $(ROCM_LDFLAGS) $(ROCM_LIBS) -version-info $(SOVERSION) \ + $(patsubst %, -Xlinker %, -L$(ROCM_ROOT)/lib -rpath $(ROCM_ROOT)/hip/lib -rpath $(ROCM_ROOT)/lib) \ +diff --git a/src/uct/cuda/Makefile.am b/src/uct/cuda/Makefile.am +index 00899ab..dcee6b0 100644 +--- a/src/uct/cuda/Makefile.am ++++ b/src/uct/cuda/Makefile.am +@@ -11,8 +11,8 @@ module_LTLIBRARIES = libuct_cuda.la + libuct_cuda_la_CPPFLAGS = $(BASE_CPPFLAGS) $(CUDA_CPPFLAGS) + libuct_cuda_la_CFLAGS = $(BASE_CFLAGS) $(CUDA_CFLAGS) + libuct_cuda_la_LDFLAGS = $(CUDA_LDFLAGS) -version-info $(SOVERSION) +-libuct_cuda_la_LIBADD = $(top_builddir)/src/ucs/libucs.la \ +- $(top_builddir)/src/uct/libuct.la \ ++libuct_cuda_la_LIBADD = -lucs \ ++ -luct \ + $(CUDA_LIBS) $(CUDART_LIBS) $(NVML_LIBS) + + noinst_HEADERS = \ +diff --git a/src/uct/cuda/gdr_copy/Makefile.am b/src/uct/cuda/gdr_copy/Makefile.am +index 47602c7..601cb9f 100644 +--- a/src/uct/cuda/gdr_copy/Makefile.am ++++ b/src/uct/cuda/gdr_copy/Makefile.am +@@ -9,7 +9,7 @@ module_LTLIBRARIES = libuct_cuda_gdrcopy.la + libuct_cuda_gdrcopy_la_CPPFLAGS = $(BASE_CPPFLAGS) $(GDR_COPY_CPPFLAGS) + libuct_cuda_gdrcopy_la_CFLAGS = $(BASE_CFLAGS) + libuct_cuda_gdrcopy_la_LDFLAGS = $(GDR_COPY_LDFLAGS) -version-info $(SOVERSION) +-libuct_cuda_gdrcopy_la_LIBADD = $(top_builddir)/src/ucs/libucs.la \ ++libuct_cuda_gdrcopy_la_LIBADD = -lucs \ + $(top_builddir)/src/uct/cuda/libuct_cuda.la \ + $(GDR_COPY_LIBS) + +diff --git a/src/uct/rocm/Makefile.am b/src/uct/rocm/Makefile.am +index c7abce1..257e33f 100644 +--- a/src/uct/rocm/Makefile.am ++++ b/src/uct/rocm/Makefile.am +@@ -8,8 +8,7 @@ if HAVE_ROCM + module_LTLIBRARIES = libuct_rocm.la + libuct_rocm_la_CPPFLAGS = $(BASE_CPPFLAGS) $(ROCM_CPPFLAGS) + libuct_rocm_la_CFLAGS = $(BASE_CFLAGS) +-libuct_rocm_la_LIBADD = $(top_builddir)/src/ucs/libucs.la \ +- $(top_builddir)/src/uct/libuct.la ++libuct_rocm_la_LIBADD = -lucs -luct + libuct_rocm_la_LDFLAGS = $(ROCM_LDFLAGS) $(ROCM_LIBS) -version-info $(SOVERSION) \ + $(patsubst %, -Xlinker %, -L$(ROCM_ROOT)/lib -rpath $(ROCM_ROOT)/hip/lib -rpath $(ROCM_ROOT)/lib) \ + $(patsubst %, -Xlinker %, --enable-new-dtags) \ diff --git a/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb b/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..12a51d8afd4 --- /dev/null +++ b/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb @@ -0,0 +1,44 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 University of Luxembourg, Ghent University +# Authors:: Fotis Georgatos , Kenneth Hoste (Ghent University) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html +## + +easyblock = 'ConfigureMake' + +name = 'UDUNITS' +version = '2.2.28' + +homepage = 'https://www.unidata.ucar.edu/software/udunits/' +description = """UDUNITS supports conversion of unit specifications between formatted and binary forms, + arithmetic manipulation of units, and conversion of values between compatible scales of measurement.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://artifacts.unidata.ucar.edu/repository/downloads-udunits/%(version)s/', + 'https://sources.easybuild.io/u/UDUNITS/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['590baec83161a3fd62c00efa66f6113cec8a7c461e3f61a5182167e0cc5d579e'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('expat', '2.6.2')] + +sanity_check_paths = { + 'files': ['bin/udunits2', 'include/converter.h', 'include/udunits2.h', 'include/udunits.h', + 'lib/libudunits2.a', 'lib/libudunits2.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +parallel = 1 + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..2ca769764aa --- /dev/null +++ b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,55 @@ +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': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), + ('jax', '0.3.25', versionsuffix), # provides absl-py + ('tensorboardX', '2.5.1'), + ('tqdm', '4.64.0'), + ('wandb', '0.13.4'), +] + +use_pip = True + +exts_list = [ + ('lmdb', '1.4.1', { + 'checksums': ['1f4c76af24e907593487c904ef5eba1993beb38ed385af82adb25a858f2d658d'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + }), + ('huggingface-hub', '0.17.3', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['40439632b211311f788964602bf8b0d9d6b7a2314fba4e8d67b2ce3ecea0e3fd'], + }), + ('tokenizers', '0.19.1', { + 'sources': ['tokenizers-%(version)s-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl'], + 'checksums': ['8b01afb7193d47439f091cd8f070a1ced347ad0f9144952a30a41836902fe09e'], + }), + (name, version, { + 'source_urls': ['https://github.com/dptech-corp/Uni-Core/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['e7a1e938d7d340d7aa483a05ed5ecf715bfa22f5f32a92e46d096da5b9a08043'], + 'preinstallopts': "sed -i 's/torch>=[0-9.]*/torch/g' setup.py && ", + 'modulename': 'unicore', + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a.eb b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a.eb new file mode 100644 index 00000000000..d82f94349bc --- /dev/null +++ b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2022a.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'Uni-Core' +version = '0.0.3' + +homepage = 'https://github.com/dptech-corp/Uni-Core' +description = "An efficient distributed PyTorch framework" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('PyTorch', '1.12.0'), + ('jax', '0.3.25'), # provides absl-py + ('tensorboardX', '2.5.1'), + ('tqdm', '4.64.0'), + ('wandb', '0.13.4'), +] + +use_pip = True + +local_preinstallopts = "sed -i -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.4.1', { + 'checksums': ['1f4c76af24e907593487c904ef5eba1993beb38ed385af82adb25a858f2d658d'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + }), + ('huggingface-hub', '0.17.3', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['40439632b211311f788964602bf8b0d9d6b7a2314fba4e8d67b2ce3ecea0e3fd'], + }), + ('tokenizers', '0.19.1', { + 'sources': ['tokenizers-%(version)s-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl'], + 'checksums': ['8b01afb7193d47439f091cd8f070a1ced347ad0f9144952a30a41836902fe09e'], + }), + (name, version, { + 'source_urls': ['https://github.com/dptech-corp/Uni-Core/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['e7a1e938d7d340d7aa483a05ed5ecf715bfa22f5f32a92e46d096da5b9a08043'], + 'preinstallopts': local_preinstallopts, + 'modulename': 'unicore', + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/u/unixODBC/unixODBC-2.3.12-GCCcore-12.3.0.eb b/easybuild/easyconfigs/u/unixODBC/unixODBC-2.3.12-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..7e5cec281f2 --- /dev/null +++ b/easybuild/easyconfigs/u/unixODBC/unixODBC-2.3.12-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +# Easyconfig for unixODBC +# Author: Lykle Voort +# SURFsara, Amsterdam, The Netherlands +# Updated: Petr Král (INUITS) + +easyblock = 'ConfigureMake' + +name = 'unixODBC' +version = '2.3.12' + +homepage = "https://www.unixodbc.org" +description = """unixODBC provides a uniform interface between +application and database driver""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [SOURCE_TAR_GZ] +source_urls = ['https://www.unixodbc.org/'] +checksums = ['f210501445ce21bf607ba51ef8c125e10e22dffdffec377646462df5f01915ec'] + +builddependencies = [('binutils', '2.40')] + +sanity_check_paths = { + 'files': [ + 'lib/libodbc.%s' % SHLIB_EXT, + 'lib/libodbccr.%s' % SHLIB_EXT, + 'lib/libodbcinst.%s' % SHLIB_EXT, + ], + 'dirs': [] +} + +moduleclass = 'data' 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..c0a4954721b --- /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/VASPKIT/VASPKIT-1.5.1-foss-2023a.eb b/easybuild/easyconfigs/v/VASPKIT/VASPKIT-1.5.1-foss-2023a.eb new file mode 100644 index 00000000000..5222a9aba25 --- /dev/null +++ b/easybuild/easyconfigs/v/VASPKIT/VASPKIT-1.5.1-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'Tarball' + +name = 'VASPKIT' +version = '1.5.1' + +homepage = 'https://vaspkit.com/' +description = """ +VASPKIT aims at providing a powerful and user-friendly interface to perform high throughput +analysis of various material properties from the raw calculated data using the widely-used +VASP code. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), +] + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(namelower)s.%(version)s.linux.x64.tar.gz'] +patches = ['%(name)s-1.5.1_fix-envvars.patch'] +checksums = [ + {'vaspkit.1.5.1.linux.x64.tar.gz': '41bbdc0759f72cd43ef7e2f541d228a639bd95dba2a549398b28f47d760d72b1'}, + {'VASPKIT-1.5.1_fix-envvars.patch': '952e2530b53e4632c3f8ab2ec24f88c61d76e263d9a377772c44c3ad071c1970'}, +] + +sanity_check_paths = { + 'files': ["bin/vaspkit", "how_to_set_environment_variables"], + 'dirs': ["bin"], +} + +# remove setup.sh to avoid users to run it +postinstallcmds = ['rm %(installdir)s/setup.sh'] + +modloadmsg = """ +When using this module for the first time run: +cp $EBROOTVASPKIT/how_to_set_environment_variables ~/.vaspkit +and modify paths set in ~/.vaspkit as needed. +""" + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/VASPKIT/VASPKIT-1.5.1_fix-envvars.patch b/easybuild/easyconfigs/v/VASPKIT/VASPKIT-1.5.1_fix-envvars.patch new file mode 100644 index 00000000000..d5af158a61f --- /dev/null +++ b/easybuild/easyconfigs/v/VASPKIT/VASPKIT-1.5.1_fix-envvars.patch @@ -0,0 +1,66 @@ +Set correct environment variables, add instructions to set POTCAR paths, translate example job script to slurm +Author: Cintia Willemyns (Vrije Universiteit Brussel) +diff -Naur vaspkit.1.5.1.orig/how_to_set_auto_plot vaspkit.1.5.1/how_to_set_auto_plot +--- vaspkit.1.5.1.orig/how_to_set_auto_plot 2024-06-18 10:57:18.521696013 +0200 ++++ vaspkit.1.5.1/how_to_set_auto_plot 2024-06-18 11:55:12.298424299 +0200 +@@ -1,7 +1,7 @@ + (1) Make sure you have installed python3, numpy, scipy, matplotlib, etc. + (2) Add the following parameters in the ~/.vaspkit file; + ####################################################################### +- PYTHON_BIN ~/anaconda3/bin/python3 ++ PYTHON_BIN $EBROOTPYTHON/bin/python3 + AUTO_PLOT .TRUE. + ####################################################################### + (3) Copy the plot presets from the vaspkit/how_to_set_environment_variable file to the ~/.vaspkit file. Must copy the block from #BEGIN_CUSTOMIZE_PLOT to #END_CUSTOMIZE_PLOT. +diff -Naur vaspkit.1.5.1.orig/how_to_set_environment_variables vaspkit.1.5.1/how_to_set_environment_variables +--- vaspkit.1.5.1.orig/how_to_set_environment_variables 2024-06-18 10:57:17.784058000 +0200 ++++ vaspkit.1.5.1/how_to_set_environment_variables 2024-06-18 13:59:20.120174533 +0200 +@@ -1,11 +1,13 @@ + # cp how_to_set_environment_variables ~/.vaspkit and modify the ~/.vaspkit file based on the settings in your supercomputer! ++# Modify paths as needed, e.g if you want to make PBE-POTCAR file, use POTCAR_TYPE = PBE and set the PBE_PATH to where you unzipped the VASP PAW_PBE pseudo potentials. ++# Do not modify VASPKIT_UTILITIES_PATH or PYTHON_BIN paths! + # All environment variables are case sensitive. + VASP5 = .TRUE. # .TRUE. or .FALSE.; Set .FALSE. if you are using vasp.4.x +-LDA_PATH = ~/POTCAR/LDA # Path of LDA potential +-PBE_PATH = ~/POTCAR/PBE # Path of PBE potential +-GGA_PATH = ~/POTCAR/GGA # Path of PW91 potential +-VASPKIT_UTILITIES_PATH = ~/vaspkit/utilities # Path of VASPKIT +-PYTHON_BIN = ~/anaconda3/bin/python3 # Python executable program with its installation path. Recommend Anaconda package ++LDA_PATH = # Path of LDA potential ++PBE_PATH = # Path of PBE potential ++GGA_PATH = # Path of PW91 potential ++VASPKIT_UTILITIES_PATH = $EBROOTVASPKIT/utilities # Path of VASPKIT ++PYTHON_BIN = $EBROOTPYTHON/bin/python3 # Python executable program with its installation path. Recommend Anaconda package + POTCAR_TYPE = PBE # PBE, PW91 or LDA; Set PBE if you want to make PBE-POTCAR file + GW_POTCAR = .FALSE. # .TRUE. or .FALSE.; For example, H_GW, O_GW will be chose when POTCAR_GW set to .TRUE. + RECOMMENDED_POTCAR = .TRUE. # .TRUE. or .FALSE.; The recommended PAW potential will be chose when RECOMMENDED_POTCAR set to .TRUE. +@@ -42,7 +44,7 @@ + INTERPOLATION_SPACING = 0.04 # Determines the number of interpolation grids, in unit of A in real-space or 1/A in reciprocal space (default: 0.04) + INTERPOLATION_METHOD = 'cubic' # 'linear', 'cubic' (3rd order-spline interpolation), quartic (4th order-spline interpolation), or FFT available only for 2D and 3D grids (default method: 'cubic') + AUTO_SUBMIT_JOB = .FALSE. # .TRUE. or .FALSE. (default: .FASLE.). Whether to auto-submit vaspkit or vasp job or not. +-SUBMIT_JOB_COMMAND = 'qsub job.sh' # The command line to submit job ++SUBMIT_JOB_COMMAND = 'sbatch job.sh' # The command line to submit job + AUTO_PLOT = .FALSE. # TRUE. or .FALSE. (default: .FASLE.). Whether to auto-plot data graphs in the post-processing. + + # New added in Version 1.4.1 +@@ -69,12 +71,14 @@ + #| Must copy the block from #BEGIN_CUSTOMIZE_JOB_SCRIPT to #END_CUSTOMIZE_JOB_SCRIPT | + #+------------------------------------------------------------------------------------------------------------------+ + #BEGIN_CUSTOMIZE_JOB_SCRIPT +-#PBS -N name +-#PBS -o out +-#PBS -e err +-#PBS -l nodes=2:ppn=4 +-#PBS -r y +-cd $PBS_O_WORKDIR ++#!/bin/bash ++#SBATCH --job-name=name # Job name ++#SBATCH --output=out # Standard output ++#SBATCH --error=err # Standard error ++#SBATCH --nodes=2 # Number of nodes ++#SBATCH --ntasks-per-node=4 # Number of tasks per node ++#SBATCH --requeue # Requeue the job if it fails ++cd $SLURM_SUBMIT_DIR + mpirun -np 8 vasp_std > vasp-out + #END_CUSTOMIZE_JOB_SCRIPT + #+------------------------------------------------------------------------------------------------------------------+ 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/VSEARCH/VSEARCH-2.28.1-GCC-10.2.0.eb b/easybuild/easyconfigs/v/VSEARCH/VSEARCH-2.28.1-GCC-10.2.0.eb new file mode 100644 index 00000000000..14ed6e6d975 --- /dev/null +++ b/easybuild/easyconfigs/v/VSEARCH/VSEARCH-2.28.1-GCC-10.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'VSEARCH' +version = '2.28.1' + +homepage = 'https://github.com/torognes/vsearch' +description = """VSEARCH supports de novo and reference based chimera detection, + clustering, full-length and prefix dereplication, rereplication, + reverse complementation, masking, all-vs-all pairwise global alignment, + exact and global alignment searching, shuffling, subsampling and sorting. + It also supports FASTQ file analysis, filtering, + conversion and merging of paired-end reads.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://github.com/torognes/vsearch/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4f8bf0ad43fef77e573d152b59f55a1f81eb84c22d6545911757e6108f8de21c'] + +builddependencies = [ + ('Autotools', '20200321'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), +] + +preconfigopts = './autogen.sh &&' + +configopts = '--disable-pdfman ' + +sanity_check_paths = { + 'files': ['bin/vsearch'], + 'dirs': [], +} + +sanity_check_commands = ['vsearch --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VTK/VTK-9.2.6-foss-2023a.eb b/easybuild/easyconfigs/v/VTK/VTK-9.2.6-foss-2023a.eb new file mode 100644 index 00000000000..5c6c6f7a122 --- /dev/null +++ b/easybuild/easyconfigs/v/VTK/VTK-9.2.6-foss-2023a.eb @@ -0,0 +1,98 @@ +## +# Authors:: +# * Fotis Georgatos +# * Robert Mijakovic +# Update: Pavel Tománek (Inuits) +## + +easyblock = 'CMakeNinja' + +name = 'VTK' +version = '9.2.6' + +homepage = 'https://www.vtk.org' +description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for + 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several + interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization + algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques + such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s'] +sources = [ + SOURCE_TAR_GZ, + '%(name)sData-%(version)s.tar.gz', +] +patches = [('vtk-version.egg-info', '.')] +checksums = [ + {'VTK-9.2.6.tar.gz': '06fc8d49c4e56f498c40fcb38a563ed8d4ec31358d0101e8988f0bb4d539dd12'}, + {'VTKData-9.2.6.tar.gz': '032c4b827173f859c898403d25360dc99409a4674559ad58f48828f23a6258b8'}, + {'vtk-version.egg-info': '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('XZ', '5.4.2'), + ('libGLU', '9.0.3'), + ('X11', '20230603'), + ('Qt5', '5.15.10'), +] + +separate_build_dir = True + +# OpenGL +configopts = "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include " +# Python +configopts += "-DVTK_WRAP_PYTHON=ON -DVTK_PYTHON_VERSION=3 -DVTK_PYTHON_OPTIONAL_LINK=OFF " +configopts += "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python3 " +configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s " +configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython%(pyshortver)s.so " +# Other +configopts += "-DVTK_USE_MPI=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib " +configopts += "-DVTK_QT_VERSION=5 " +configopts += "-DQt5_DIR=$EBROOTQT5 " +configopts += "-DVTK_MODULE_ENABLE_VTK_GuiSupportQt=YES " +configopts += "-DVTK_MODULE_ENABLE_VTK_ViewsQt=YES" + +preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " + +# Install a egg-info file so VTK is more python friendly, required for mayavi +local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info' +local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info' +postinstallcmds = [ + 'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest), +] + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +local_vtk_exec = ['vtk%s-%%(version_major_minor)s' % x + for x in ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +local_vtk_exec += ['vtkpython'] +local_vtk_libs = ['CommonCore', 'IONetCDF', 'ParallelCore', 'RenderingOpenGL2'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_vtk_exec] + ['include/vtk-%(version_major_minor)s/vtkMPI.h'] + + ['lib/libvtk%s-%%(version_major_minor)s.%s' % (l, SHLIB_EXT) for l in local_vtk_libs], + 'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'], +} + +sanity_check_commands = [ + "python -c 'import %(namelower)s'", + "python -c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'", + # make sure that VTK Python libraries link to libpython (controlled via DVTK_PYTHON_OPTIONAL_LINK=OFF), + # see https://gitlab.kitware.com/vtk/vtk/-/issues/17881 + "ldd $EBROOTVTK/lib/libvtkPythonContext2D-%%(version_major_minor)s.%s | grep /libpython" % SHLIB_EXT, +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb index 9278837da13..740fd888dfb 100644 --- a/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb +++ b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb @@ -2,6 +2,7 @@ # Authors:: # * Fotis Georgatos # * Robert Mijakovic +# Update: Pavel Tománek (Inuits) ## easyblock = 'CMakeNinja' @@ -42,6 +43,7 @@ dependencies = [ ('XZ', '5.4.2'), ('libGLU', '9.0.3'), ('X11', '20230603'), + ('Qt5', '5.15.10'), ] separate_build_dir = True @@ -57,7 +59,11 @@ configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython%(pyshortver)s.so " # Other configopts += "-DVTK_USE_MPI=ON " -configopts += "-DCMAKE_INSTALL_LIBDIR=lib" +configopts += "-DCMAKE_INSTALL_LIBDIR=lib " +configopts += "-DVTK_QT_VERSION=5 " +configopts += "-DQt5_DIR=$EBROOTQT5 " +configopts += "-DVTK_MODULE_ENABLE_VTK_GuiSupportQt=YES " +configopts += "-DVTK_MODULE_ENABLE_VTK_ViewsQt=YES" preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " diff --git a/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023b.eb b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023b.eb index 8a0452f863f..3be42a90bac 100644 --- a/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023b.eb +++ b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023b.eb @@ -42,6 +42,7 @@ dependencies = [ ('XZ', '5.4.4'), ('libGLU', '9.0.3'), ('X11', '20231019'), + ('Qt5', '5.15.13'), ] separate_build_dir = True @@ -57,7 +58,11 @@ configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython%(pyshortver)s.so " # Other configopts += "-DVTK_USE_MPI=ON " -configopts += "-DCMAKE_INSTALL_LIBDIR=lib" +configopts += "-DCMAKE_INSTALL_LIBDIR=lib " +configopts += "-DVTK_QT_VERSION=5 " +configopts += "-DQt5_DIR=$EBROOTQT5 " +configopts += "-DVTK_MODULE_ENABLE_VTK_GuiSupportQt=YES " +configopts += "-DVTK_MODULE_ENABLE_VTK_ViewsQt=YES" preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " 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/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb b/easybuild/easyconfigs/v/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..72cd90736a4 --- /dev/null +++ b/easybuild/easyconfigs/v/VirtualGL/VirtualGL-3.1.1-GCC-13.3.0.eb @@ -0,0 +1,47 @@ +# Contribution from the Crick HPC team +# uploaded by J. Sassmannshausen +# updated by Valentin Plugaru 2019-09-26 +# updated by Paul Melis 2022-10-07, 2023-08-18 + +easyblock = 'CMakeMake' + +name = 'VirtualGL' +version = '3.1.1' + +homepage = 'https://virtualgl.org/' +description = """VirtualGL is an open source toolkit that gives any Linux or +Unix remote display software the ability to run OpenGL applications with full +hardware acceleration.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/VirtualGL/virtualgl/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['79c0d76993814d9ed9fdc29908de1cc6da08f41931bc8363084fdfae03f53ce8'] +patches = [] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +dependencies = [ + ('libjpeg-turbo', '3.0.1'), + ('Mesa', '24.1.3'), + ('libGLU', '9.0.3'), + ('pocl', '6.0'), + ('X11', '20240607'), +] + +local_binaries = [ + 'cpustat', 'glreadtest', 'glxinfo', 'glxspheres64', 'nettest', 'tcbench', + 'vglclient', 'vglconfig', 'vglconnect', 'vglgenkey', 'vgllogin', 'vglrun', + 'vglserver_config' +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries], + 'dirs': ['lib64', 'share', 'include'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/Visit/Visit-3.4.1-foss-2023a.eb b/easybuild/easyconfigs/v/Visit/Visit-3.4.1-foss-2023a.eb new file mode 100644 index 00000000000..406d78fa312 --- /dev/null +++ b/easybuild/easyconfigs/v/Visit/Visit-3.4.1-foss-2023a.eb @@ -0,0 +1,64 @@ +easyblock = 'CMakeMake' + +name = 'Visit' +version = '3.4.1' + +homepage = 'https://github.com/visit-dav/visit' +description = """ +VisIt is an Open Source, interactive, scalable, visualization, animation +and analysis tool. From Unix, Windows or Mac workstations, users can +interactively visualize and analyze data ranging in scale from small +(<101 core) desktop-sized projects to large (>105 core) leadership-class +computing facility simulation campaigns. Users can quickly generate +visualizations, animate them through time, manipulate them with a +variety of operators and mathematical expressions, and save the +resulting images and animations for presentations. VisIt contains a rich +set of visualization features to enable users to view a wide variety of +data including scalar and vector fields defined on two- and +three-dimensional (2D and 3D) structured, adaptive and unstructured +meshes. Owing to its customizeable plugin design, VisIt is capabable of +visualizing data from over 120 different scientific data formats. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/visit-dav/visit/releases/download/v%(version)s/'] +sources = ['%(namelower)s%(version)s.tar.gz'] +checksums = ['942108cb294f4c9584a1628225b0be39c114c7e9e01805fb335d9c0b507689f5'] + +builddependencies = [('CMake', '3.26.3')] +dependencies = [ + ('zlib', '1.2.13'), + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('X11', '20230603'), + ('Mesa', '23.1.4'), + ('libglvnd', '1.6.0'), + ('Qt5', '5.15.10'), + ('Qwt', '6.3.0'), + # Visit-3.4.1 needs VTK-9.2.x (not 9.3.x) - https://github.com/visit-dav/visit/issues/19547 + ('VTK', '9.2.6'), + ('FFmpeg', '6.0'), +] + +configopts = "-DVISIT_ZLIB_DIR=$EBROOTZLIB " +configopts += "-DVISIT_VTK_DIR=$EBROOTVTK -DVISIT_VTK_VERSION=$EBVERSIONVTK " +configopts += "-DVISIT_QWT_DIR=$EBROOTQWT " +configopts += "-DVISIT_QT_VERSION=$EBVERSIONQT5 -DVISIT_QT_DIR=$EBROOTQT5 " +configopts += "-DVISIT_OSMESA_DIR=$EBROOTMESA " +configopts += "-DVISIT_MESAGL_DIR=$EBROOTLIBGLVND " +configopts += "-DPYTHON_DIR=$EBROOTPYTHON " +configopts += "-DVISIT_PYTHON_SKIP_INSTALL=ON " +configopts += "-DVISIT_PARALLEL=ON -DVISIT_MPI_COMPILER=$MPICC -DVISIT_MPI_COMPILER_CXX=$MPICXX " +configopts += "-DOpenGL_GL_PREFERENCE=GLVND " + +# add missing include to fix make step +prebuildopts = "sed -i '23 a #include ' %(builddir)s/%(namelower)s%(version)s/src/gui/QvisStripChart.C && " + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['frontendlauncher', 'frontendlauncher.py', 'visit']], + 'dirs': ['%(version)s/bin'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5c2cb573ca2 --- /dev/null +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-13.2.0.eb @@ -0,0 +1,43 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'Voro++' +version = '0.4.6' + +homepage = 'http://math.lbl.gov/voro++/' +description = """Voro++ is a software library for carrying out three-dimensional computations of the Voronoi +tessellation. A distinguishing feature of the Voro++ library is that it carries out cell-based calculations, +computing the Voronoi cell for each particle individually. It is particularly well-suited for applications that +rely on cell-based statistics, where features of Voronoi cells (eg. volume, centroid, number of faces) can be used +to analyze a system of particles.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] + +builddependencies = [('binutils', '2.40')] + + +# No configure +skipsteps = ['configure'] + +# Override CXX and CFLAGS variables from Makefile +buildopts = 'CXX="$CXX" CFLAGS="$CXXFLAGS"' + +# Override PREFIX variable from Makefile +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/voro++', 'lib/libvoro++.a', 'include/voro++/voro++.hh'], + 'dirs': [], +} + +moduleclass = 'math' 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..3ea3731df79 --- /dev/null +++ b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +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'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ab4e77dea46 --- /dev/null +++ b/easybuild/easyconfigs/v/versioningit/versioningit-3.1.2-GCCcore-13.3.0.eb @@ -0,0 +1,27 @@ +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.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] +dependencies = [('Python', '3.12.3')] + +sources = [SOURCE_TAR_GZ] +checksums = ['4db83ed99f56b07d83940bee3445ca46ca120d13b6b304cdb5fb44e5aa4edec0'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.23.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.23.1-GCCcore-12.3.0.eb index 122f3d8d6c8..c36c435d1da 100644 --- a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.23.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.23.1-GCCcore-12.3.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.11.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('distlib', '0.3.6', { diff --git a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb index a0b9921fb5c..2820042ba9d 100644 --- a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.11.5'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('distlib', '0.3.7', { diff --git a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.26.2-GCCcore-13.3.0.eb b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.26.2-GCCcore-13.3.0.eb index 9c6a84c5304..65f1ced6cae 100644 --- a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.26.2-GCCcore-13.3.0.eb +++ b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.26.2-GCCcore-13.3.0.eb @@ -18,11 +18,8 @@ dependencies = [ ('Python', '3.12.3'), ] -exts_default_options = { - 'download_dep_fail': True, - 'sanity_pip_check': True, - 'use_pip': True, -} +sanity_pip_check = True +use_pip = True exts_list = [ ('distlib', '0.3.8', { diff --git a/easybuild/easyconfigs/w/WEKA/WEKA-3.8.5-Java-11.eb b/easybuild/easyconfigs/w/WEKA/WEKA-3.8.5-Java-11.eb new file mode 100644 index 00000000000..a3db7b20d7e --- /dev/null +++ b/easybuild/easyconfigs/w/WEKA/WEKA-3.8.5-Java-11.eb @@ -0,0 +1,42 @@ +# 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 = "Tarball" + +name = 'WEKA' +version = '3.8.5' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'http://www.cs.waikato.ac.nz/ml/weka/index.html' +description = """ Weka is a collection of machine learning algorithms for data mining tasks. + The algorithms can either be applied directly to a dataset or called from your own Java code. + Weka contains tools for data pre-processing, classification, regression, clustering, + association rules, and visualization. It is also well-suited for developing new machine + learning schemes.""" + +toolchain = SYSTEM + +source_urls = ['http://prdownloads.sourceforge.net/weka/'] +sources = ['%s-%s.zip' % (name.lower(), version.replace('.', '-'))] +checksums = ['8eec27669cb6d23bcd844041189067281295d1616f45dabf09f816b093f9fb49'] + +dependencies = [('Java', '11')] + +sanity_check_paths = { + 'files': ['weka.jar'], + 'dirs': [] +} + +sanity_check_commands = [ + "java weka.Run -h", + "java weka.classifiers.trees.J48 -h", +] + +modextravars = {'WEKAINSTALL': '%(installdir)s'} + +modloadmsg = """Start WEKA GUI with `java -jar $EBROOTWEKA/weka.jar` +""" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index a8881dbe118..0dd0b641ceb 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -61,6 +61,10 @@ fix_perl_shebang_for = [ 'bashtime2csh.pl_lapw', ] +# skip running of serial/parallel benchmark, because links to download test_case.tar.gz and mpi-benchmark.tar.gz +# from http://www.wien2k.at/reg_user/benchmark/ that are used by WIEN2k easyblock are broken... +runtest = False + tests = [ # test case 1: NaCl ('NaCl', '-b', '-i 100', [r'^:DIS.*0.1', r'^:ENE.*-1248.1']), 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 new file mode 100644 index 00000000000..26e4b587a1f --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2024a.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': 'foss', 'version': '2024a'} +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', + '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" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' 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 new file mode 100644 index 00000000000..34d3457ccc4 --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-intel-2024a.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': 'intel', 'version': '2024a'} +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', + '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' + +local_executables = ['wannier90.x', 'postw90.x', 'w90chk2chk.x', 'w90spn2spn.x'] +files_to_copy = [(local_executables, 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_executables] + ['lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' 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/Whisper/Whisper-20231117-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/w/Whisper/Whisper-20231117-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..53a2aa183b1 --- /dev/null +++ b/easybuild/easyconfigs/w/Whisper/Whisper-20231117-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'Whisper' +version = '20231117' +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), +] + +use_pip = True + +exts_list = [ + ('openai-whisper', version, { + 'checksums': ['7af424181436f1800cc0b7d75cf40ede34e9ddf1ba4983a910832fcf4aade4a4'], + 'modulename': 'whisper', + }), +] + +sanity_check_paths = { + 'files': ['bin/whisper'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["whisper --help"] + +sanity_pip_check = True + +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 new file mode 100644 index 00000000000..b77e1abbaca --- /dev/null +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,63 @@ +# easyconfig file for waLBerla v6.1 +easyblock = 'CMakeMakeCp' + +name = 'waLBerla' +version = '6.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://walberla.net/index.html" +description = """Widely applicable Lattics-Boltzmann from Erlangen is a +block-structured high-performance framework for multiphysics simulations""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://i10git.cs.fau.de/walberla/walberla/-/archive/v6.1'] +sources = ['%(name)s-v%(version)s.tar.gz'] +patches = ['waLBerla-6.1_fix_cmakelist_for_easybuild_without_python.patch'] +checksums = [ + {'waLBerla-v6.1.tar.gz': 'f0acdd9ad6543bc9306c8aae953dd5065986271d4398916ae0469db8b21c007a'}, + {'waLBerla-6.1_fix_cmakelist_for_easybuild_without_python.patch': + 'e64927d85ed6ac4c52921c33c504d4f6e7038fd618c89cf7efdadbcf638a1048'}, +] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Boost.MPI', '1.82.0'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +parallel = 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'] + +configopts = "-DWALBERLA_BUILD_WITH_PYTHON=OFF " +configopts += "-DCMAKE_CUDA_ARCHITECTURES='%(cuda_cc_cmake)s' " +configopts += "-DWALBERLA_BUILD_WITH_CUDA=ON " +configopts += "-DWALBERLA_BUILD_SHOWCASES=OFF " +configopts += "-DWALBERLA_BUILD_DOC=OFF " +configopts += "-DWALBERLA_BUILD_BENCHMARKS=OFF" + + +files_to_copy = [ + (['%(builddir)s/easybuild_obj/*'], 'build'), + (['%(start_dir)s/src/*'], 'src'), +] + +sanity_check_paths = { + 'files': [ + 'build/src/waLBerlaDefinitions.h', + 'build/apps/tutorials/basics/01_Tutorial_BlocksAndFields1', + 'build/utilities/filterCompileCommands.py' + ], + 'dirs': ['src', 'build/apps', 'build/tests', 'build/utilities'] +} + +sanity_check_commands = [ + "mkdir -p %(builddir)s && cp -a %(installdir)s/build/apps/tutorials/lbm %(builddir)s/", + "cd %(builddir)s/lbm && chmod -R u+w . && ./01_BasicLBM 01_BasicLBM.prm", +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb new file mode 100644 index 00000000000..85f6371e807 --- /dev/null +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2023a.eb @@ -0,0 +1,56 @@ +# easyconfig file for waLBerla v6.1 +easyblock = 'CMakeMakeCp' + +name = 'waLBerla' +version = '6.1' + +homepage = "https://walberla.net/index.html" +description = """Widely applicable Lattics-Boltzmann from Erlangen is a +block-structured high-performance framework for multiphysics simulations""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://i10git.cs.fau.de/walberla/walberla/-/archive/v6.1'] +sources = ['%(name)s-v%(version)s.tar.gz'] +patches = ['waLBerla-6.1_fix_cmakelist_for_easybuild_without_python.patch'] +checksums = [ + {'waLBerla-v6.1.tar.gz': 'f0acdd9ad6543bc9306c8aae953dd5065986271d4398916ae0469db8b21c007a'}, + {'waLBerla-6.1_fix_cmakelist_for_easybuild_without_python.patch': + 'e64927d85ed6ac4c52921c33c504d4f6e7038fd618c89cf7efdadbcf638a1048'}, +] + +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Boost.MPI', '1.82.0'), +] + +parallel = 1 + +configopts = "-DWALBERLA_BUILD_WITH_PYTHON=OFF " +configopts += "-DWALBERLA_BUILD_SHOWCASES=OFF " +configopts += "-DWALBERLA_BUILD_DOC=OFF " +configopts += "-DWALBERLA_BUILD_BENCHMARKS=OFF" + + +files_to_copy = [ + (['%(builddir)s/easybuild_obj/*'], 'build'), + (['%(start_dir)s/src/*'], 'src'), +] + +sanity_check_paths = { + 'files': [ + 'build/src/waLBerlaDefinitions.h', + 'build/apps/tutorials/basics/01_Tutorial_BlocksAndFields1', + 'build/utilities/filterCompileCommands.py' + ], + 'dirs': ['src', 'build/apps', 'build/tests', 'build/utilities'] +} + +sanity_check_commands = [ + "mkdir -p %(builddir)s && cp -a %(installdir)s/build/apps/tutorials/lbm %(builddir)s/", + "cd %(builddir)s/lbm && chmod -R u+w . && ./01_BasicLBM 01_BasicLBM.prm", +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb b/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb index 878f6cc3f72..b8bf8eefb30 100644 --- a/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb @@ -9,13 +9,16 @@ tracking your machine learning experiments.""" toolchain = {'name': 'GCC', 'version': '12.3.0'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('Python-bundle-PyPI', '2023.06'), ('GitPython', '3.1.40'), ('PyYAML', '6.0'), ('protobuf-python', '4.24.0'), - ('hatchling', '1.18.0'), ] use_pip = True diff --git a/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb b/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb new file mode 100644 index 00000000000..f3b254591f5 --- /dev/null +++ b/easybuild/easyconfigs/w/worker/worker-1.6.13-iimpi-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'ConfigureMake' + +name = 'worker' +version = '1.6.13' + +homepage = 'https://github.com/gjbex/worker' +description = """The Worker framework has been developed to help deal with parameter exploration experiments + that would otherwise result in many jobs, forcing the user resort to scripting to retain her sanity; + see also https://vscentrum.be/neutral/documentation/cluster-doc/running-jobs/worker-framework.""" + +local_tcname = 'iimpi' +local_tcver = '2023a' +toolchain = {'name': local_tcname, 'version': local_tcver} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/gjbex/worker/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fixintel.patch'] +checksums = [ + 'b42b8566d82048c706427913c8f7edcd9f5892d61f190ce1f49e428113b7e1bc', # 1.6.13.tar.gz + 'c28bbc837ec5d6fb3390df668b06e0b5169ca31dede907336a2b0637c4a81504', # worker-1.6.13_fixintel.patch +] + +dependencies = [ + ('Perl', '5.36.1'), + ('Perl-bundle-CPAN', '5.36.1'), +] + +# adjust worker configuration file +# note: tweak this to your local setup +postinstallcmds = [ + 'sed -i "s/ cores_per_node = .*/ cores_per_node = 16/g" %(installdir)s/conf/worker.conf', + 'sed -i "s@ qsub = .*@ qsub = `which qsub`@g" %(installdir)s/conf/worker.conf', + 'sed -i "s/ email = .*/ email = hpc-support@example.com/g" %(installdir)s/conf/worker.conf', + 'sed -i "s/ unload_modules = .*/ unload_modules = %s/g" %%(installdir)s/conf/worker.conf' % (local_tcname), + 'sed -i "s@ mpi_module = .*@ mpi_module = %s/%s@g" %%(installdir)s/conf/worker.conf' % (local_tcname, local_tcver), + 'sed -i "s@ module_path = .*@ module_path = %(installdir)s/../../../modules/all@g" %(installdir)s/conf/worker.conf', + "echo PERL=\\'`which perl`\\' > %(installdir)s/conf/worker_perl.sh", +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['wcat', 'wconvert', 'wload', 'worker', 'wreduce', 'wresume', 'wsub', + 'wsummarize']], + 'dirs': ['lib/perl', 'lib/tt'], +} + +sanity_check_commands = ["wsub -help"] + +moduleclass = 'tools' 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..10f6d8cf5cf --- /dev/null +++ b/easybuild/easyconfigs/w/wrapt/wrapt-1.16.0-gfbf-2024a.eb @@ -0,0 +1,27 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/XCFun/XCFun-2.1.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..11a4eb62c8e --- /dev/null +++ b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-12.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'XCFun' +version = '2.1.1' + +homepage = 'https://xcfun.readthedocs.io' +description = """Arbitrary order exchange-correlation functional library""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/dftlibs/xcfun/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8b602df74c7be83d501532565deafd1b7881946d94789122f24c309a669298ab'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3') +] + +modextravars = {'XCFun_DIR': '%(installdir)s/share/cmake/XCFun/'} + +sanity_check_paths = { + 'files': ['lib/libxcfun.%s' % SHLIB_EXT], + 'dirs': ['include/XCFun'] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/x/XGBoost/XGBoost-2.1.1-gfbf-2023b.eb b/easybuild/easyconfigs/x/XGBoost/XGBoost-2.1.1-gfbf-2023b.eb new file mode 100644 index 00000000000..91e9be0529c --- /dev/null +++ b/easybuild/easyconfigs/x/XGBoost/XGBoost-2.1.1-gfbf-2023b.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'XGBoost' +version = '2.1.1' + +homepage = 'https://github.com/dmlc/xgboost' +description = """XGBoost is an optimized distributed gradient boosting library designed to be highly efficient, + flexible and portable.""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4b1729837f9f1ba88a32ef1be3f8efb860fee6454a68719b196dc88032c23d97'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-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/XZ/XZ-5.6.3-GCCcore-14.2.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.6.3-GCCcore-14.2.0.eb new file mode 100644 index 00000000000..388a4bb239c --- /dev/null +++ b/easybuild/easyconfigs/x/XZ/XZ-5.6.3-GCCcore-14.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'XZ' +version = '5.6.3' + +homepage = 'https://tukaani.org/xz/' +description = "xz: XZ utilities" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +source_urls = ['https://tukaani.org/xz/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['a95a49147b2dbb5487517acc0adcd77f9c2032cf00664eeae352405357d14a6c'] + +builddependencies = [ + # use gettext built with system toolchain as build dep to avoid cyclic dependency (XZ -> gettext -> libxml2 -> XZ) + ('gettext', '0.22.5', '', SYSTEM), + ('binutils', '2.42'), +] + +# may become useful in non-x86 archs +# configopts = ' --disable-assembler ' + +sanity_check_paths = { + 'files': ['bin/lzmainfo', 'bin/unxz', 'bin/xz'], + 'dirs': [] +} + +sanity_check_commands = [ + "xz --help", + "unxz --help", +] + +moduleclass = 'tools' 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/x264/x264-20240513-GCCcore-13.3.0.eb b/easybuild/easyconfigs/x/x264/x264-20240513-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..a2a4cccf421 --- /dev/null +++ b/easybuild/easyconfigs/x/x264/x264-20240513-GCCcore-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'x264' +version = '20240513' + +homepage = 'https://www.videolan.org/developers/x264.html' +description = """ + x264 is a free software library and application for encoding video streams + into the H.264/MPEG-4 AVC compression format, and is released under the + terms of the GNU GPL. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://code.videolan.org/videolan/%(name)s/-/archive/31e19f92/'] +sources = [{'download_filename': '%(name)s-4613ac3c.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['cf7e66bd0a75f3baba3502b58c80ee388b3d80a9a01be806337dd2214b8a290e'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('NASM', '2.16.03'), +] + +configopts = " --enable-shared --enable-static --disable-bashcompletion" + + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'include/x264_config.h', 'include/%(name)s.h', 'lib/libx264.a', 'lib/libx264.so'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/x265/x265-3.6-GCCcore-13.3.0.eb b/easybuild/easyconfigs/x/x265/x265-3.6-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fc9ad81c0cb --- /dev/null +++ b/easybuild/easyconfigs/x/x265/x265-3.6-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'x265' +version = '3.6' + +homepage = 'https://x265.org/' +description = """ + x265 is a free software library and application for encoding video streams + into the H.265 AVC compression format, and is released under the terms of + the GNU GPL. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://bitbucket.org/multicoreware/x265_git/downloads/'] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['663531f341c5389f460d730e62e10a4fcca3428ca2ca109693867bc5fe2e2807'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.29.3'), + ('Yasm', '1.3.0'), +] + +configopts = '-DGIT_ARCHETYPE=1 -DENABLE_PIC=ON' + +start_dir = 'source' + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'include/x265_config.h', 'include/%(name)s.h', 'lib/libx265.a', 'lib/libx265.so'], + 'dirs': [], +} + +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..c77c2e324ed --- /dev/null +++ b/easybuild/easyconfigs/x/xESMF/xESMF-0.8.6-foss-2023a.eb @@ -0,0 +1,47 @@ +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'), +] + +use_pip = True + +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, + }), +] + +sanity_pip_check = 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..66965fa2a54 --- /dev/null +++ b/easybuild/easyconfigs/x/xarray/xarray-2024.11.0-gfbf-2024a.eb @@ -0,0 +1,28 @@ +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'), +] + +use_pip = True +sanity_pip_check = True + +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/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb b/easybuild/easyconfigs/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb new file mode 100644 index 00000000000..c8454e53dbb --- /dev/null +++ b/easybuild/easyconfigs/x/xskillscore/xskillscore-0.0.26-foss-2023a.eb @@ -0,0 +1,37 @@ +easyblock = "PythonBundle" + +name = 'xskillscore' +version = '0.0.26' + +homepage = 'https://xskillscore.readthedocs.io' +description = """ +xskillscore is an open source project and Python package that provides verification metrics of +deterministic (and probabilistic from properscoring) forecasts with xarray. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('dask', '2023.9.2'), + ('SciPy-bundle', '2023.07'), + ('statsmodels', '0.14.1'), + ('xarray', '2023.9.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('properscoring', '0.1', { + 'checksums': ['b0cc4963cc218b728d6c5f77b3259c8f835ae00e32e82678cdf6936049b93961'], + }), + ('xhistogram', '0.3.2', { + 'checksums': ['56b0751e1469eaed81710f644c8ba5c574b51883baa2feee26a95f2f708f91a1'], + }), + (name, version, { + 'checksums': ['780a424c1ab3eedf526a45ba8e6cf6dca61b17339252115a4e25ea8c5833ada5'], + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.7.0-gfbf-2023a.eb b/easybuild/easyconfigs/x/xtb/xtb-6.7.0-gfbf-2023a.eb index 97ce290bfe0..81ee768fed0 100644 --- a/easybuild/easyconfigs/x/xtb/xtb-6.7.0-gfbf-2023a.eb +++ b/easybuild/easyconfigs/x/xtb/xtb-6.7.0-gfbf-2023a.eb @@ -11,7 +11,13 @@ toolchain = {'name': 'gfbf', 'version': '2023a'} github_account = 'grimme-lab' source_urls = [GITHUB_LOWER_SOURCE] sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] -checksums = ['9cf1997064d2d5bde7fae4cec6f873469602e6554872ad79de4079f022855ae2'] +patches = [ + 'xtb-6.7.0_fix-tblite-pr1072.patch' +] +checksums = [ + {'xtb-6.7.0.tar.gz': '9cf1997064d2d5bde7fae4cec6f873469602e6554872ad79de4079f022855ae2'}, + {'xtb-6.7.0_fix-tblite-pr1072.patch': 'cb8de869fc4a7c6bde44c61a479fc9edb3ccdc47c2a71f15ef124326f8a117e6'}, +] builddependencies = [ ('Meson', '1.1.1'), diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.7.0_fix-tblite-pr1072.patch b/easybuild/easyconfigs/x/xtb/xtb-6.7.0_fix-tblite-pr1072.patch new file mode 100644 index 00000000000..74e2ea4950e --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.7.0_fix-tblite-pr1072.patch @@ -0,0 +1,487 @@ +see https://github.com/grimme-lab/xtb/pull/1072 + https://github.com/grimme-lab/xtb/issues/1091 +diff -Naur xtb-6.7.0.orig/src/dipro/xtb.F90 xtb-6.7.0/src/dipro/xtb.F90 +--- xtb-6.7.0.orig/src/dipro/xtb.F90 2024-08-23 13:50:09.000345982 +0200 ++++ xtb-6.7.0/src/dipro/xtb.F90 2024-08-23 14:14:49.499145489 +0200 +@@ -50,11 +50,11 @@ + call fatal_error(error, "Unknown method '"//method//"' requested") + ! error stop + case("gfn2") +- call new_gfn2_calculator(xcalc, mol) ++ call new_gfn2_calculator(xcalc, mol, error) + case("gfn1") +- call new_gfn1_calculator(xcalc, mol) ++ call new_gfn1_calculator(xcalc, mol, error) + case("ipea1") +- call new_ipea1_calculator(xcalc, mol) ++ call new_ipea1_calculator(xcalc, mol, error) + end select + end subroutine get_calculator + #endif +diff -Naur xtb-6.7.0.orig/src/dipro.F90 xtb-6.7.0/src/dipro.F90 +--- xtb-6.7.0.orig/src/dipro.F90 2024-08-23 13:50:08.996896000 +0200 ++++ xtb-6.7.0/src/dipro.F90 2024-08-23 13:55:44.571958738 +0200 +@@ -130,6 +130,10 @@ + !=========================set up calculator=========================================== + + call get_calculator(xcalc, struc, tblite%method, error) ++ if (allocated(error)) then ++ call env%error(error%message, source) ++ return ++ end if + call new_wavefunction(wfn, struc%nat, xcalc%bas%nsh, xcalc%bas%nao, & + & 1, set%etemp * ktoau) + wfn%nspin=1 +@@ -258,6 +262,10 @@ + write(*,'(A,I2)') "unpaired e- of fragment : ", mfrag(ifr)%uhf + + call get_calculator(fcalc(ifr), mfrag(ifr), tblite%method, error) ++ if (allocated(error)) then ++ call env%error(error%message, source) ++ return ++ end if + !> mol%charge is updated automatically from wfn by tblite library + call new_wavefunction(wfx(ifr), mfrag(ifr)%nat, fcalc(ifr)%bas%nsh, fcalc(ifr)%bas%nao, & + & 1, set%etemp * ktoau) +diff -Naur xtb-6.7.0.orig/src/tblite/calculator.F90 xtb-6.7.0/src/tblite/calculator.F90 +--- xtb-6.7.0.orig/src/tblite/calculator.F90 2024-08-23 13:50:09.192101000 +0200 ++++ xtb-6.7.0/src/tblite/calculator.F90 2024-08-23 14:18:13.034251635 +0200 +@@ -144,11 +144,11 @@ + case default + call fatal_error(error, "Unknown method '"//method//"' requested") + case("gfn2") +- call new_gfn2_calculator(calc%tblite, struc) ++ call new_gfn2_calculator(calc%tblite, struc, error) + case("gfn1") +- call new_gfn1_calculator(calc%tblite, struc) ++ call new_gfn1_calculator(calc%tblite, struc, error) + case("ipea1") +- call new_ipea1_calculator(calc%tblite, struc) ++ call new_ipea1_calculator(calc%tblite, struc, error) + end select + end if + if (allocated(error)) then +diff -Naur xtb-6.7.0.orig/subprojects/mstore.wrap xtb-6.7.0/subprojects/mstore.wrap +--- xtb-6.7.0.orig/subprojects/mstore.wrap 2024-08-23 13:50:09.235197230 +0200 ++++ xtb-6.7.0/subprojects/mstore.wrap 2024-08-23 14:18:50.314014066 +0200 +@@ -1,4 +1,4 @@ + [wrap-git] + directory = mstore + url = https://github.com/grimme-lab/mstore +-revision = v0.2.0 ++revision = v0.3.0 +diff -Naur xtb-6.7.0.orig/test/unit/test_ptb.F90 xtb-6.7.0/test/unit/test_ptb.F90 +--- xtb-6.7.0.orig/test/unit/test_ptb.F90 2024-08-23 13:50:09.260760000 +0200 ++++ xtb-6.7.0/test/unit/test_ptb.F90 2024-08-23 14:34:18.302090669 +0200 +@@ -186,12 +186,37 @@ + !> (Scaled) overlap matrix + character(len=:), allocatable :: message + real(wp), parameter :: overlap_exp(6) = [ & +- & 0.93209460_wp, & ! 1,2 +- & 0.35489609_wp, & ! 1,3 +- & 0.65682608_wp, & ! 2,3 +- & 0.05627743_wp, & ! 1,15 +- & -0.14217162_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.41844087_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.93209460_wp, & ! s(Mg)-s(Mg) ++ & 0.35489609_wp, & ! s(Mg)-s(Mg) ++ & 0.65682608_wp, & ! s(Mg)-s(Mg) ++ & 0.05627743_wp, & ! s(Mg)-s(H) ++ & -0.14217162_wp, & ! s(Mg)-pz(H) ++ & 0.41844087_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -215,7 +240,7 @@ + call check_(error, ints%overlap(2, 3), overlap_exp(3), thr=thr) + call check_(error, ints%overlap(1, 15), overlap_exp(4), thr=thr) + call check_(error, ints%overlap(1, 23), overlap_exp(5), thr=thr) +- call check_(error, ints%overlap(12, 22), overlap_exp(6), thr=thr) ++ call check_(error, ints%overlap(11, 22), overlap_exp(6), thr=thr) + + end subroutine test_ptb_overlap + +@@ -249,12 +274,37 @@ + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: overlap_exp(6) = [ & +- & 0.95689468_wp, & ! 1,2 +- & 0.39195790_wp, & ! 1,3 +- & 0.62961212_wp, & ! 2,3 +- & 0.03782850_wp, & ! 1,15 +- &-0.13826216_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.43334922_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.95689468_wp, & ! s(Mg)-s(Mg) ++ & 0.39195790_wp, & ! s(Mg)-s(Mg) ++ & 0.62961212_wp, & ! s(Mg)-s(Mg) ++ & 0.03782850_wp, & ! s(Mg)-s(H) ++ &-0.13826216_wp, & ! s(Mg)-pz(H) ++ & 0.43334922_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -286,7 +336,7 @@ + & message=message) + call check_(error, auxints%overlap_h0_1(1, 23), overlap_exp(5), thr=thr, & + & message=message) +- call check_(error, auxints%overlap_h0_1(12, 22), overlap_exp(6), thr=thr, & ++ call check_(error, auxints%overlap_h0_1(11, 22), overlap_exp(6), thr=thr, & + & message=message) + + end subroutine test_ptb_overlap_h0 +@@ -319,12 +369,37 @@ + real(wp), allocatable :: overlap_sx(:, :), overlap_oneminusx(:, :) + character(len=:), allocatable :: message + real(wp), parameter :: overlap_oneminusx_exp(6) = [ & +- & 0.70788_wp, & ! 1,2 +- & 0.16203_wp, & ! 1,3 +- & 0.41532_wp, & ! 2,3 +- & 0.01449_wp, & ! 1,15 +- &-0.07203_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.28751_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.70788_wp, & ! s(Mg)-s(Mg) ++ & 0.16203_wp, & ! s(Mg)-s(Mg) ++ & 0.41532_wp, & ! s(Mg)-s(Mg) ++ & 0.01449_wp, & ! s(Mg)-s(H) ++ &-0.07203_wp, & ! s(Mg)-pz(H) ++ & 0.28751_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -356,7 +431,7 @@ + & message=message) + call check_(error, overlap_oneminusx(1, 23), overlap_oneminusx_exp(5), thr=thr2, & + & message=message) +- call check_(error, overlap_oneminusx(12, 22), overlap_oneminusx_exp(6), thr=thr2, & ++ call check_(error, overlap_oneminusx(11, 22), overlap_oneminusx_exp(6), thr=thr2, & + & message=message) + + end subroutine test_ptb_overlap_SX +@@ -392,10 +467,37 @@ + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: vecp_ref(4) = [ & +- & 0.077719_wp, & ! 1,1 ; diffferent because of tblite ordering +- & -0.059122_wp, & ! 1,3 ; diffferent because of tblite ordering +- & 0.052775_wp, & ! 3,5 ; diffferent because of tblite ordering +- & 0.117176_wp] ! 9,9 ; diffferent because of tblite ordering ++ & 0.077719_wp, & ! s(B)-s(B) ++ & -0.059122_wp, & ! s(B)-px(B) ++ & 0.052775_wp, & ! px(B)-px(B) ++ & 0.117176_wp] ! dx2-y2(B)-dx2-y2(B) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: xyz(3, 2) = reshape([ & + & 2.0_wp, 0.0_wp, 0.0_wp, & + & 0.0_wp, 0.0_wp, 0.0_wp], [3, 2]) +@@ -434,7 +536,7 @@ + & message=message) + call check_(error, vecp(5, 8), vecp_ref(3), thr=thr2, & + & message=message) +- call check_(error, vecp(12, 12), vecp_ref(4), thr=thr2, & ++ call check_(error, vecp(13, 13), vecp_ref(4), thr=thr2, & + & message=message) + end subroutine test_ptb_V_ECP + +@@ -629,12 +731,39 @@ + real(wp), allocatable :: vecp(:, :) + + real(wp), parameter :: h0_ref(6) = [ & +- & -1.59330281_wp, & ! 1,1 +- & -2.24996207_wp, & ! 1,2 +- & 0.34974782_wp, & ! 1,23 ; diffferent because of tblite ordering +- & 0.0_wp, & ! 7,11 ; different because of tblite ordering +- & -1.17757007_wp, & ! 3,6 ; different because of tblite ordering +- & 0.48301561_wp] ! 11,24 ; diffferent because of tblite ordering ++ & -1.59330281_wp, & ! s(B)-s(B) ++ & -2.24996207_wp, & ! s(B)-s(B) ++ & 0.34974782_wp, & ! s(B)-py(Cl) ++ & 0.0_wp, & ! dx2-y2(B)-py(B) ++ & -1.17757007_wp, & ! px(B)-px(B) ++ & 0.48301561_wp] ! dxy(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: levels(10) = [ & + & -0.796651404_wp, & + & -0.269771638_wp, & +@@ -670,10 +799,10 @@ + message = "H0 matrix element not matching to expected value." + call check_(error, ints%hamiltonian(1, 1), h0_ref(1), thr=thr) + call check_(error, ints%hamiltonian(1, 2), h0_ref(2), thr=thr) +- call check_(error, ints%hamiltonian(1, 22), h0_ref(3), thr=thr) ++ call check_(error, ints%hamiltonian(1, 24), h0_ref(3), thr=thr) + call check_(error, ints%hamiltonian(13, 6), h0_ref(4), thr=thr) + call check_(error, ints%hamiltonian(8, 5), h0_ref(5), thr=thr) +- call check_(error, ints%hamiltonian(13, 26), h0_ref(6), thr=thr) ++ call check_(error, ints%hamiltonian(9, 22), h0_ref(6), thr=thr) + end subroutine test_ptb_hamiltonian_h0 + + subroutine test_ptb_V_XC(error) +@@ -708,10 +837,37 @@ + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: Vxc_ref(4) = [ & +- & -0.92793357_wp, & ! 1,1 +- & -0.85981333_wp, & ! 1,2 +- & 0.06632750_wp, & ! 1,23 ; diffferent because of tblite ordering +- & 0.00151880_wp] ! 11,24 ; diffferent because of tblite ordering ++ & -0.92793357_wp, & ! s(B)-s(B) ++ & -0.85981333_wp, & ! s(B)-s(B) ++ & 0.06632750_wp, & ! s(B)-dz2(Cl) ++ & 0.00151880_wp] ! dxy(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: xyz(3, 2) = reshape([ & + & 2.0_wp, 0.0_wp, 0.0_wp, & + & 0.0_wp, 0.0_wp, 0.0_wp], [3, 2]) +@@ -769,9 +925,9 @@ + & message=message) + call check_(error, Vxc(1, 2), Vxc_ref(2), thr=thr, & + & message=message) +- call check_(error, Vxc(1, 22), Vxc_ref(3), thr=thr, & ++ call check_(error, Vxc(1, 24), Vxc_ref(3), thr=thr, & + & message=message) +- call check_(error, Vxc(13, 26), Vxc_ref(4), thr=thr, & ++ call check_(error, Vxc(9, 22), Vxc_ref(4), thr=thr, & + & message=message) + + end subroutine test_ptb_V_XC +@@ -957,10 +1113,35 @@ + !> Conversion factor from temperature to energy + real(wp), parameter :: kt = 3.166808578545117e-06_wp + real(wp), parameter :: coulomb_pot_ref(4) = [ & +- & -0.05693153_wp, & ! 1,1 +- & -0.33917531_wp, & ! 1,2 +- & -0.00539212_wp, & ! 1,21 ; diffferent because of tblite ordering +- & 0.01305793_wp] ! 6,24 ; diffferent because of tblite ordering ++ & -0.05693153_wp, & ! s(Mg)-s(Mg) ++ & -0.33917531_wp, & ! s(Mg)-s(Mg) ++ & -0.00539212_wp, & ! s(Mg)-s(H) ++ & 0.01305793_wp] ! pz(Mg)-pz(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -1044,10 +1225,36 @@ + integer, parameter :: nat = 2 + integer, parameter :: at(nat) = [5, 17] + real(wp), parameter :: plusU_pot_ref(4) = [ & +- & -0.0023185_wp, & ! 1,1 +- & -0.0018289_wp, & ! 1,2 +- & -0.5266562_wp, & ! 1,21 ; diffferent because of tblite ordering +- & -1.6745659_wp] ! 6,24 ; diffferent because of tblite ordering ++ & -0.0023185_wp, & ! s(B)-s(B) ++ & -0.0018289_wp, & ! s(B)-s(B) ++ & -0.5266562_wp, & ! s(B)-pz(Cl) ++ & -1.6745659_wp] ! px(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) + + call new(mol, at, xyz) + allocate (ptbData) +@@ -1067,7 +1274,7 @@ + call check_(error, wfn%coeff(1, 1, 1), plusU_pot_ref(1), thr=thr) + call check_(error, wfn%coeff(1, 2, 1), plusU_pot_ref(2), thr=thr) + call check_(error, wfn%coeff(1, 20, 1), plusU_pot_ref(3), thr=thr) +- call check_(error, wfn%coeff(8, 26, 1), plusU_pot_ref(4), thr=thr) ++ call check_(error, wfn%coeff(8, 22, 1), plusU_pot_ref(4), thr=thr) + + end subroutine test_ptb_plus_U_potential + diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.7.1-gfbf-2023b.eb b/easybuild/easyconfigs/x/xtb/xtb-6.7.1-gfbf-2023b.eb new file mode 100644 index 00000000000..09d459d356b --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.7.1-gfbf-2023b.eb @@ -0,0 +1,50 @@ +easyblock = 'MesonNinja' + +name = 'xtb' +version = '6.7.1' + +homepage = 'https://xtb-docs.readthedocs.io' +description = """ xtb - An extended tight-binding semi-empirical program package. """ + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +patches = [ + 'xtb-6.7.1_fix-tblite-pr1072.patch', + 'xtb-6.7.1_fix-dftd4-test.patch', +] +checksums = [ + {'xtb-6.7.1.tar.gz': '52506a689147cdb4695bf1c666158b6d6d6b31726fecaa5bf53af7f4e3f3d20d'}, + {'xtb-6.7.1_fix-tblite-pr1072.patch': '1f10fef3e94c29926b1f632acc94c3ec92be861ee5c5139104194172726ffe68'}, + {'xtb-6.7.1_fix-dftd4-test.patch': '340e7d5cbc6bbaf0c53d4d292f3624cd67455b7a817818fe2cc8d26f5c34864b'}, +] + +builddependencies = [ + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), +] + +configopts = "-Dlapack='custom' " +configopts += "-Dcustom_libraries='flexiblas' " +configopts += "--buildtype release " + +runtest = 'meson' +pretestopts = 'export OMP_NUM_THREADS=2 && ' +testopts = 'test -C %(builddir)s/easybuild_obj -t 60' # Ensure test don't timeout + +sanity_check_paths = { + 'files': ['bin/xtb', 'include/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], + 'dirs': ['share'], +} + +sanity_check_commands = ["xtb --help"] + +modextravars = { + 'XTBHOME': '%(installdir)s', + 'XTBPATH': '%(installdir)s', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-dftd4-test.patch b/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-dftd4-test.patch new file mode 100644 index 00000000000..0405b372a8a --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-dftd4-test.patch @@ -0,0 +1,20 @@ +fix for failing xtb test: + 72/148 dftd4 / param FAIL 1.85s exit status 1 + +from meson-logs/testlog.txt: +# Testing: param + Starting rational-damping ... (1/1) + ... rational-damping [FAILED] + Message: Condition not fullfilled + +see https://github.com/grimme-lab/xtb/pull/1085 +diff --git a/subprojects/dftd4.wrap b/subprojects/dftd4.wrap +index 46dc07ad9..e3e93f459 100644 +--- a/subprojects/dftd4.wrap ++++ b/subprojects/dftd4.wrap +@@ -1,4 +1,4 @@ + [wrap-git] + directory = dftd4 + url = https://github.com/dftd4/dftd4 +-revision = v3.5.0 ++revision = v3.6.0 diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-tblite-pr1072.patch b/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-tblite-pr1072.patch new file mode 100644 index 00000000000..0684569d3e4 --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.7.1_fix-tblite-pr1072.patch @@ -0,0 +1,528 @@ +see https://github.com/grimme-lab/xtb/pull/1072 + https://github.com/grimme-lab/xtb/issues/1091 +diff --git a/src/dipro.F90 b/src/dipro.F90 +index 42a136364..ab64e0710 100644 +--- a/src/dipro.F90 ++++ b/src/dipro.F90 +@@ -130,6 +130,10 @@ subroutine get_jab(env, tblite, mol, fragment, dipro) + !=========================set up calculator=========================================== + + call get_calculator(xcalc, struc, tblite%method, error) ++ if (allocated(error)) then ++ call env%error(error%message, source) ++ return ++ end if + call new_wavefunction(wfn, struc%nat, xcalc%bas%nsh, xcalc%bas%nao, & + & 1, set%etemp * ktoau) + wfn%nspin=1 +@@ -258,6 +262,10 @@ subroutine get_jab(env, tblite, mol, fragment, dipro) + write(*,'(A,I2)') "unpaired e- of fragment : ", mfrag(ifr)%uhf + + call get_calculator(fcalc(ifr), mfrag(ifr), tblite%method, error) ++ if (allocated(error)) then ++ call env%error(error%message, source) ++ return ++ end if + !> mol%charge is updated automatically from wfn by tblite library + call new_wavefunction(wfx(ifr), mfrag(ifr)%nat, fcalc(ifr)%bas%nsh, fcalc(ifr)%bas%nao, & + & 1, set%etemp * ktoau) +diff --git a/src/dipro/xtb.F90 b/src/dipro/xtb.F90 +index 95aff7848..4db948a3e 100644 +--- a/src/dipro/xtb.F90 ++++ b/src/dipro/xtb.F90 +@@ -50,11 +50,11 @@ subroutine get_calculator(xcalc, mol, method, error) + call fatal_error(error, "Unknown method '"//method//"' requested") + ! error stop + case("gfn2") +- call new_gfn2_calculator(xcalc, mol) ++ call new_gfn2_calculator(xcalc, mol, error) + case("gfn1") +- call new_gfn1_calculator(xcalc, mol) ++ call new_gfn1_calculator(xcalc, mol, error) + case("ipea1") +- call new_ipea1_calculator(xcalc, mol) ++ call new_ipea1_calculator(xcalc, mol, error) + end select + end subroutine get_calculator + #endif +diff --git a/src/tblite/calculator.F90 b/src/tblite/calculator.F90 +index 653e6b285..f05087414 100644 +--- a/src/tblite/calculator.F90 ++++ b/src/tblite/calculator.F90 +@@ -150,16 +150,16 @@ subroutine newTBLiteCalculator(env, mol, calc, input) + case default + call fatal_error(error, "Unknown method '"//method//"' requested") + case("gfn2") +- call new_gfn2_calculator(calc%tblite, struc) ++ call new_gfn2_calculator(calc%tblite, struc, error) + case("gfn1") +- call new_gfn1_calculator(calc%tblite, struc) ++ call new_gfn1_calculator(calc%tblite, struc, error) + case("ipea1") +- call new_ipea1_calculator(calc%tblite, struc) ++ call new_ipea1_calculator(calc%tblite, struc, error) + case("ceh") + calc%guess = method + calc%nspin = 1 +- calc%etemp = 5000.0_wp * kt +- call new_ceh_calculator(calc%tblite, struc) ++ calc%etemp = 4000.0_wp * kt ++ call new_ceh_calculator(calc%tblite, struc, error) + end select + end if + if (allocated(error)) then +@@ -244,18 +244,18 @@ subroutine newTBLiteWavefunction(env, mol, calc, chk) + block + use tblite_context, only : context_type, context_terminal + use tblite_context_terminal, only : escape +- use tblite_ceh_singlepoint, only : ceh_guess ++ use tblite_ceh_singlepoint, only : ceh_singlepoint + use tblite_lapack_solver, only : lapack_solver + use tblite_lapack_solver, only : lapack_algorithm + type(context_type) :: ctx +- ++ + ctx%solver = lapack_solver(lapack_algorithm%gvd) + ctx%terminal = context_terminal(calc%color) + + write (env%unit, '(1x,a)') escape(ctx%terminal%cyan) // "Calculation of CEH charges" // & + & escape(ctx%terminal%reset) +- +- call ceh_guess(ctx, calc%tblite, struc, error, wfn, calc%accuracy, 1) ++ ++ call ceh_singlepoint(ctx, calc%tblite, struc, wfn, calc%accuracy, 1) + end block + end select + end associate +diff --git a/subprojects/mstore.wrap b/subprojects/mstore.wrap +index acf5df9de..0dfe716c0 100644 +--- a/subprojects/mstore.wrap ++++ b/subprojects/mstore.wrap +@@ -1,4 +1,4 @@ + [wrap-git] + directory = mstore + url = https://github.com/grimme-lab/mstore +-revision = v0.2.0 ++revision = v0.3.0 +diff --git a/test/unit/test_ptb.F90 b/test/unit/test_ptb.F90 +index 16c14cbe4..5e585f90d 100644 +--- a/test/unit/test_ptb.F90 ++++ b/test/unit/test_ptb.F90 +@@ -186,12 +186,37 @@ subroutine test_ptb_overlap(error) + !> (Scaled) overlap matrix + character(len=:), allocatable :: message + real(wp), parameter :: overlap_exp(6) = [ & +- & 0.93209460_wp, & ! 1,2 +- & 0.35489609_wp, & ! 1,3 +- & 0.65682608_wp, & ! 2,3 +- & 0.05627743_wp, & ! 1,15 +- & -0.14217162_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.41844087_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.93209460_wp, & ! s(Mg)-s(Mg) ++ & 0.35489609_wp, & ! s(Mg)-s(Mg) ++ & 0.65682608_wp, & ! s(Mg)-s(Mg) ++ & 0.05627743_wp, & ! s(Mg)-s(H) ++ & -0.14217162_wp, & ! s(Mg)-pz(H) ++ & 0.41844087_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -215,7 +240,7 @@ subroutine test_ptb_overlap(error) + call check_(error, ints%overlap(2, 3), overlap_exp(3), thr=thr) + call check_(error, ints%overlap(1, 15), overlap_exp(4), thr=thr) + call check_(error, ints%overlap(1, 23), overlap_exp(5), thr=thr) +- call check_(error, ints%overlap(12, 22), overlap_exp(6), thr=thr) ++ call check_(error, ints%overlap(11, 22), overlap_exp(6), thr=thr) + + end subroutine test_ptb_overlap + +@@ -249,12 +274,37 @@ subroutine test_ptb_overlap_h0(error) + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: overlap_exp(6) = [ & +- & 0.95689468_wp, & ! 1,2 +- & 0.39195790_wp, & ! 1,3 +- & 0.62961212_wp, & ! 2,3 +- & 0.03782850_wp, & ! 1,15 +- &-0.13826216_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.43334922_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.95689468_wp, & ! s(Mg)-s(Mg) ++ & 0.39195790_wp, & ! s(Mg)-s(Mg) ++ & 0.62961212_wp, & ! s(Mg)-s(Mg) ++ & 0.03782850_wp, & ! s(Mg)-s(H) ++ &-0.13826216_wp, & ! s(Mg)-pz(H) ++ & 0.43334922_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -286,7 +336,7 @@ subroutine test_ptb_overlap_h0(error) + & message=message) + call check_(error, auxints%overlap_h0_1(1, 23), overlap_exp(5), thr=thr, & + & message=message) +- call check_(error, auxints%overlap_h0_1(12, 22), overlap_exp(6), thr=thr, & ++ call check_(error, auxints%overlap_h0_1(11, 22), overlap_exp(6), thr=thr, & + & message=message) + + end subroutine test_ptb_overlap_h0 +@@ -319,12 +369,37 @@ subroutine test_ptb_overlap_SX(error) + real(wp), allocatable :: overlap_sx(:, :), overlap_oneminusx(:, :) + character(len=:), allocatable :: message + real(wp), parameter :: overlap_oneminusx_exp(6) = [ & +- & 0.70788_wp, & ! 1,2 +- & 0.16203_wp, & ! 1,3 +- & 0.41532_wp, & ! 2,3 +- & 0.01449_wp, & ! 1,15 +- &-0.07203_wp, & ! 1,24; diffferent because of tblite ordering +- & 0.28751_wp] ! 14,23; diffferent because of tblite ordering ++ & 0.70788_wp, & ! s(Mg)-s(Mg) ++ & 0.16203_wp, & ! s(Mg)-s(Mg) ++ & 0.41532_wp, & ! s(Mg)-s(Mg) ++ & 0.01449_wp, & ! s(Mg)-s(H) ++ &-0.07203_wp, & ! s(Mg)-pz(H) ++ & 0.28751_wp] ! dyz(Mg)-py(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -356,7 +431,7 @@ subroutine test_ptb_overlap_SX(error) + & message=message) + call check_(error, overlap_oneminusx(1, 23), overlap_oneminusx_exp(5), thr=thr2, & + & message=message) +- call check_(error, overlap_oneminusx(12, 22), overlap_oneminusx_exp(6), thr=thr2, & ++ call check_(error, overlap_oneminusx(11, 22), overlap_oneminusx_exp(6), thr=thr2, & + & message=message) + + end subroutine test_ptb_overlap_SX +@@ -392,10 +467,37 @@ subroutine test_ptb_V_ECP(error) + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: vecp_ref(4) = [ & +- & 0.077719_wp, & ! 1,1 ; diffferent because of tblite ordering +- & -0.059122_wp, & ! 1,3 ; diffferent because of tblite ordering +- & 0.052775_wp, & ! 3,5 ; diffferent because of tblite ordering +- & 0.117176_wp] ! 9,9 ; diffferent because of tblite ordering ++ & 0.077719_wp, & ! s(B)-s(B) ++ & -0.059122_wp, & ! s(B)-px(B) ++ & 0.052775_wp, & ! px(B)-px(B) ++ & 0.117176_wp] ! dx2-y2(B)-dx2-y2(B) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: xyz(3, 2) = reshape([ & + & 2.0_wp, 0.0_wp, 0.0_wp, & + & 0.0_wp, 0.0_wp, 0.0_wp], [3, 2]) +@@ -434,7 +536,7 @@ subroutine test_ptb_V_ECP(error) + & message=message) + call check_(error, vecp(5, 8), vecp_ref(3), thr=thr2, & + & message=message) +- call check_(error, vecp(12, 12), vecp_ref(4), thr=thr2, & ++ call check_(error, vecp(13, 13), vecp_ref(4), thr=thr2, & + & message=message) + end subroutine test_ptb_V_ECP + +@@ -629,12 +731,39 @@ subroutine test_ptb_hamiltonian_h0(error) + real(wp), allocatable :: vecp(:, :) + + real(wp), parameter :: h0_ref(6) = [ & +- & -1.59330281_wp, & ! 1,1 +- & -2.24996207_wp, & ! 1,2 +- & 0.34974782_wp, & ! 1,23 ; diffferent because of tblite ordering +- & 0.0_wp, & ! 7,11 ; different because of tblite ordering +- & -1.17757007_wp, & ! 3,6 ; different because of tblite ordering +- & 0.48301561_wp] ! 11,24 ; diffferent because of tblite ordering ++ & -1.59330281_wp, & ! s(B)-s(B) ++ & -2.24996207_wp, & ! s(B)-s(B) ++ & 0.34974782_wp, & ! s(B)-py(Cl) ++ & 0.0_wp, & ! dx2-y2(B)-py(B) ++ & -1.17757007_wp, & ! px(B)-px(B) ++ & 0.48301561_wp] ! dxy(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: levels(10) = [ & + & -0.796651404_wp, & + & -0.269771638_wp, & +@@ -665,15 +794,16 @@ subroutine test_ptb_hamiltonian_h0(error) + & alpha_scal=id_to_atom(mol, ptbData%hamiltonian%kalphah0l)) + allocate (vecp(bas%nao, bas%nao), source=0.0_wp) + ++ ints%hamiltonian = 0.0_wp + call get_hamiltonian(mol, list, bas, ptbData%hamiltonian, ptbData%hamiltonian%kla, auxints%overlap_h0_1, & + & levels, ints%hamiltonian, ptbGlobals%kpol, ptbGlobals%kitr, ptbGlobals%kitocod) + message = "H0 matrix element not matching to expected value." + call check_(error, ints%hamiltonian(1, 1), h0_ref(1), thr=thr) + call check_(error, ints%hamiltonian(1, 2), h0_ref(2), thr=thr) +- call check_(error, ints%hamiltonian(1, 22), h0_ref(3), thr=thr) ++ call check_(error, ints%hamiltonian(1, 24), h0_ref(3), thr=thr) + call check_(error, ints%hamiltonian(13, 6), h0_ref(4), thr=thr) + call check_(error, ints%hamiltonian(8, 5), h0_ref(5), thr=thr) +- call check_(error, ints%hamiltonian(13, 26), h0_ref(6), thr=thr) ++ call check_(error, ints%hamiltonian(9, 22), h0_ref(6), thr=thr) + end subroutine test_ptb_hamiltonian_h0 + + subroutine test_ptb_V_XC(error) +@@ -708,10 +838,37 @@ subroutine test_ptb_V_XC(error) + type(error_type), allocatable, intent(out) :: error + character(len=:), allocatable :: message + real(wp), parameter :: Vxc_ref(4) = [ & +- & -0.92793357_wp, & ! 1,1 +- & -0.85981333_wp, & ! 1,2 +- & 0.06632750_wp, & ! 1,23 ; diffferent because of tblite ordering +- & 0.00151880_wp] ! 11,24 ; diffferent because of tblite ordering ++ & -0.92793357_wp, & ! s(B)-s(B) ++ & -0.85981333_wp, & ! s(B)-s(B) ++ & 0.06632750_wp, & ! s(B)-dz2(Cl) ++ & 0.00151880_wp] ! dxy(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) ++ + real(wp), parameter :: xyz(3, 2) = reshape([ & + & 2.0_wp, 0.0_wp, 0.0_wp, & + & 0.0_wp, 0.0_wp, 0.0_wp], [3, 2]) +@@ -769,9 +926,9 @@ subroutine test_ptb_V_XC(error) + & message=message) + call check_(error, Vxc(1, 2), Vxc_ref(2), thr=thr, & + & message=message) +- call check_(error, Vxc(1, 22), Vxc_ref(3), thr=thr, & ++ call check_(error, Vxc(1, 24), Vxc_ref(3), thr=thr, & + & message=message) +- call check_(error, Vxc(13, 26), Vxc_ref(4), thr=thr, & ++ call check_(error, Vxc(9, 22), Vxc_ref(4), thr=thr, & + & message=message) + + end subroutine test_ptb_V_XC +@@ -957,10 +1114,35 @@ subroutine test_ptb_coulomb_potential(error) + !> Conversion factor from temperature to energy + real(wp), parameter :: kt = 3.166808578545117e-06_wp + real(wp), parameter :: coulomb_pot_ref(4) = [ & +- & -0.05693153_wp, & ! 1,1 +- & -0.33917531_wp, & ! 1,2 +- & -0.00539212_wp, & ! 1,21 ; diffferent because of tblite ordering +- & 0.01305793_wp] ! 6,24 ; diffferent because of tblite ordering ++ & -0.05693153_wp, & ! s(Mg)-s(Mg) ++ & -0.33917531_wp, & ! s(Mg)-s(Mg) ++ & -0.00539212_wp, & ! s(Mg)-s(H) ++ & 0.01305793_wp] ! pz(Mg)-pz(H) ++ ! 1: s(Mg) ++ ! 2: s(Mg) ++ ! 3: s(Mg) ++ ! 4: py(Mg) ++ ! 5: pz(Mg) ++ ! 6: px(Mg) ++ ! 7: py(Mg) ++ ! 8: pz(Mg) ++ ! 9: px(Mg) ++ ! 10: dxy(Mg) ++ ! 11: dyz(Mg) ++ ! 12: dz2(Mg) ++ ! 13: dxz(Mg) ++ ! 14: dx2-y2(Mg) ++ ! 15: s(H) ++ ! 16: s(H) ++ ! 17: py(H) ++ ! 18: pz(H) ++ ! 19: px(H) ++ ! 20: s(H) ++ ! 21: s(H) ++ ! 22: py(H) ++ ! 23: pz(H) ++ ! 24: px(H) ++ + real(wp), allocatable :: lattr(:, :) + real(wp) :: cutoff + +@@ -1044,10 +1226,36 @@ subroutine test_ptb_plus_U_potential(error) + integer, parameter :: nat = 2 + integer, parameter :: at(nat) = [5, 17] + real(wp), parameter :: plusU_pot_ref(4) = [ & +- & -0.0023185_wp, & ! 1,1 +- & -0.0018289_wp, & ! 1,2 +- & -0.5266562_wp, & ! 1,21 ; diffferent because of tblite ordering +- & -1.6745659_wp] ! 6,24 ; diffferent because of tblite ordering ++ & -0.0023185_wp, & ! s(B)-s(B) ++ & -0.0018289_wp, & ! s(B)-s(B) ++ & -0.5266562_wp, & ! s(B)-pz(Cl) ++ & -1.6745659_wp] ! px(B)-dxy(Cl) ++ ! 1: s(B) ++ ! 2: s(B) ++ ! 3: py(B) ++ ! 4: pz(B) ++ ! 5: px(B) ++ ! 6: py(B) ++ ! 7: pz(B) ++ ! 8: px(B) ++ ! 9: dxy(B) ++ ! 10: dyz(B) ++ ! 11: dz2(B) ++ ! 12: dxz(B) ++ ! 13: dx2-y2(B) ++ ! 14: s(Cl) ++ ! 15: s(Cl) ++ ! 16: py(Cl) ++ ! 17: pz(Cl) ++ ! 18: px(Cl) ++ ! 19: py(Cl) ++ ! 20: pz(Cl) ++ ! 21: px(Cl) ++ ! 22: dxy(Cl) ++ ! 23: dyz(Cl) ++ ! 24: dz2(Cl) ++ ! 25: dxz(Cl) ++ ! 26: dx2-y2(Cl) + + call new(mol, at, xyz) + allocate (ptbData) +@@ -1067,7 +1275,7 @@ subroutine test_ptb_plus_U_potential(error) + call check_(error, wfn%coeff(1, 1, 1), plusU_pot_ref(1), thr=thr) + call check_(error, wfn%coeff(1, 2, 1), plusU_pot_ref(2), thr=thr) + call check_(error, wfn%coeff(1, 20, 1), plusU_pot_ref(3), thr=thr) +- call check_(error, wfn%coeff(8, 26, 1), plusU_pot_ref(4), thr=thr) ++ call check_(error, wfn%coeff(8, 22, 1), plusU_pot_ref(4), thr=thr) + + end subroutine test_ptb_plus_U_potential + diff --git a/easybuild/easyconfigs/y/YACS/YACS-0.1.8-GCCcore-13.3.0.eb b/easybuild/easyconfigs/y/YACS/YACS-0.1.8-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2ab12a60fca --- /dev/null +++ b/easybuild/easyconfigs/y/YACS/YACS-0.1.8-GCCcore-13.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'YACS' +version = '0.1.8' + +homepage = "https://github.com/rbgirshick/yacs" +description = """YACS was created as a lightweight library to define and +manage system configurations, such as those commonly found in software +designed for scientific experimentation. These "configurations" +typically cover concepts like hyperparameters used in training a machine +learning model or configurable model hyperparameters, such as the depth +of a convolutional neural network.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['efc4c732942b3103bea904ee89af98bcd27d01f0ac12d8d4d369f1e7a2914384'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('PyYAML', '6.0.2'), +] + +use_pip = True +download_dep_fail = True + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..5ac8fd8176f --- /dev/null +++ b/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'Yasm' +version = '1.3.0' + +homepage = 'https://www.tortall.net/projects/yasm/' +description = "Yasm: Complete rewrite of the NASM assembler with BSD license" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f'] + +builddependencies = [ + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/y/yelp-tools/yelp-tools-42.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/y/yelp-tools/yelp-tools-42.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..bbf260ff417 --- /dev/null +++ b/easybuild/easyconfigs/y/yelp-tools/yelp-tools-42.1-GCCcore-12.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'MesonNinja' + +name = 'yelp-tools' +version = '42.1' + +homepage = 'https://gitlab.gnome.org/GNOME/yelp-tools' +description = """yelp-tools is a collection of scripts and build utilities to help create, +manage, and publish documentation for Yelp and the web. Most of the heavy +lifting is done by packages like yelp-xsl and itstool. This package just +wraps things up in a developer-friendly way.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://gitlab.gnome.org/GNOME/yelp-tools/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['4776766816aaa4fff5a9be7229d03e2444fca2f60a11f645c6171abe8bb73925'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.1.1'), + ('Ninja', '1.11.1'), + ('CMake', '3.26.3'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('yelp-xsl', '42.1'), + ('ITSTool', '2.0.7'), + ('libxml2', '2.11.4'), + ('mallard-ducktype', '1.0.2'), + ('lxml', '4.9.2'), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': [ + 'bin/yelp-build', + 'bin/yelp-check', + 'bin/yelp-new', + ], + 'dirs': ['share/%(name)s'], +} + +sanity_check_commands = [ + 'yelp-build cache -h', + 'yelp-check hrefs -h', +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/y/yelp-xsl/yelp-xsl-42.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/y/yelp-xsl/yelp-xsl-42.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ad7d8eddb4e --- /dev/null +++ b/easybuild/easyconfigs/y/yelp-xsl/yelp-xsl-42.1-GCCcore-12.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'yelp-xsl' +version = '42.1' + +homepage = "https://gitlab.gnome.org/GNOME/yelp-xslg" +description = """yelp-xsl is a collection of programs and data files to help you build, maintain, + and distribute documentation. It provides XSLT stylesheets that can be built upon for help + viewers and publishing systems. These stylesheets output JavaScript and CSS content, + and reference images provided by yelp-xsl. This package also redistributes copies + of the jQuery and jQuery.Syntax JavaScript libraries. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://gitlab.gnome.org/GNOME/yelp-xsl/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['00f3ee8d9fa048d80063cc09477d24a09349e35c58ffdf9ecea253a4ca882068'] + +builddependencies = [ + ('binutils', '2.40'), + ('ITSTool', '2.0.7'), + ('gettext', '0.21.1'), + ('Autotools', '20220317'), +] + +preconfigopts = 'NOCONFIGURE=1 ./autogen.sh && ' + +sanity_check_paths = { + 'files': [], + 'dirs': [ + 'share/pkgconfig', + 'share/%(name)s', + ] +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/z/ZeroMQ/ZeroMQ-4.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/z/ZeroMQ/ZeroMQ-4.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..98db227b9aa --- /dev/null +++ b/easybuild/easyconfigs/z/ZeroMQ/ZeroMQ-4.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'ZeroMQ' +version = '4.3.5' + +homepage = 'https://www.zeromq.org/' +description = """ZeroMQ looks like an embeddable networking library but acts like a concurrency framework. + It gives you sockets that carry atomic messages across various transports like in-process, + inter-process, TCP, and multicast. You can connect sockets N-to-N with patterns like fanout, + pub-sub, task distribution, and request-reply. It's fast enough to be the fabric for clustered + products. Its asynchronous I/O model gives you scalable multicore applications, built as asynchronous + message-processing tasks. It has a score of language APIs and runs on most operating systems.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/%(namelower)s/libzmq/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), +] +dependencies = [ + ('OpenPGM', '5.2.122'), + ('libsodium', '1.0.20'), + ('util-linux', '2.40'), +] + +# Compialtion warnings in GCC 11, cf. https://github.com/zeromq/libzmq/issues/4178 +# Needto disable warnings as errors. +configopts = "--with-pic --with-pgm --with-libsodium --disable-Werror" + + +sanity_check_paths = { + 'files': ['lib/libzmq.%s' % SHLIB_EXT, 'lib/libzmq.a'], + 'dirs': ['include', 'lib'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2023a.eb b/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2023a.eb new file mode 100644 index 00000000000..57432d0e0ce --- /dev/null +++ b/easybuild/easyconfigs/z/Zoltan/Zoltan-3.901-foss-2023a.eb @@ -0,0 +1,46 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'ConfigureMake' + +name = 'Zoltan' +version = '3.901' + +homepage = "https://sandialabs.github.io/Zoltan/" +description = """Zoltan Dynamic Load Balancing and Graph Algorithm Toolkit""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +github_account = 'sandialabs' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['030c22d9f7532d3076e40cba1f03a63b2ee961d8cc9a35149af4a3684922a910'] + +dependencies = [ + ('gzip', '1.12'), + ('SCOTCH', '7.0.3'), + ('ParMETIS', '4.0.3'), +] + +preconfigopts = 'mkdir build && cd build &&' +configure_cmd = '../configure' +configopts = ' '.join([ + '--enable-gzip', + '--with-scotch', + '--with-scotch-incdir=$EBROOTSCOTCH/include', + '--with-scotch-libdir=$EBROOTSCOTCH/lib', + '--with-parmetis', + '--with-parmetis-incdir=$EBROOTPARMETIS/include', + '--with-parmetis-libdir=$EBROOTPARMETIS/lib', + '--disable-examples', + '--disable-tests', +]) +prebuildopts = 'cd build &&' +buildopts = 'everything' +preinstallopts = 'cd build &&' + +sanity_check_paths = { + 'files': ['lib/libzoltan.a', 'include/zoltan.h'], + 'dirs': [], +} + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..266b927072a --- /dev/null +++ b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.1-GCCcore-13.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'zlib-ng' +version = '2.2.1' + +homepage = 'https://github.com/zlib-ng/zlib-ng' +description = """zlib data compression library for the next generation systems""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), + ('versioningit', '3.1.2'), +] + +dependencies = [ + ('Python', '3.12.3'), +] + +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': ['ec6a76169d4214e2e8b737e0850ba4acb806c69eeace6240ed4481b9f5c57cdf'], + 'start_dir': '%(name)s-%(version)s', + 'configopts': '-DZLIB_ENABLE_TESTS=ON', + }), + +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, '0.5.0', { + 'source_tmpl': 'zlib_ng-%(version)s.tar.gz', + 'checksums': ['3322c4300253a054af3d3aafa2f3858dceee3a577810122ba55eff756bf35ef2'], + '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/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..8e1cf20a94d --- /dev/null +++ b/easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.2.2-GCCcore-13.2.0.eb @@ -0,0 +1,50 @@ +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', + }), + +] + +use_pip = True +sanity_pip_check = True + +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 8d3cd7f76d0..15cbcf7470d 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '4.9.3.dev0' +VERSION = '4.9.5.dev0' 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 71f38c23ae6..adc1ab93062 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -439,6 +439,8 @@ def check_dep_vars(self, gen, dep, dep_vars): # filter out BLIS and libFLAME with -amd versionsuffix # (AMD forks, used in gobff/*-amd toolchains) (['BLIS', 'libFLAME'], '-amd'), + # filter out libcint with -pypzpx versionsuffix, used by MOLGW + ('libcint', '-pypzpx'), # filter out OpenBLAS with -int8 versionsuffix, used by GAMESS-US ('OpenBLAS', '-int8'), # filter out ScaLAPACK with -BLIS-* versionsuffix, used in goblf toolchain @@ -627,7 +629,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 @@ -665,6 +667,8 @@ def check_dep_vars(self, gen, dep, dep_vars): 'UCX': [('1.11.0;', ['UCX-CUDA-1.11.0-'])], # Napari 0.4.19post1 requires VisPy >=0.14.1 <0.15 'VisPy': [('0.14.1;', ['napari-0.4.19.post1-'])], + # Visit-3.4.1 requires VTK 9.2.x + 'VTK': [('9.2.6;', ['Visit-3.4.1-'])], # WPS 3.9.1 requires WRF 3.9.1.1 'WRF': [(r'3\.9\.1\.1', [r'WPS-3\.9\.1'])], # wxPython 4.2.0 depends on wxWidgets 3.2.0 @@ -1001,14 +1005,13 @@ def test_easyconfig_locations(self): # ignore git/svn dirs & archived easyconfigs if '/.git/' in dirpath or '/.svn/' in dirpath or '__archive__' in dirpath: continue - # check whether list of .eb files is non-empty - easyconfig_files = [fn for fn in filenames if fn.endswith('eb')] + # check whether list of .eb files is non-empty, only exception: TEMPLATE.eb + easyconfig_files = [fn for fn in filenames if fn.endswith('eb') and fn != 'TEMPLATE.eb'] if easyconfig_files: # check whether path matches required pattern if not easyconfig_dirs_regex.search(dirpath): - # only exception: TEMPLATE.eb - if not (dirpath.endswith('/easybuild/easyconfigs') and filenames == ['TEMPLATE.eb']): - self.assertTrue(False, "List of easyconfig files in %s is empty: %s" % (dirpath, filenames)) + if not dirpath.endswith('/easybuild/easyconfigs'): + self.fail("There should be no easyconfig files in %s, found %s" % (dirpath, easyconfig_files)) def test_easyconfig_name_clashes(self): """Make sure there is not a name clash when all names are lowercase""" @@ -1029,7 +1032,7 @@ def test_easyconfig_name_clashes(self): duplicates[name] = names[name] if duplicates: - self.assertTrue(False, "EasyConfigs with case-insensitive name clash: %s" % duplicates) + self.fail("EasyConfigs with case-insensitive name clash: %s" % duplicates) @skip_if_not_pr_to_non_main_branch() def test_pr_sha256_checksums(self): @@ -1047,25 +1050,19 @@ def test_pr_sha256_checksums(self): 'R-bundle-Bioconductor-3.[2-5]', ] - # the check_sha256_checksums function (again) creates an EasyBlock instance - # for easyconfigs using the Bundle easyblock, this is a problem because the 'sources' easyconfig parameter - # is updated in place (sources for components are added to the 'parent' sources) in Bundle's __init__; - # therefore, we need to reset 'sources' to an empty list here if Bundle is used... - # likewise for 'patches' and 'checksums' - bundle_easyblocks = ['Bundle', 'CargoPythonBundle', 'PythonBundle', 'EB_OpenSSL_wrapper'] - for ec in self.changed_ecs: - if ec['easyblock'] in bundle_easyblocks or ec['name'] in ['Clang-AOMP']: - ec['sources'] = [] - ec['patches'] = [] - ec['checksums'] = [] - # filter out deprecated easyconfigs - retained_changed_ecs = [] - for ec in self.changed_ecs: - if not ec['deprecated']: - retained_changed_ecs.append(ec) - - checksum_issues = check_sha256_checksums(retained_changed_ecs, whitelist=whitelist) + retained_changed_ecs = [ec for ec in self.changed_ecs if not ec['deprecated']] + + # The check_sha256_checksums function creates an EasyBlock instance. + # For easyconfigs using the Bundle easyblock, this is a problem because the 'sources' easyconfig parameter + # is updated in place (sources for components are added to the 'parent' sources) in Bundle's __init__. + # Therefore, we need to a operate on a copy of those easyconfigs. + bundle_easyblocks = {'Bundle', 'CargoPythonBundle', 'PythonBundle', 'EB_OpenSSL_wrapper'} + + def is_bundle(ec): + return ec['easyblock'] in bundle_easyblocks or ec['name'] == 'Clang-AOMP' + ecs = [ec.copy() if is_bundle(ec) else ec for ec in retained_changed_ecs] + checksum_issues = check_sha256_checksums(ecs, whitelist=whitelist) self.assertTrue(len(checksum_issues) == 0, "No checksum issues:\n%s" % '\n'.join(checksum_issues)) @skip_if_not_pr_to_non_main_branch() @@ -1086,6 +1083,11 @@ def test_pr_python_packages(self): r'.*-2016[ab]-Python-.*', # mympirun is installed with system Python, pip may not be installed for system Python r'vsc-mympirun.*', + # ReFrame intentionally installs its deps in a %(installdir)s/external subdir, which is added + # to sys.path by the ReFrame command, and is intentionally NOT on the PYTHONPATH. + # Thus, a pip check fails, but this is expected and ok, it is still a working ReFrame installation + # See https://github.com/easybuilders/easybuild-easyconfigs/pull/21269 for more info + r'ReFrame.*', ] failing_checks = [] @@ -1212,12 +1214,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, @@ -1365,6 +1367,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, ...""" @@ -1461,6 +1508,9 @@ 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'] + # make sure binutils is included as a (build) dep if toolchain is GCCcore if ec['toolchain']['name'] == 'GCCcore': # easyblocks without a build step @@ -1477,7 +1527,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(ec['sources'] or ec['exts_list'] or ec.get('components')) + requires_binutils &= bool(sources or ec['exts_list'] or ec.get('components')) if requires_binutils: # dependencies() returns both build and runtime dependencies @@ -1508,36 +1558,18 @@ def template_easyconfig_test(self, spec): if openssl_osdep: failing_checks.append("OpenSSL should not be listed as OS dependency") - src_cnt = len(ec['sources']) - patch_checksums = ec['checksums'][src_cnt:] + src_cnt = len(sources) + patch_checksums = checksums[src_cnt:] # 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(ec['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)) + + for idx, patch in enumerate(patches): + 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 - if ec['checksums'] and ('source' in ec['skipsteps']): + if checksums and ('source' in ec['skipsteps']): failing_checks.append("'source' step should not be skipped, since that implies not verifying checksums") for ext in ec.get_ref('exts_list'): @@ -1563,21 +1595,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()