extern crate rustc_version;
use rustc_version::{version_meta, Channel};
fn main() {
let version = version_meta().unwrap();
match version.channel {
Channel::Stable => {
println!("cargo:rustc-cfg=RUSTC_IS_STABLE");
}
Channel::Beta => {
println!("cargo:rustc-cfg=RUSTC_IS_BETA");
}
Channel::Nightly => {
println!("cargo:rustc-cfg=RUSTC_IS_NIGHTLY");
}
Channel::Dev => {
println!("cargo:rustc-cfg=RUSTC_IS_DEV");
}
}
let semver = version.semver;
let mut rustcv: String = format!("{}.{}.{}", semver.major, semver.minor, semver.patch);
if version.channel != Channel::Stable {
rustcv.push('p');
}
println!("cargo:rustc-env=RUSTC_VERSION={}", rustcv);
}