summaryrefslogtreecommitdiff
path: root/dev-lang/rust/files/1.85.0-cross-compile-libz.patch
diff options
context:
space:
mode:
authorMatt Jolly <kangie@gentoo.org>2025-02-09 22:01:08 +1000
committerArthur Zamarin <arthurzam@gentoo.org>2025-02-21 13:13:15 +0200
commitb62ffec304298fbf88bdfaf1d4ca7590866e39c2 (patch)
tree6b8d0dc16d5312207c7a0b380b74665896e5bd58 /dev-lang/rust/files/1.85.0-cross-compile-libz.patch
parent2b197ab19755a400e431a3f0976f8093bac5c1b6 (diff)
downloadgentoo-b62ffec304298fbf88bdfaf1d4ca7590866e39c2.tar.gz
gentoo-b62ffec304298fbf88bdfaf1d4ca7590866e39c2.tar.bz2
gentoo-b62ffec304298fbf88bdfaf1d4ca7590866e39c2.zip
dev-lang/rust: add `beta` and `nightly` channels
While currently unkeyworded, the intent is that eventually `beta` will only ever be keyworded `testing` (i.e. not stabilised) and will enable us to catch regressions on esoteric systems and report them upstream before a stable release is cut (and we have to do the same thing anyway, but with revbumps). All `beta` channel releases will share a single `SLOT`, i.e. 1.85.0_beta20250208 has `SLOT` 1.85.0, the same as the eventual `stable` release. Installing different `beta` releases side-by-side is not supported via Portage (and it's unlikely that they will stay in-tree for long once superseded). This enables straightforward `ver_test` comparisons to reflect a particular 'version'. `nightly` is a VCS sources ebuild template which will soon be the only way to get `nightly` Rust via Portage (from source, anyway, a followup commit will add a 'dev-lang/rust-bin' nightly binary release, using upstream infrastructure). Nightly can only be built by the `beta` channel release. Signed-off-by: Matt Jolly <kangie@gentoo.org> unkeyword betas Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'dev-lang/rust/files/1.85.0-cross-compile-libz.patch')
-rw-r--r--dev-lang/rust/files/1.85.0-cross-compile-libz.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/dev-lang/rust/files/1.85.0-cross-compile-libz.patch b/dev-lang/rust/files/1.85.0-cross-compile-libz.patch
new file mode 100644
index 000000000000..7bd45c4e09e5
--- /dev/null
+++ b/dev-lang/rust/files/1.85.0-cross-compile-libz.patch
@@ -0,0 +1,26 @@
+From 768f7e50a6d9a3db4e4eef45dcb4c56e9b580389 Mon Sep 17 00:00:00 2001
+From: Matt Jolly <kangie@gentoo.org>
+Date: Sun, 9 Feb 2025 21:12:43 +1000
+Subject: [PATCH] Update libz cross-compile patch for 9999 (1.86.0)
+
+See-also: https://paste.sr.ht/~kchibisov/682321e0fd4a3ece4a4b7b71591896f5cd3cdb22
+See-also: https://github.com/gentoo/gentoo/pull/35246#discussion_r1484525497
+--- a/compiler/rustc_llvm/build.rs
++++ b/compiler/rustc_llvm/build.rs
+@@ -219,13 +219,7 @@ fn main() {
+ // of llvm-config, not the target that we're attempting to link.
+ let mut cmd = Command::new(&llvm_config);
+ cmd.arg(llvm_link_arg).arg("--libs");
+-
+- // Don't link system libs if cross-compiling unless targeting Windows.
+- // On Windows system DLLs aren't linked directly, instead import libraries are used.
+- // These import libraries are independent of the host.
+- if !is_crossed || target.contains("windows") {
+- cmd.arg("--system-libs");
+- }
++ cmd.arg("--system-libs");
+
+ // We need libkstat for getHostCPUName on SPARC builds.
+ // See also: https://github.com/llvm/llvm-project/issues/64186
+--
+2.48.0