From f599a46c68809ae66e3c1a27a8a2b499e55f74ad Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 13 Jun 2024 06:32:12 +0200 Subject: Merging debian version 1.75.0+dfsg1-5. Signed-off-by: Daniel Baumann --- debian/patches/u-hurd-backtrace.patch | 72 +++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 debian/patches/u-hurd-backtrace.patch (limited to 'debian/patches/u-hurd-backtrace.patch') diff --git a/debian/patches/u-hurd-backtrace.patch b/debian/patches/u-hurd-backtrace.patch new file mode 100644 index 000000000..7ac529937 --- /dev/null +++ b/debian/patches/u-hurd-backtrace.patch @@ -0,0 +1,72 @@ +https://github.com/rust-lang/backtrace-rs/pull/567 + +commit 11e0a4bdee2714a3711b3df1607dbe979119fd34 +Author: Samuel Thibault +Date: Sat Oct 7 01:45:09 2023 +0200 + + Add GNU/Hurd support (rust-lang/backtrace-rs#567) + +diff --git a/vendor/backtrace/src/symbolize/gimli.rs b/vendor/backtrace/src/symbolize/gimli.rs +index 5d2f627..3b28bf7 100644 +--- a/vendor/backtrace/src/symbolize/gimli.rs ++++ b/vendor/backtrace/src/symbolize/gimli.rs +@@ -35,6 +35,7 @@ cfg_if::cfg_if! { + target_os = "freebsd", + target_os = "fuchsia", + target_os = "haiku", ++ target_os = "hurd", + target_os = "ios", + target_os = "linux", + target_os = "macos", +@@ -231,6 +232,7 @@ cfg_if::cfg_if! { + target_os = "linux", + target_os = "fuchsia", + target_os = "freebsd", ++ target_os = "hurd", + target_os = "openbsd", + target_os = "netbsd", + all(target_os = "android", feature = "dl_iterate_phdr"), +diff --git a/vendor/backtrace/src/symbolize/gimli/elf.rs b/vendor/backtrace/src/symbolize/gimli/elf.rs +index b0eec07..906a300 100644 +--- a/vendor/backtrace/src/symbolize/gimli/elf.rs ++++ b/vendor/backtrace/src/symbolize/gimli/elf.rs +@@ -308,7 +308,7 @@ const DEBUG_PATH: &[u8] = b"/usr/lib/debug"; + + fn debug_path_exists() -> bool { + cfg_if::cfg_if! { +- if #[cfg(any(target_os = "freebsd", target_os = "linux"))] { ++ if #[cfg(any(target_os = "freebsd", target_os = "hurd", target_os = "linux"))] { + use core::sync::atomic::{AtomicU8, Ordering}; + static DEBUG_PATH_EXISTS: AtomicU8 = AtomicU8::new(0); + +diff --git a/vendor/backtrace/src/symbolize/gimli/libs_dl_iterate_phdr.rs b/vendor/backtrace/src/symbolize/gimli/libs_dl_iterate_phdr.rs +index 9f0304c..518512f 100644 +--- a/vendor/backtrace/src/symbolize/gimli/libs_dl_iterate_phdr.rs ++++ b/vendor/backtrace/src/symbolize/gimli/libs_dl_iterate_phdr.rs +@@ -18,14 +18,18 @@ pub(super) fn native_libraries() -> Vec { + } + + fn infer_current_exe(base_addr: usize) -> OsString { +- if let Ok(entries) = super::parse_running_mmaps::parse_maps() { +- let opt_path = entries +- .iter() +- .find(|e| e.ip_matches(base_addr) && e.pathname().len() > 0) +- .map(|e| e.pathname()) +- .cloned(); +- if let Some(path) = opt_path { +- return path; ++ cfg_if::cfg_if! { ++ if #[cfg(not(target_os = "hurd"))] { ++ if let Ok(entries) = super::parse_running_mmaps::parse_maps() { ++ let opt_path = entries ++ .iter() ++ .find(|e| e.ip_matches(base_addr) && e.pathname().len() > 0) ++ .map(|e| e.pathname()) ++ .cloned(); ++ if let Some(path) = opt_path { ++ return path; ++ } ++ } + } + } + env::current_exe().map(|e| e.into()).unwrap_or_default() -- cgit v1.2.3