5 releases

0.2.2 May 18, 2023
0.2.1 Oct 11, 2021
0.2.0 Jun 4, 2021
0.1.1 Jan 16, 2021
0.1.0 Jan 4, 2021

#1673 in Text processing

Download history 153/week @ 2023-12-04 135/week @ 2023-12-11 138/week @ 2023-12-18 102/week @ 2023-12-25 101/week @ 2024-01-01 145/week @ 2024-01-08 124/week @ 2024-01-15 123/week @ 2024-01-22 190/week @ 2024-01-29 185/week @ 2024-02-05 221/week @ 2024-02-12 231/week @ 2024-02-19 238/week @ 2024-02-26 217/week @ 2024-03-04 175/week @ 2024-03-11 208/week @ 2024-03-18

876 downloads per month
Used in 20 crates (3 directly)

MIT license

7KB

The tectonic_bridge_graphite2 crate

This crate is part of the Tectonic project. It exposes the C API of the graphite2 “smart font” system within the Rust/Cargo build framework, with no Rust bindings. This is why it is not named graphite2-sys.

The intention is that eventually this crate will provide the option of “vendoring” the graphite2 library, so that the Tectonic C code can use the library without it needing to be installed on the system. However, this has not yet been implemented.

If your project depends on this crate, Cargo will export for your build script an environment variable named DEP_GRAPHITE2_INCLUDE_PATH, which will be a semicolon-separated list of C incude directories, such that your code can include the graphite2/* C headers. It will also export an environment variable named DEP_GRAPHITE2_DEFINE_STATIC. If non-empty, C/C++ code compiled against this library should define the C preprocessor symbol GRAPHITE2_STATIC.

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

#[allow(unused_imports)]
#[allow(clippy::single_component_path_imports)]
use tectonic_bridge_graphite2;

Cargo features

At the moment this crate does not provide any Cargo features. It is intended that eventually it will, to allow control over whether the graphite2 library is vendored or not.

Dependencies

~26KB