mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 09:45:41 +00:00
f0954b76d7
This pulls syn and quote 1.0, but after talking with heycam it seems ok. --HG-- rename : third_party/rust/proc-macro2/.cargo-checksum.json => third_party/rust/proc-macro2-0.4.27/.cargo-checksum.json rename : third_party/rust/proc-macro2/Cargo.toml => third_party/rust/proc-macro2-0.4.27/Cargo.toml rename : third_party/rust/proc-macro2/README.md => third_party/rust/proc-macro2-0.4.27/README.md rename : third_party/rust/proc-macro2/build.rs => third_party/rust/proc-macro2-0.4.27/build.rs rename : third_party/rust/proc-macro2/src/fallback.rs => third_party/rust/proc-macro2-0.4.27/src/fallback.rs rename : third_party/rust/proc-macro2/src/lib.rs => third_party/rust/proc-macro2-0.4.27/src/lib.rs rename : third_party/rust/proc-macro2/src/strnom.rs => third_party/rust/proc-macro2-0.4.27/src/strnom.rs rename : third_party/rust/proc-macro2/src/wrapper.rs => third_party/rust/proc-macro2-0.4.27/src/wrapper.rs rename : third_party/rust/proc-macro2/tests/marker.rs => third_party/rust/proc-macro2-0.4.27/tests/marker.rs rename : third_party/rust/proc-macro2/tests/test.rs => third_party/rust/proc-macro2-0.4.27/tests/test.rs rename : third_party/rust/quote/.cargo-checksum.json => third_party/rust/quote-0.6.11/.cargo-checksum.json rename : third_party/rust/quote/Cargo.toml => third_party/rust/quote-0.6.11/Cargo.toml rename : third_party/rust/quote/README.md => third_party/rust/quote-0.6.11/README.md rename : third_party/rust/quote/src/ext.rs => third_party/rust/quote-0.6.11/src/ext.rs rename : third_party/rust/quote/src/lib.rs => third_party/rust/quote-0.6.11/src/lib.rs rename : third_party/rust/quote/src/to_tokens.rs => third_party/rust/quote-0.6.11/src/to_tokens.rs rename : third_party/rust/quote/tests/conditional/integer128.rs => third_party/rust/quote-0.6.11/tests/conditional/integer128.rs rename : third_party/rust/quote/tests/test.rs => third_party/rust/quote-0.6.11/tests/test.rs rename : third_party/rust/syn/.cargo-checksum.json => third_party/rust/syn-0.15.30/.cargo-checksum.json rename : third_party/rust/syn/Cargo.toml => third_party/rust/syn-0.15.30/Cargo.toml rename : third_party/rust/syn/README.md => third_party/rust/syn-0.15.30/README.md rename : third_party/rust/syn/build.rs => third_party/rust/syn-0.15.30/build.rs rename : third_party/rust/syn/src/attr.rs => third_party/rust/syn-0.15.30/src/attr.rs rename : third_party/rust/syn/src/buffer.rs => third_party/rust/syn-0.15.30/src/buffer.rs rename : third_party/rust/syn/src/data.rs => third_party/rust/syn-0.15.30/src/data.rs rename : third_party/rust/syn/src/derive.rs => third_party/rust/syn-0.15.30/src/derive.rs rename : third_party/rust/syn/src/error.rs => third_party/rust/syn-0.15.30/src/error.rs rename : third_party/rust/syn/src/export.rs => third_party/rust/syn-0.15.30/src/export.rs rename : third_party/rust/syn/src/expr.rs => third_party/rust/syn-0.15.30/src/expr.rs rename : third_party/rust/syn/src/ext.rs => third_party/rust/syn-0.15.30/src/ext.rs rename : third_party/rust/syn/src/file.rs => third_party/rust/syn-0.15.30/src/file.rs rename : third_party/rust/syn/src/gen/fold.rs => third_party/rust/syn-0.15.30/src/gen/fold.rs rename : third_party/rust/syn/src/gen/visit.rs => third_party/rust/syn-0.15.30/src/gen/visit.rs rename : third_party/rust/syn/src/gen/visit_mut.rs => third_party/rust/syn-0.15.30/src/gen/visit_mut.rs rename : third_party/rust/syn/src/gen_helper.rs => third_party/rust/syn-0.15.30/src/gen_helper.rs rename : third_party/rust/syn/src/generics.rs => third_party/rust/syn-0.15.30/src/generics.rs rename : third_party/rust/syn/src/group.rs => third_party/rust/syn-0.15.30/src/group.rs rename : third_party/rust/syn/src/ident.rs => third_party/rust/syn-0.15.30/src/ident.rs rename : third_party/rust/syn/src/item.rs => third_party/rust/syn-0.15.30/src/item.rs rename : third_party/rust/syn/src/keyword.rs => third_party/rust/syn-0.15.30/src/keyword.rs rename : third_party/rust/syn/src/lib.rs => third_party/rust/syn-0.15.30/src/lib.rs rename : third_party/rust/syn/src/lifetime.rs => third_party/rust/syn-0.15.30/src/lifetime.rs rename : third_party/rust/syn/src/lit.rs => third_party/rust/syn-0.15.30/src/lit.rs rename : third_party/rust/syn/src/lookahead.rs => third_party/rust/syn-0.15.30/src/lookahead.rs rename : third_party/rust/syn/src/mac.rs => third_party/rust/syn-0.15.30/src/mac.rs rename : third_party/rust/syn/src/macros.rs => third_party/rust/syn-0.15.30/src/macros.rs rename : third_party/rust/syn/src/op.rs => third_party/rust/syn-0.15.30/src/op.rs rename : third_party/rust/syn/src/parse.rs => third_party/rust/syn-0.15.30/src/parse.rs rename : third_party/rust/syn/src/parse_macro_input.rs => third_party/rust/syn-0.15.30/src/parse_macro_input.rs rename : third_party/rust/syn/src/parse_quote.rs => third_party/rust/syn-0.15.30/src/parse_quote.rs rename : third_party/rust/syn/src/path.rs => third_party/rust/syn-0.15.30/src/path.rs rename : third_party/rust/syn/src/print.rs => third_party/rust/syn-0.15.30/src/print.rs rename : third_party/rust/syn/src/punctuated.rs => third_party/rust/syn-0.15.30/src/punctuated.rs rename : third_party/rust/syn/src/spanned.rs => third_party/rust/syn-0.15.30/src/spanned.rs rename : third_party/rust/syn/src/thread.rs => third_party/rust/syn-0.15.30/src/thread.rs rename : third_party/rust/syn/src/token.rs => third_party/rust/syn-0.15.30/src/token.rs rename : third_party/rust/syn/src/tt.rs => third_party/rust/syn-0.15.30/src/tt.rs rename : third_party/rust/syn/src/ty.rs => third_party/rust/syn-0.15.30/src/ty.rs rename : third_party/rust/synstructure/.cargo-checksum.json => third_party/rust/synstructure-0.10.1/.cargo-checksum.json rename : third_party/rust/synstructure/Cargo.toml => third_party/rust/synstructure-0.10.1/Cargo.toml rename : third_party/rust/synstructure/README.md => third_party/rust/synstructure-0.10.1/README.md rename : third_party/rust/synstructure/src/lib.rs => third_party/rust/synstructure-0.10.1/src/lib.rs rename : third_party/rust/synstructure/src/macros.rs => third_party/rust/synstructure-0.10.1/src/macros.rs rename : third_party/rust/unicode-xid/.cargo-checksum.json => third_party/rust/unicode-xid-0.1.0/.cargo-checksum.json rename : third_party/rust/unicode-xid/Cargo.toml => third_party/rust/unicode-xid-0.1.0/Cargo.toml rename : third_party/rust/unicode-xid/README.md => third_party/rust/unicode-xid-0.1.0/README.md rename : third_party/rust/unicode-xid/scripts/unicode.py => third_party/rust/unicode-xid-0.1.0/scripts/unicode.py rename : third_party/rust/unicode-xid/src/lib.rs => third_party/rust/unicode-xid-0.1.0/src/lib.rs rename : third_party/rust/unicode-xid/src/tables.rs => third_party/rust/unicode-xid-0.1.0/src/tables.rs rename : third_party/rust/unicode-xid/src/tests.rs => third_party/rust/unicode-xid-0.1.0/src/tests.rs
64 lines
1.5 KiB
Rust
64 lines
1.5 KiB
Rust
use std::env;
|
|
use std::process::Command;
|
|
use std::str::{self, FromStr};
|
|
|
|
// The rustc-cfg strings below are *not* public API. Please let us know by
|
|
// opening a GitHub issue if your build environment requires some way to enable
|
|
// these cfgs other than by executing our build script.
|
|
fn main() {
|
|
let compiler = match rustc_version() {
|
|
Some(compiler) => compiler,
|
|
None => return,
|
|
};
|
|
|
|
if compiler.minor < 36 {
|
|
println!("cargo:rustc-cfg=syn_omit_await_from_token_macro");
|
|
}
|
|
|
|
if !compiler.nightly {
|
|
println!("cargo:rustc-cfg=syn_disable_nightly_tests");
|
|
}
|
|
}
|
|
|
|
struct Compiler {
|
|
minor: u32,
|
|
nightly: bool,
|
|
}
|
|
|
|
fn rustc_version() -> Option<Compiler> {
|
|
let rustc = match env::var_os("RUSTC") {
|
|
Some(rustc) => rustc,
|
|
None => return None,
|
|
};
|
|
|
|
let output = match Command::new(rustc).arg("--version").output() {
|
|
Ok(output) => output,
|
|
Err(_) => return None,
|
|
};
|
|
|
|
let version = match str::from_utf8(&output.stdout) {
|
|
Ok(version) => version,
|
|
Err(_) => return None,
|
|
};
|
|
|
|
let mut pieces = version.split('.');
|
|
if pieces.next() != Some("rustc 1") {
|
|
return None;
|
|
}
|
|
|
|
let next = match pieces.next() {
|
|
Some(next) => next,
|
|
None => return None,
|
|
};
|
|
|
|
let minor = match u32::from_str(next) {
|
|
Ok(minor) => minor,
|
|
Err(_) => return None,
|
|
};
|
|
|
|
Some(Compiler {
|
|
minor: minor,
|
|
nightly: version.contains("nightly"),
|
|
})
|
|
}
|