Description: Ignore submodules that we're not building, or that are unused like
 mdbook-linkcheck that pull in a ton of dependencies that are unneeded.
Author: Ximin Luo <infinity0@debian.org>
Forwarded: not-needed
Index: rustc.git/Cargo.toml
===================================================================
--- rustc.git.orig/Cargo.toml
+++ rustc.git/Cargo.toml
@@ -6,7 +6,6 @@ members = [
   "library/std",
   "library/test",
   "src/tools/cargotest",
-  "src/tools/clippy",
   "src/tools/compiletest",
   "src/tools/error_index_generator",
   "src/tools/linkchecker",
@@ -15,19 +14,11 @@ members = [
   "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/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",
 ]
 exclude = [
   "build",
@@ -69,24 +60,8 @@ gimli.debug = 0
 miniz_oxide.debug = 0
 object.debug = 0
 
-# 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" }
-
-[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
@@ -100,5 +75,3 @@ rustc-std-workspace-std = { path = 'libr
 # source code for this crate.
 backtrace = { path = "library/backtrace" }
 
-[patch."https://github.com/rust-lang/rust-clippy"]
-clippy_lints = { path = "src/tools/clippy/clippy_lints" }
Index: rustc.git/src/bootstrap/bootstrap.py
===================================================================
--- rustc.git.orig/src/bootstrap/bootstrap.py
+++ rustc.git/src/bootstrap/bootstrap.py
@@ -754,10 +754,6 @@ class RustBuild(object):
                 os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")]
         for _ in range(1, 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):
Index: rustc.git/src/bootstrap/builder.rs
===================================================================
--- rustc.git.orig/src/bootstrap/builder.rs
+++ rustc.git/src/bootstrap/builder.rs
@@ -449,7 +449,6 @@ impl<'a> Builder<'a> {
                 doc::RustdocBook,
                 doc::RustByExample,
                 doc::RustcBook,
-                doc::CargoBook,
                 doc::EmbeddedBook,
                 doc::EditionGuide,
             ),
@@ -471,9 +470,7 @@ impl<'a> Builder<'a> {
                 dist::Miri,
                 dist::LlvmTools,
                 dist::RustDev,
-                dist::Extended,
                 dist::BuildManifest,
-                dist::HashSign
             ),
             Kind::Install => describe!(
                 install::Docs,
@@ -1343,10 +1340,7 @@ impl<'a> Builder<'a> {
             }
         }
 
-        if self.config.locked_deps {
-            cargo.arg("--locked");
-        }
-        if self.config.vendor || self.is_sudo {
+        if self.is_sudo {
             cargo.arg("--frozen");
         }
 
Index: rustc.git/src/bootstrap/doc.rs
===================================================================
--- rustc.git.orig/src/bootstrap/doc.rs
+++ rustc.git/src/bootstrap/doc.rs
@@ -60,7 +60,6 @@ macro_rules! book {
 // NOTE: When adding a book here, make sure to ALSO build the book by
 // adding a build step in `src/bootstrap/builder.rs`!
 book!(
-    CargoBook, "src/tools/cargo/src/doc", "cargo";
     EditionGuide, "src/doc/edition-guide", "edition-guide";
     EmbeddedBook, "src/doc/embedded-book", "embedded-book";
     Nomicon, "src/doc/nomicon", "nomicon";
Index: rustc.git/src/doc/index.md
===================================================================
--- rustc.git.orig/src/doc/index.md
+++ rustc.git/src/doc/index.md
@@ -87,7 +87,7 @@ accomplishing various tasks.
 
 ## The Cargo Book
 
-[The Cargo Book](cargo/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
+[The Cargo Book](../../cargo-doc/doc/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
 
 ## The Rustdoc Book
 
Index: rustc.git/src/bootstrap/test.rs
===================================================================
--- rustc.git.orig/src/bootstrap/test.rs
+++ rustc.git/src/bootstrap/test.rs
@@ -1535,14 +1535,7 @@ impl Step for RustcGuide {
     }
 
     fn run(self, builder: &Builder<'_>) {
-        let src = builder.src.join("src/doc/rustc-dev-guide");
-        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);
     }
 }
 
Index: rustc.git/src/tools/tidy/src/deps.rs
===================================================================
--- rustc.git.orig/src/tools/tidy/src/deps.rs
+++ rustc.git/src/tools/tidy/src/deps.rs
@@ -370,8 +370,8 @@ fn check_crate_duplicate(metadata: &Meta
         // 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",
     ];
 
     for &name in FORBIDDEN_TO_HAVE_DUPLICATES {
