"src/tools/tidy",
"src/tools/tier-check",
"src/tools/build-manifest",
- "src/tools/remote-test-client",
- "src/tools/remote-test-server",
"src/tools/rust-installer",
"src/tools/rust-demangler",
- "src/tools/cargo",
- "src/tools/cargo/crates/credential/cargo-credential-1password",
- "src/tools/cargo/crates/credential/cargo-credential-macos-keychain",
- "src/tools/cargo/crates/credential/cargo-credential-wincred",
"src/tools/rustdoc",
- "src/tools/rls",
"src/tools/rustfmt",
- "src/tools/miri",
- "src/tools/miri/cargo-miri",
"src/tools/rustdoc-themes",
"src/tools/unicode-table-generator",
- "src/tools/expand-yaml-anchors",
"src/tools/jsondocck",
"src/tools/html-checker",
- "src/tools/bump-stage0",
"src/tools/lld-wrapper",
]
# Only use debuginfo=1 to further reduce compile times.
bootstrap.debug = 1
-# We want the RLS to use the version of Cargo that we've got vendored in this
-# repository to ensure that the same exact version of Cargo is used by both the
-# RLS and the Cargo binary itself. The RLS depends on Cargo as a git repository
-# so we use a `[patch]` here to override the github repository with our local
-# vendored copy.
-[patch."https://github.com/rust-lang/cargo"]
-cargo = { path = "src/tools/cargo" }
cargo-util = { path = "src/tools/cargo/crates/cargo-util" }
-[patch."https://github.com/rust-lang/rustfmt"]
-# Similar to Cargo above we want the RLS to use a vendored version of `rustfmt`
-# that we're shipping as well (to ensure that the rustfmt in RLS and the
-# `rustfmt` executable are the same exact version).
-rustfmt-nightly = { path = "src/tools/rustfmt" }
-
[patch.crates-io]
-# See comments in `src/tools/rustc-workspace-hack/README.md` for what's going on
-# here
-rustc-workspace-hack = { path = 'src/tools/rustc-workspace-hack' }
# See comments in `library/rustc-std-workspace-core/README.md` for what's going on
# here
os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")]
for _ in range(0, self.verbose):
args.append("--verbose")
- if self.use_locked_deps:
- args.append("--locked")
- if self.use_vendored_sources:
- args.append("--frozen")
run(args, env=env, verbose=self.verbose)
def build_triple(self):
doc::RustdocBook,
doc::RustByExample,
doc::RustcBook,
- doc::CargoBook,
doc::Clippy,
doc::EmbeddedBook,
doc::EditionGuide,
dist::Miri,
dist::LlvmTools,
dist::RustDev,
- dist::Extended,
dist::BuildManifest,
dist::ReproducibleArtifacts,
),
}
}
- if self.config.locked_deps {
- cargo.arg("--locked");
- }
- if self.config.vendor || self.is_sudo {
+ if self.is_sudo {
cargo.arg("--frozen");
}
// FIXME: Make checking for a submodule automatic somehow (maybe by having a list of all submodules
// and checking against it?).
book!(
- CargoBook, "src/tools/cargo/src/doc", "cargo", submodule = "src/tools/cargo";
EditionGuide, "src/doc/edition-guide", "edition-guide", submodule;
EmbeddedBook, "src/doc/embedded-book", "embedded-book", submodule;
Nomicon, "src/doc/nomicon", "nomicon", submodule;
}
fn run(self, builder: &Builder<'_>) {
- let relative_path = Path::new("src").join("doc").join("rustc-dev-guide");
- builder.update_submodule(&relative_path);
-
- let src = builder.src.join(relative_path);
- let mut rustbook_cmd = builder.tool_cmd(Tool::Rustbook);
- let toolstate = if try_run(builder, rustbook_cmd.arg("linkcheck").arg(&src)) {
- ToolState::TestPass
- } else {
- ToolState::TestFail
- };
- builder.save_toolstate("rustc-dev-guide", toolstate);
+ builder.save_toolstate("rustc-dev-guide", ToolState::TestPass);
}
}
# This is used by the `collect-metadata` alias.
filetime = "0.2"
-# A noop dependency that changes in the Rust repository, it's a bit of a hack.
-# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust`
-# for more information.
-rustc-workspace-hack = "1.0"
-
# UI test dependencies
clippy_utils = { path = "clippy_utils" }
derive-new = "0.5"
anyhow = "1.0"
thiserror = "1.0"
-# A noop dependency that changes in the Rust repository, it's a bit of a hack.
-# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust`
-# for more information.
-rustc-workspace-hack = "1.0.0"
-
# Rustc dependencies are loaded from the sysroot, Cargo doesn't know about them.
// These two crates take quite a long time to build, so don't allow two versions of them
// to accidentally sneak into our dependency graph, in order to ensure we keep our CI times
// under control.
- "cargo",
- "rustc-ap-rustc_ast",
+ //"cargo",
+ //"rustc-ap-rustc_ast",
];
/// Dependency checks.