summaryrefslogtreecommitdiff
path: root/experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch
diff options
context:
space:
mode:
authorZach van Rijn <me@zv.io>2024-12-18 03:03:48 +0000
committerZach van Rijn <me@zv.io>2024-12-18 03:03:48 +0000
commit90c4ae64bb28a5e16eea6a85ddaef7d227ef11e7 (patch)
tree82cfad28f5fb8aab2216147ffb523dc1395b8db5 /experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch
parent803c617fc610d5872e32c08f362586d550d87701 (diff)
downloadpackages-zv/mrustc.tar.gz
packages-zv/mrustc.tar.bz2
packages-zv/mrustc.tar.xz
packages-zv/mrustc.zip
add adelie rust patches?zv/mrustc
Diffstat (limited to 'experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch')
-rw-r--r--experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch b/experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch
new file mode 100644
index 000000000..d379a1048
--- /dev/null
+++ b/experimental/mrustc/rustc-0006-Link-libssp_nonshared.a-on-all-musl-targets.patch
@@ -0,0 +1,28 @@
+From 5e7144b4963e6c733033738dbf5552c9ae0f19e3 Mon Sep 17 00:00:00 2001
+From: Samuel Holland <samuel@sholland.org>
+Date: Sun, 3 Nov 2019 17:01:32 -0600
+Subject: [PATCH 06/13] Link libssp_nonshared.a on all musl targets
+
+---
+ compiler/rustc_target/src/spec/linux_musl_base.rs | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/compiler/rustc_target/src/spec/linux_musl_base.rs b/compiler/rustc_target/src/spec/linux_musl_base.rs
+index 67d18c886eba5..f9be51095d6fc 100644
+--- a/compiler/rustc_target/src/spec/linux_musl_base.rs
++++ b/compiler/rustc_target/src/spec/linux_musl_base.rs
+@@ -1,10 +1,13 @@
+-use crate::spec::TargetOptions;
++use crate::spec::{Cc, LinkerFlavor, Lld, TargetOptions};
+
+ pub fn opts() -> TargetOptions {
+ let mut base = super::linux_base::opts();
+
+ base.env = "musl".into();
+
++ // libssp_nonshared.a is needed for __stack_chk_fail_local when using libc.so
++ base.add_post_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-lssp_nonshared"]);
++
+ // These targets statically link libc by default
+ base.crt_static_default = true;
+