Looking into Rust and Cargo Debian packaging, it looks like they
are looking to go with source packages to work around the ABI
issue:
"Because Rust doesn't have a stable shared-library ABI, and we
don't want to rebuild every Rust library package for every
architecture every time we upload a new version of rustc, we
package library crates as source code, installed into
/usr/share/cargo/registry/cratename-version/. Thus, the Debian
"binary" package for a library crate contains the same source as
the source package."
https://internals.rust-lang.org/t/debian-rust-packaging-policy-draft/4453