X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fbootstrap%2Fbuilder.rs;h=761bd66b5057bb931ee1b0ac9d131a8da2855cb8;hb=e5cf3cb97d228f7c5ac691ebf3f754bec5a92852;hp=7d838c0a61d22f521012c1a787564949d1c6a715;hpb=c51871c469f7ed3b35ae25d7e6e77bc73fbdd0e3;p=rust.git diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index 7d838c0a61d..761bd66b505 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs @@ -1154,9 +1154,13 @@ pub fn cargo( // backtrace, core_simd, std_float, ...), those dependencies have their own features // but cargo isn't involved in the #[path] and so cannot pass the complete list of // features, so for that reason we don't enable checking of features for std. - if mode != Mode::Std { - cargo.arg("-Zcheck-cfg-features"); - } + // + // FIXME: Re-enable this after the beta bump as apperently rustc-perf doesn't use the + // beta cargo. See https://github.com/rust-lang/rust/pull/96984#issuecomment-1126678773 + // #[cfg(not(bootstrap))] + // if mode != Mode::Std { + // cargo.arg("-Zcheck-cfg-features"); // -Zcheck-cfg=features after bump + // } // Enable cfg checking of well known names/values rustflags @@ -1222,6 +1226,14 @@ pub fn cargo( // this), as well as #63012 which is the tracking issue for this // feature on the rustc side. cargo.arg("-Zbinary-dep-depinfo"); + match mode { + Mode::ToolBootstrap => { + // Restrict the allowed features to those passed by rustbuild, so we don't depend on nightly accidentally. + // HACK: because anyhow does feature detection in build.rs, we need to allow the backtrace feature too. + rustflags.arg("-Zallow-features=binary-dep-depinfo,backtrace"); + } + Mode::Std | Mode::Rustc | Mode::ToolStd | Mode::Codegen | Mode::ToolRustc => {} + } cargo.arg("-j").arg(self.jobs().to_string()); // Remove make-related flags to ensure Cargo can correctly set things up