address review comments · rust-lang/rust@a178559 (original) (raw)
1
1
`//! Checks if selected rustc crates can be compiled on the stable channel (or a "simulation" of it).
`
2
2
`//! These crates are designed to be used by downstream users.
`
3
3
``
4
``
`-
use run_make_support::{cargo, run_in_tmpdir, rustc_path, source_root};
`
``
4
`+
use run_make_support::{cargo, rustc_path, source_root};
`
5
5
``
6
6
`fn main() {
`
7
``
`-
run_in_tmpdir(|| {
`
8
``
`-
// Use the stage0 beta cargo for the compilation (it shouldn't really matter which cargo we
`
9
``
`-
// use)
`
10
``
`-
let cargo = cargo()
`
11
``
`` -
// Ensure proc-macro2
's nightly detection is disabled
``
12
``
`-
.env("RUSTC_STAGE", "0")
`
13
``
`-
.env("RUSTC", rustc_path())
`
14
``
`-
// We want to disallow all nightly features to simulate a stable build
`
15
``
`-
.env("RUSTFLAGS", "-Zallow-features=")
`
16
``
`-
.arg("build")
`
17
``
`-
.arg("--manifest-path")
`
18
``
`-
.arg(source_root().join("Cargo.toml"))
`
19
``
`-
.args(&[
`
20
``
`-
"--config",
`
21
``
`-
r#"workspace.exclude=["library/core"]"#,
`
22
``
`-
// Avoid depending on transitive rustc crates
`
23
``
`-
"--no-default-features",
`
24
``
`` -
// Emit artifacts in this temporary directory, not in the source_root's target
``
25
``
`-
// folder
`
26
``
`-
"--target-dir",
`
27
``
`-
".",
`
28
``
`-
])
`
29
``
`-
// Check that these crates can be compiled on "stable"
`
30
``
`-
.args(&[
`
31
``
`-
"-p",
`
32
``
`-
"rustc_type_ir",
`
33
``
`-
"-p",
`
34
``
`-
"rustc_next_trait_solver",
`
35
``
`-
"-p",
`
36
``
`-
"rustc_pattern_analysis",
`
37
``
`-
"-p",
`
38
``
`-
"rustc_lexer",
`
39
``
`-
])
`
40
``
`-
.run();
`
41
``
`-
});
`
``
7
`+
// Use the stage0 beta cargo for the compilation (it shouldn't really matter which cargo we use)
`
``
8
`+
cargo()
`
``
9
`` +
// Ensure proc-macro2
's nightly detection is disabled
``
``
10
`+
.env("RUSTC_STAGE", "0")
`
``
11
`+
.env("RUSTC", rustc_path())
`
``
12
`+
// We want to disallow all nightly features to simulate a stable build
`
``
13
`+
.env("RUSTFLAGS", "-Zallow-features=")
`
``
14
`+
.arg("build")
`
``
15
`+
.arg("--manifest-path")
`
``
16
`+
.arg(source_root().join("Cargo.toml"))
`
``
17
`+
.args(&[
`
``
18
`+
// Avoid depending on transitive rustc crates
`
``
19
`+
"--no-default-features",
`
``
20
`` +
// Emit artifacts in this temporary directory, not in the source_root's target
folder
``
``
21
`+
"--target-dir",
`
``
22
`+
"target",
`
``
23
`+
])
`
``
24
`+
// Check that these crates can be compiled on "stable"
`
``
25
`+
.args(&[
`
``
26
`+
"-p",
`
``
27
`+
"rustc_type_ir",
`
``
28
`+
"-p",
`
``
29
`+
"rustc_next_trait_solver",
`
``
30
`+
"-p",
`
``
31
`+
"rustc_pattern_analysis",
`
``
32
`+
"-p",
`
``
33
`+
"rustc_lexer",
`
``
34
`+
])
`
``
35
`+
.run();
`
42
36
`}
`