Vulnerabilities | |||||
---|---|---|---|---|---|
Version | Suggest | Low | Medium | High | Critical |
1.4.0 | 0 | 0 | 0 | 0 | 0 |
1.3.0 | 0 | 0 | 0 | 0 | 0 |
1.2.0 | 0 | 0 | 0 | 0 | 0 |
1.1.0 | 0 | 0 | 0 | 0 | 0 |
1.0.1 | 0 | 0 | 0 | 0 | 0 |
1.0.0 | 0 | 0 | 0 | 0 | 0 |
0.1.8 | 0 | 0 | 0 | 0 | 0 |
0.1.7 | 0 | 0 | 0 | 0 | 0 |
0.1.6 | 0 | 0 | 0 | 0 | 0 |
0.1.5 | 0 | 0 | 0 | 0 | 0 |
0.1.4 | 0 | 0 | 0 | 0 | 0 |
0.1.3 | 0 | 0 | 0 | 0 | 0 |
0.1.2 | 0 | 0 | 0 | 0 | 0 |
0.1.1 | 0 | 0 | 0 | 0 | 0 |
0.1.0 | 0 | 0 | 0 | 0 | 0 |
0.0.1 | 0 | 0 | 0 | 0 | 0 |
1.4.0 - This version may not be safe as it has not been updated for a long time. Find out if your coding project uses this component and get notified of any reported security vulnerabilities with Meterian-X Open Source Security Platform
Maintain your licence declarations and avoid unwanted licences to protect your IP the way you intended.
Apache-2.0 - Apache License 2.0A Rust library for build scripts to automatically configure code based on
compiler support. Code snippets are dynamically tested to see if the rustc
will accept them, rather than hard-coding specific version support.
Add this to your Cargo.toml
:
[build-dependencies]
autocfg = "1"
Then use it in your build.rs
script to detect compiler features. For
example, to test for 128-bit integer support, it might look like:
extern crate autocfg;
fn main() {
let ac = autocfg::new();
ac.emit_has_type("i128");
// (optional) We don't need to rerun for anything external.
autocfg::rerun_path("build.rs");
}
If the type test succeeds, this will write a cargo:rustc-cfg=has_i128
line
for Cargo, which translates to Rust arguments --cfg has_i128
. Then in the
rest of your Rust code, you can add #[cfg(has_i128)]
conditions on code that
should only be used when the compiler supports it.
1.4.0 (2024-09-26)
emit_possibility
for Rust 1.80's checked cfgs, and call that
automatically for methods that conditionally emit
, by @Techcable.1.3.0 (2024-05-03)
probe_raw
for direct control of the code that will be test-compiled.rustc
version information too.1.2.0 (2024-03-25)
no_std
and set_no_std
to control the use of #![no_std]
in probes.RUSTC_WRAPPER
and RUSTC_WORKSPACE_WRAPPER
when they are set.1.1.0 (2022-02-07)
CARGO_ENCODED_RUSTFLAGS
when it is set.1.0.1 (2020-08-20)
RUSTFLAGS
for more --target
scenarios, by @adamreichold.1.0.0 (2020-01-08)
probe_expression
and emit_expression_cfg
to test arbitrary expressions.probe_constant
and emit_constant_cfg
to test arbitrary constant expressions.0.1.7 (2019-10-20)
RUSTFLAGS
when probing $TARGET != $HOST
, mainly for sysroot, by @roblabla.0.1.6 (2019-08-19)
probe
/emit_sysroot_crate
, by @leo60228.0.1.5 (2019-07-16)
0.1.4 (2019-05-22)
std
/no_std
probing to a warning instead of an error.rustc
bootstrap compatibility.0.1.3 (2019-05-21)
#![no_std]
is needed for the $TARGET
.0.1.2 (2019-01-16)
rerun_env(ENV)
to print cargo:rerun-if-env-changed=ENV
.rerun_path(PATH)
to print cargo:rerun-if-changed=PATH
.This crate's minimum supported rustc
version is 1.0.0
. Compatibility is
its entire reason for existence, so this crate will be extremely conservative
about raising this requirement. If this is ever deemed necessary, it will be
treated as a major breaking change for semver purposes.
This project is licensed under either of
at your option.