Build feature-matched Rust archives for the native Make library path. Flatten their members into libzstd.a so static consumers resolve C-to-Rust and Rust-to-C references in one archive, and whole-archive link shared outputs so every migrated public ABI export remains available. Rust compression and decompression features now mirror the C partial-library switches. This prevents compression-only artifacts from retaining DDict references to decompression-only C helpers. Add a C archive smoke test that round-trips data and exercises the DDict lifecycle through lib/libzstd.a, rather than direct test-object links. Test Plan: - cargo fmt, strict Clippy, cargo test --all-targets, release build - Rust checks with compression-only, decompression-only, and no features - full, partial, forced-HUF, and 32-bit static/shared Make library probes - test-rust-lib-smoke, fuzzer, zstreamtest, and invalidDictionaries Refs: rust/README.md
18 lines
274 B
TOML
18 lines
274 B
TOML
[package]
|
|
name = "zstd-rs"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
crate-type = ["staticlib"]
|
|
|
|
[features]
|
|
default = ["compression", "decompression"]
|
|
compression = []
|
|
decompression = []
|
|
huf-force-decompress-x1 = []
|
|
huf-force-decompress-x2 = []
|
|
|
|
[dependencies]
|
|
libc = "0.2"
|