tectonic_bridge_flate

Crates.iotectonic_bridge_flate
lib.rstectonic_bridge_flate
version0.1.7
sourcesrc
created_at2021-01-03 05:43:11.692773
updated_at2023-05-18 03:55:18.802464
descriptionExposing flate compression to the Tectonic C code.
homepagehttps://tectonic-typesetting.github.io/
repositoryhttps://github.com/tectonic-typesetting/tectonic/
max_upload_size
id330909
size14,801
Mark (rm-dr)

documentation

https://docs.rs/tectonic

README

The tectonic_bridge_flate crate

This crate is part of the Tectonic project. It provides a limited C API to the flate2 crate. This API is consumed by other Tectonic crates that include C code that require flate2 functionality.

If your project depends on this crate, Cargo will export for your build script an environment variable named DEP_TECTONIC_BRIDGE_FLATE_INCLUDE, which will be the name of a directory containing the generated tectonic_bridge_flate.h file that exposes this crate’s C API.

You will need to ensure that your Rust code actually references this crate in order for the linker to include the C API symbols. A use statement will suffice:

#[allow(unused_imports)]
use tectonic_bridge_flate::flate2;

Cargo features

The flate2 crate provides several Cargo features allowing control over the zlib implementation that it ultimately uses. This crate intentionally does not expose these features, because it is used by other crates that link with system libraries that can be expected to link to the system’s libz. Therefore, the only safe approach at this time is to force the use of the system libz here as well. Once the linking framework is built up, it will become possible to allow for more flexibility in this area.

Updating the generated header

This crate exposes Rust functions to C/C++ code using a header file created by cbindgen. To update the header, run:

cbindgen --output include/tectonic_bridge_flate.h
Commit count: 3625

cargo fmt