void-packages/srcpkgs/rust/patches/0009-Link-stage2-tools-dynamically-to-libstd.patch
q66 2cab55965b rust: update to 1.43.1, switch to llvm10
Also remove option static_llvm and add option bindist, which
helps simplify building bootstrap tarballs.
2020-05-24 21:55:49 +02:00

31 lines
1.1 KiB
Diff

From f5dad49f112151bb0ee74570e971bd475cbec128 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 3 May 2020 18:00:09 +0200
Subject: [PATCH 09/15] Link stage2 tools dynamically to libstd
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.
---
src/bootstrap/builder.rs | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
index eb0199fd..0ec7cbd8 100644
--- a/src/bootstrap/builder.rs
+++ b/src/bootstrap/builder.rs
@@ -1236,6 +1236,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");
}
// When building incrementally we default to a lower ThinLTO import limit
--
2.26.2