aports/main/rust/need-ssp_nonshared.patch
2025-12-14 11:09:55 +00:00

29 lines
865 B
Diff

this is needed for libssp-less __stack_chk_fail_local (on x86),
the other Bdynamic patch seems to break the top hunk,
so we need the bottom hack
--- a/compiler/rustc_llvm/build.rs
+++ b/compiler/rustc_llvm/build.rs
@@ -118,6 +118,8 @@ fn main() {
return;
}
+ println!("cargo:rustc-link-lib=ssp_nonshared");
+
restore_library_path();
let llvm_config =
--- a/library/std/src/sys/pal/unix/mod.rs
+++ b/library/std/src/sys/pal/unix/mod.rs
@@ -373,6 +373,10 @@ cfg_select! {
#[link(name = "log", cfg(not(target_feature = "crt-static")))]
unsafe extern "C" {}
}
+ all(target_os = "linux", target_env = "musl") => {
+ #[link(name = "ssp_nonshared", kind = "static")]
+ unsafe extern "C" {}
+ }
target_os = "freebsd" => {
#[link(name = "execinfo")]
#[link(name = "pthread")]