target-spec
Evaluate Cargo.toml target specifications against platform triples.
Cargo supports platform-specific dependencies. These dependencies can be specified in one of two ways:
# 1. As Rust-like `#[cfg]` syntax.
[]
= { = "native/x86_64" }
# 2. Listing out the full target triple.
[]
= "0.4.0"
target-spec provides the eval API which can be used to figure out whether such a
dependency will be included on a particular platform.
use eval;
// Evaluate Rust-like `#[cfg]` syntax.
let cfg_target = "cfg(all(unix, target_arch = \"x86_64\"))";
assert_eq!;
assert_eq!;
assert_eq!;
// Evaluate a full target-triple.
assert_eq!;
assert_eq!;
For more advanced usage, see Platform and TargetSpec.
Optional features
summaries: Adds thesummariesmodule to enable serialization ofPlatformandTargetFeatures.proptest1: Enables support for property-based testing ofPlatformandTargetFeaturesusingproptest.
Minimum supported Rust version
The minimum supported Rust version (MSRV) is Rust 1.54. Within the 1.x series, MSRV bumps will be accompanied by a minor version update.
Contributing
See the CONTRIBUTING file for how to help out.
License
This project is available under the terms of either the Apache 2.0 license or the MIT license.