about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2016-04-20 14:58:20 -0700
committerbors <bors@rust-lang.org>2016-04-20 14:58:20 -0700
commit95545e7adcf1715eff2a31a53fe25ce2b012e62b (patch)
tree3dea305b415b204132539c1e054e485a83350978
parenta0c325980367d5ee981145e31c70585acee40cd2 (diff)
parent6ff8f4a34aef7fa94900743e233ec41845738fc0 (diff)
downloadrust-95545e7adcf1715eff2a31a53fe25ce2b012e62b.tar.gz
rust-95545e7adcf1715eff2a31a53fe25ce2b012e62b.zip
Auto merge of #33011 - alexcrichton:pkg-everything, r=brson
rustbuild: Package librustc & co for cross-hosts

Currently the `rust-std` package produced by rustbuild only contains the
standard library plus libtest, but the makefiles actually produce a `rust-std`
package with all known target libraries (including libsyntax, librustc, etc).
Tweak the behavior so the dependencies of the `dist-docs` step in rustbuild
depend on the compiler libraries as well (so that they're all packaged).

Closes #32984
-rw-r--r--src/bootstrap/build/step.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/bootstrap/build/step.rs b/src/bootstrap/build/step.rs
index a22b28a6cdd..e58ece0ab48 100644
--- a/src/bootstrap/build/step.rs
+++ b/src/bootstrap/build/step.rs
@@ -405,7 +405,14 @@ impl<'a> Step<'a> {
                 vec![self.rustc(stage)]
             }
             Source::DistStd { compiler } => {
-                vec![self.libtest(compiler)]
+                // We want to package up as many target libraries as possible
+                // for the `rust-std` package, so if this is a host target we
+                // depend on librustc and otherwise we just depend on libtest.
+                if build.config.host.iter().any(|t| t == self.target) {
+                    vec![self.librustc(compiler)]
+                } else {
+                    vec![self.libtest(compiler)]
+                }
             }
 
             Source::Dist { stage } => {