about summary refs log tree commit diff
path: root/src/bootstrap
diff options
context:
space:
mode:
authorSamuel Holland <samuel@sholland.org>2017-08-22 16:24:29 -0500
committerSamuel Holland <samuel@sholland.org>2017-08-22 16:24:29 -0500
commit1757a8701dfbc8627cce3a2f3624e39f525b8275 (patch)
tree51fb97a397ac174cf7b457b81cf8a6531b6fbfd5 /src/bootstrap
parent15c141ce05793e9907aaf766d08eeaeb65788140 (diff)
Improve explanation of musl_root
Diffstat (limited to 'src/bootstrap')
-rw-r--r--src/bootstrap/compile.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
index 78bc225447b..5b03608f687 100644
--- a/src/bootstrap/compile.rs
+++ b/src/bootstrap/compile.rs
@@ -210,7 +210,10 @@ impl Step for StdLink {
 
 /// Copies the crt(1,i,n).o startup objects
 ///
-/// Only required for musl targets that statically link to libc
+/// Since musl supports fully static linking, we can cross link for it even
+/// with a glibc-targeting toolchain, given we have the appropriate startup
+/// files. As those shipped with glibc won't work, copy the ones provided by
+/// musl so we have them on linux-gnu hosts.
 fn copy_musl_third_party_objects(build: &Build, target: Interned<String>, into: &Path) {
     for &obj in &["crt1.o", "crti.o", "crtn.o"] {
         copy(&build.musl_root(target).unwrap().join("lib").join(obj), &into.join(obj));