Sha256: 7a7f9e56ea7fb4f78c4e532b84b9d27be719d600e85eaeb3a2f4b79a4f0b419c
Contents?: true
Size: 1.67 KB
Versions: 8
Compression:
Stored size: 1.67 KB
Contents
// The rustc-cfg listed below are considered public API, but it is *unstable* // and outside of the normal semver guarantees: // // - `crossbeam_no_atomic` // Assume the target does *not* support any atomic operations. // This is usually detected automatically by the build script, but you may // need to enable it manually when building for custom targets or using // non-cargo build systems that don't run the build script. // // With the exceptions mentioned above, the rustc-cfg emitted by the build // script are *not* public API. #![warn(rust_2018_idioms)] use std::env; include!("no_atomic.rs"); include!("build-common.rs"); fn main() { println!("cargo:rerun-if-changed=no_atomic.rs"); println!("cargo:rustc-check-cfg=cfg(crossbeam_no_atomic,crossbeam_sanitize_thread)"); let target = match env::var("TARGET") { Ok(target) => convert_custom_linux_target(target), Err(e) => { println!( "cargo:warning={}: unable to get TARGET environment variable: {}", env!("CARGO_PKG_NAME"), e ); return; } }; // Note that this is `no_`*, not `has_*`. This allows treating as the latest // stable rustc is used when the build script doesn't run. This is useful // for non-cargo build systems that don't run the build script. if NO_ATOMIC.contains(&&*target) { println!("cargo:rustc-cfg=crossbeam_no_atomic"); } // `cfg(sanitize = "..")` is not stabilized. let sanitize = env::var("CARGO_CFG_SANITIZE").unwrap_or_default(); if sanitize.contains("thread") { println!("cargo:rustc-cfg=crossbeam_sanitize_thread"); } }
Version data entries
8 entries across 8 versions & 1 rubygems