Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

devider: add aarch64/arm64 builds #51370

Merged
merged 4 commits into from
Oct 16, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 15 additions & 4 deletions recipes/devider/build.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,21 @@
#!/bin/bash -euo
#!/bin/bash

set -xeuo

# Add workaround for SSH-based Git connections from Rust/cargo. See https://github.com/rust-lang/cargo/issues/2078 for details.
# We set CARGO_HOME because we don't pass on HOME to conda-build, thus rendering the default "${HOME}/.cargo" defunct.
export CARGO_NET_GIT_FETCH_WITH_CLI=true CARGO_HOME="$(pwd)/.cargo"
export CARGO_HOME="$(pwd)/.cargo"

# build statically linked binary with Rust
cargo-bundle-licenses --format yaml --output THIRDPARTY.yml
RUST_BACKTRACE=1 cargo install --verbose --locked --no-track --root $PREFIX --path .

case $(uname -m) in
aarch64 | arm64)
FEATURES="--features neon --no-default-features"
;;
*)
FEATURES=""
;;
esac

RUST_BACKTRACE=1 cargo install --verbose --locked --no-track --root $PREFIX --path . ${FEATURES}
cp scripts/* $PREFIX/bin
14 changes: 14 additions & 0 deletions recipes/devider/devider-aarch64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
--- Cargo.toml.orig 2024-10-14 10:59:48.140000000 +0000
+++ Cargo.toml 2024-10-14 11:03:33.120000000 +0000
@@ -13,9 +13,9 @@
rayon="1.7"
rand="0.8"
rand_core="0.6"
-rust-htslib= { version = "0.44", default-features = false }
+rust-htslib= { version = "0.47", default-features = false }
clap = { version = "=4.2.0", features = ["derive"] }
-block-aligner = { version = "0.4", default-features = false }
+block-aligner = { version = "0.5", default-features = false }
debruijn = "0.3"
simple_logger="4"
log="0.4"
9 changes: 8 additions & 1 deletion recipes/devider/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ package:
source:
url: https://github.com/bluenote-1577/devider/archive/v{{ version }}.tar.gz
sha256: e2c5e4a2faa51dbfd0ad4cb867d0dc25ea4012e83ec8fea27c1624592fce7dce
patches:
- devider-aarch64.patch # [aarch64]
Comment on lines +10 to +11
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Patch File Does Not Address aarch64-Specific Changes

The devider-aarch64.patch only updates dependency versions and does not include any modifications specific to aarch64 architecture support.

  • Ensure that the patch includes necessary aarch64-specific configurations or code changes.
🔗 Analysis chain

LGTM! Verify the patch file contents.

The addition of the architecture-specific patch for aarch64 is appropriate. This is a common approach for supporting new architectures.

Please ensure that the devider-aarch64.patch file contains the necessary changes for aarch64 support. You can verify its contents with:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Display the contents of the aarch64 patch file
cat recipes/devider/devider-aarch64.patch

Length of output: 560


build:
number: 0
number: 1
run_exports:
- {{ pin_subpackage('devider', max_pin="x.x") }}

Expand All @@ -20,6 +22,8 @@ requirements:
- cargo-bundle-licenses
- make
- cmake >=3.12
host:
- clangdev >=16,<17 # [linux and aarch64]
run:
- python
- samtools
Expand All @@ -43,5 +47,8 @@ about:
summary: Haplotyping small sequences from heterogeneous long-read sequencing samples with a SNP-encoded positional de Bruijn graphs.

extra:
additional-platforms:
- linux-aarch64
- osx-arm64
martin-g marked this conversation as resolved.
Show resolved Hide resolved
recipe-maintainers:
- bluenote-1577
Loading