about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoshua Nelson <jnelson@cloudflare.com>2022-04-27 21:47:58 -0500
committerJoshua Nelson <jnelson@cloudflare.com>2022-04-27 21:47:58 -0500
commit2f287d6a3e200197919e5372ac74abb66ce038ad (patch)
treec77bf5162c8c73ca04abaf5a13bba9432d21c946
parent18f314e7027fe7084aaab8620c624a0d7bd29e70 (diff)
downloadrust-2f287d6a3e200197919e5372ac74abb66ce038ad.tar.gz
rust-2f287d6a3e200197919e5372ac74abb66ce038ad.zip
Make it possible to write doctests for bootstrap
This probably isn't super useful in practice, but it was easy to fix
and avoids confusing errors about mismatched versions between beta and the default toolchain.
-rw-r--r--src/bootstrap/test.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs
index 9c376602d28..af84a800721 100644
--- a/src/bootstrap/test.rs
+++ b/src/bootstrap/test.rs
@@ -2362,6 +2362,7 @@ impl Step for Bootstrap {
             .env("RUSTFLAGS", "-Cdebuginfo=2")
             .env("CARGO_TARGET_DIR", builder.out.join("bootstrap"))
             .env("RUSTC_BOOTSTRAP", "1")
+            .env("RUSTDOC", builder.rustdoc(builder.compiler(0, builder.build.build)))
             .env("RUSTC", &builder.initial_rustc);
         if let Some(flags) = option_env!("RUSTFLAGS") {
             // Use the same rustc flags for testing as for "normal" compilation,
@@ -2372,6 +2373,16 @@ impl Step for Bootstrap {
         if !builder.fail_fast {
             cmd.arg("--no-fail-fast");
         }
+        match builder.doc_tests {
+            DocTests::Only => {
+                cmd.arg("--doc");
+            }
+            DocTests::No => {
+                cmd.args(&["--lib", "--bins", "--examples", "--tests", "--benches"]);
+            }
+            DocTests::Yes => {}
+        }
+
         cmd.arg("--").args(&builder.config.cmd.test_args());
         // rustbuild tests are racy on directory creation so just run them one at a time.
         // Since there's not many this shouldn't be a problem.