diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs index d5933789a6498..97e758f9b8238 100644 --- a/src/tools/build-manifest/src/main.rs +++ b/src/tools/build-manifest/src/main.rs @@ -474,7 +474,6 @@ impl Builder { // and so is rust-mingw if it's available for the target. components.extend(vec![ host_component("rustc"), - host_component("rustc-dev"), host_component("rust-std"), host_component("cargo"), host_component("rust-docs"), @@ -483,6 +482,15 @@ impl Builder { components.push(host_component("rust-mingw")); } + // The compiler libraries are not stable for end users, but `rustc-dev` was only recently + // split out of `rust-std`. We'll include it by default as a transition for nightly users, + // but ship it as an optional component on the beta and stable channels. + if self.rust_release == "nightly" { + components.push(host_component("rustc-dev")); + } else { + extensions.push(host_component("rustc-dev")); + } + // Tools are always present in the manifest, // but might be marked as unavailable if they weren't built. extensions.extend(vec![