minibwa-sys 0.1.6

Low-level FFI bindings to minibwa
Documentation

minibwa-sys

crates.io docs.rs

Low-level, unsafe FFI bindings to minibwa, Heng Li's lightweight bwa.

This is the -sys crate: it vendors the minibwa C source, compiles it via build.rs, and exposes the raw bindgen-generated bindings. Most users should depend on the safe minibwa wrapper instead, which builds structured alignment Hits on top of these bindings.

What it does

  • Vendors the minibwa C source under vendor/ and a small shim/ layer.
  • Compiles the C at build time (build.rs), then runs bindgen to generate the Rust FFI declarations.
  • On docs.rs, where system zlib is unavailable, it runs bindgen only and skips C compilation.

Licensing

MIT. The default build uses only the Apache-2.0 libsais for indexing. The GPL bwtgen indexing path is available behind the opt-in gpl-bwtgen feature, which changes the effective license to GPL.

Updating the vendored source

From the workspace root:

scripts/refresh-minibwa.sh <clean-commit> [local-source-path]