about summary refs log tree commit diff
path: root/src/bootstrap
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2018-04-01 21:06:35 +0200
committerGuillaume Gomez <guillaume1.gomez@gmail.com>2018-04-16 23:37:11 +0200
commitb2192ae157eab3b83d7cbc42d2e08925cbdfd8b6 (patch)
treebb68db0f1f320836898202494ad2140ecef13ae3 /src/bootstrap
parenta6fefdecdfff6641111ff6446f73d8364459e1f0 (diff)
downloadrust-b2192ae157eab3b83d7cbc42d2e08925cbdfd8b6.tar.gz
rust-b2192ae157eab3b83d7cbc42d2e08925cbdfd8b6.zip
Add rustdoc-ui test suite
Diffstat (limited to 'src/bootstrap')
-rw-r--r--src/bootstrap/builder.rs2
-rw-r--r--src/bootstrap/test.rs28
2 files changed, 22 insertions, 8 deletions
diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
index 7ff64af9196..d30933d2efd 100644
--- a/src/bootstrap/builder.rs
+++ b/src/bootstrap/builder.rs
@@ -326,7 +326,7 @@ impl<'a> Builder<'a> {
                 test::TheBook, test::UnstableBook,
                 test::Rustfmt, test::Miri, test::Clippy, test::RustdocJS, test::RustdocTheme,
                 // Run run-make last, since these won't pass without make on Windows
-                test::RunMake),
+                test::RunMake, test::RustdocUi),
             Kind::Bench => describe!(test::Crate, test::CrateLibrustc),
             Kind::Doc => describe!(doc::UnstableBook, doc::UnstableBookGen, doc::TheBook,
                 doc::Standalone, doc::Std, doc::Test, doc::WhitelistedRustc, doc::Rustc,
diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs
index e7610976f8e..992dec5217d 100644
--- a/src/bootstrap/test.rs
+++ b/src/bootstrap/test.rs
@@ -886,8 +886,12 @@ impl Step for Compiletest {
         cmd.arg("--run-lib-path").arg(builder.sysroot_libdir(compiler, target));
         cmd.arg("--rustc-path").arg(builder.rustc(compiler));
 
+        let is_rustdoc_ui = suite.ends_with("rustdoc-ui");
+
         // Avoid depending on rustdoc when we don't need it.
-        if mode == "rustdoc" || (mode == "run-make" && suite.ends_with("fulldeps")) {
+        if mode == "rustdoc" ||
+           (mode == "run-make" && suite.ends_with("fulldeps")) ||
+           (mode == "ui" && is_rustdoc_ui) {
             cmd.arg("--rustdoc-path").arg(builder.rustdoc(compiler.host));
         }
 
@@ -903,14 +907,24 @@ impl Step for Compiletest {
             cmd.arg("--nodejs").arg(nodejs);
         }
 
-        let mut flags = vec!["-Crpath".to_string()];
-        if build.config.rust_optimize_tests {
-            flags.push("-O".to_string());
+        let mut flags = if is_rustdoc_ui {
+            Vec::new()
+        } else {
+            vec!["-Crpath".to_string()]
+        };
+        if !is_rustdoc_ui {
+            if build.config.rust_optimize_tests {
+                flags.push("-O".to_string());
+            }
+            if build.config.rust_debuginfo_tests {
+                flags.push("-g".to_string());
+            }
         }
-        if build.config.rust_debuginfo_tests {
-            flags.push("-g".to_string());
+        if !is_rustdoc_ui {
+            flags.push("-Zmiri -Zunstable-options".to_string());
+        } else {
+            flags.push("-Zunstable-options".to_string());
         }
-        flags.push("-Zunstable-options".to_string());
         flags.push(build.config.cmd.rustc_args().join(" "));
 
         if let Some(linker) = build.linker(target) {