addr-spec 0.3.3

A wicked, fast UTF-8 email address parser and serializer.
Documentation
use std::{env, process::Command};

fn main() {
    println!("cargo:rerun-if-changed=src/ascii.c");
    cc::Build::new().file("src/ascii.c").compile("ascii");

    if is_nightly() {
        println!("cargo:rustc-cfg=nightly");
    }
}

fn is_nightly() -> bool {
    let rustc = match env::var_os("RUSTC") {
        Some(rustc) => rustc,
        None => return false,
    };

    let output = match Command::new(rustc).arg("--version").output() {
        Ok(output) => output,
        Err(_) => return false,
    };

    let version = match std::str::from_utf8(&output.stdout) {
        Ok(version) => version,
        Err(_) => return false,
    };

    version.contains("nightly")
}