diff options
Diffstat (limited to 'community/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch')
-rw-r--r-- | community/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/community/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch b/community/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch new file mode 100644 index 0000000000..632717f56b --- /dev/null +++ b/community/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch @@ -0,0 +1,20 @@ +Replaces an older patch by Samuel Holland. The RUSTC_NO_PREFER_DYNAMIC +env var was removed and replaced with the following logic in builder.rs. + +The idea for this patch is to link stage2 tools dynamically as these will +be distributed (if built). Intermediate tools from previous stages will +be statically linked for convenience. + +@q66 + +--- a/src/bootstrap/builder.rs ++++ b/src/bootstrap/builder.rs +@@ -1228,6 +1228,8 @@ impl<'a> Builder<'a> { + // linking all deps statically into the dylib. + if let Mode::Std | Mode::Rustc | Mode::Codegen = mode { + rustflags.arg("-Cprefer-dynamic"); ++ } else if stage >= 2 { ++ rustflags.arg("-Cprefer-dynamic"); + } + + Cargo { |