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

Add a libz-ng-sys crate, using the same sources with minimal duplication #98

Merged
merged 1 commit into from
May 28, 2022

Conversation

joshtriplett
Copy link
Member

libz-ng-sys uses the zlib-ng native API, rather than the zlib-compat
API. It exports the same Rust API (modulo the slight differences in
types), without the zng_ prefixes, to make it easy to write Rust
software that works with both.

Add a separate Cargo.toml and README for libz-ng-sys.

Move the build_zlib_ng function from build.rs to build_zng.rs, and
use that as the build script for libz-ng-sys.

Add a cargo-zng script that creates the libz-ng-sys crate in a temporary
directory and runs cargo on it, to make it easy to run tests with:

./cargo-zng test
./cargo-zng run --manifest-path systest/Cargo.toml

Test libz-ng-sys in CI.

libz-ng-sys uses the zlib-ng native API, rather than the zlib-compat
API. It exports the same Rust API (modulo the slight differences in
types), without the `zng_` prefixes, to make it easy to write Rust
software that works with both.

Add a separate Cargo.toml and README for libz-ng-sys.

Move the `build_zlib_ng` function from `build.rs` to `build_zng.rs`, and
use that as the build script for libz-ng-sys.

Add a cargo-zng script that creates the libz-ng-sys crate in a temporary
directory and runs cargo on it, to make it easy to run tests with:
```
./cargo-zng test
./cargo-zng run --manifest-path systest/Cargo.toml
```

Test libz-ng-sys in CI.
@joshtriplett joshtriplett merged commit eca8e5c into rust-lang:main May 28, 2022
@joshtriplett joshtriplett deleted the libz-ng-sys branch May 28, 2022 01:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant