1 | // Automatically detect tsan in a way that's compatible with both stable (which |
---|---|
2 | // doesn't support sanitizers) and nightly (which does). Works because build |
3 | // scripts gets `cfg` info, even if the cfg is unstable. |
4 | fn main() { |
5 | println!("cargo:rerun-if-changed=build.rs"); |
6 | let santizer_list = std::env::var("CARGO_CFG_SANITIZE").unwrap_or_default(); |
7 | if santizer_list.contains("thread") { |
8 | println!("cargo:rustc-cfg=tsan_enabled"); |
9 | } |
10 | } |
11 |