--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: buster-pu: package libunwind/1.2.1-10~deb10u1
- From: Adrian Bunk <bunk@debian.org>
- Date: Thu, 23 Jul 2020 23:43:11 +0300
- Message-id: <159553699113.5161.14670932165199338901.reportbug@localhost>
Package: release.debian.org
Severity: normal
Tags: buster
User: release.debian.org@packages.debian.org
Usertags: pu
This unbreaks libunwind on big endian mips, and disables
the C++ exception support on architectures where it was
broken (the latter was most visible on arm64).
diff -Nru libunwind-1.2.1/debian/changelog libunwind-1.2.1/debian/changelog
--- libunwind-1.2.1/debian/changelog 2019-03-01 20:03:05.000000000 +0200
+++ libunwind-1.2.1/debian/changelog 2020-07-23 22:00:53.000000000 +0300
@@ -1,3 +1,19 @@
+libunwind (1.2.1-10~deb10u1) buster; urgency=medium
+
+ * Rebuild on buster.
+
+ -- Adrian Bunk <bunk@debian.org> Thu, 23 Jul 2020 22:00:53 +0300
+
+libunwind (1.2.1-10) unstable; urgency=high
+
+ * Manually enable C++ exception support only on i386 and amd64,
+ it is known broken on several other architectures.
+ Thanks to Bernhard Übelacker. (Closes: #923962)
+ * Backport upstream fix for segfaults on mips,
+ thanks to Guillaume Tucker. (Closes: #932725)
+
+ -- Adrian Bunk <bunk@debian.org> Wed, 22 Jul 2020 09:31:48 +0300
+
libunwind (1.2.1-9) unstable; urgency=medium
* Backport some fixes wanted by julia:
diff -Nru libunwind-1.2.1/debian/patches/0001-tdep_uc_addr-use-4-offset-for-UNW_MIPS_PC-on-MIPS-be.patch libunwind-1.2.1/debian/patches/0001-tdep_uc_addr-use-4-offset-for-UNW_MIPS_PC-on-MIPS-be.patch
--- libunwind-1.2.1/debian/patches/0001-tdep_uc_addr-use-4-offset-for-UNW_MIPS_PC-on-MIPS-be.patch 1970-01-01 02:00:00.000000000 +0200
+++ libunwind-1.2.1/debian/patches/0001-tdep_uc_addr-use-4-offset-for-UNW_MIPS_PC-on-MIPS-be.patch 2020-07-21 21:37:18.000000000 +0300
@@ -0,0 +1,29 @@
+From fd44f596b2dad70acdc81cc76983585f888e045d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=D0=9A=D0=BE=D1=80=D0=BE=D0=BB=D0=B5=D0=B2=20=D0=A1=D0=B5?=
+ =?UTF-8?q?=D1=80=D0=B3=D0=B5=D0=B9?= <korolev.sergey@gmail.com>
+Date: Wed, 22 Jun 2016 19:53:02 +0300
+Subject: tdep_uc_addr: use +4 offset for UNW_MIPS_PC on MIPS (be)
+
+According to mcontext_t definition its "pc" field
+is also 64 bit wide and thus requires 4 byte offset
+on MIPS32 (be).
+---
+ src/mips/Ginit.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/mips/Ginit.c b/src/mips/Ginit.c
+index 8290c408..83b100fb 100644
+--- a/src/mips/Ginit.c
++++ b/src/mips/Ginit.c
+@@ -59,7 +59,7 @@ tdep_uc_addr (ucontext_t *uc, int reg)
+ {
+ char *addr = uc_addr (uc, reg);
+
+- if (reg >= UNW_MIPS_R0 && reg <= UNW_MIPS_R31
++ if (((reg >= UNW_MIPS_R0 && reg <= UNW_MIPS_R31) || reg == UNW_MIPS_PC)
+ && tdep_big_endian (unw_local_addr_space)
+ && unw_local_addr_space->abi == UNW_MIPS_ABI_O32)
+ addr += 4;
+--
+2.20.1
+
diff -Nru libunwind-1.2.1/debian/patches/series libunwind-1.2.1/debian/patches/series
--- libunwind-1.2.1/debian/patches/series 2019-03-01 20:03:05.000000000 +0200
+++ libunwind-1.2.1/debian/patches/series 2020-07-21 21:37:27.000000000 +0300
@@ -9,6 +9,7 @@
0001-arm-Handle-non-signal-frame-unwind-info-lookup-in-AR.patch
0001-dwarf-Allow-DWARF-version-both-3-and-4-56.patch
0001-aarch64-Use-__asm__-instead-of-asm-89.patch
+0001-tdep_uc_addr-use-4-offset-for-UNW_MIPS_PC-on-MIPS-be.patch
# ia64
libunwind-1.2-coredump-regs.patch
diff -Nru libunwind-1.2.1/debian/rules libunwind-1.2.1/debian/rules
--- libunwind-1.2.1/debian/rules 2018-04-10 20:03:57.000000000 +0300
+++ libunwind-1.2.1/debian/rules 2020-07-22 09:31:48.000000000 +0300
@@ -6,6 +6,10 @@
export DEB_BUILD_MAINT_OPTIONS = hardening=-all,+format
+ifneq (,$(filter $(DEB_HOST_ARCH), amd64 i386))
+ CXX_EXCEPTIONS=--enable-cxx-exceptions
+endif
+
%:
dh $@
@@ -20,7 +24,7 @@
sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' $< > $@
override_dh_auto_configure:
- dh_auto_configure -- --with-pic --enable-cxx-exceptions --includedir=\$${prefix}/include/$(DEB_HOST_MULTIARCH)
+ dh_auto_configure -- --with-pic $(CXX_EXCEPTIONS) --includedir=\$${prefix}/include/$(DEB_HOST_MULTIARCH)
override_dh_install:
dh_install
--- End Message ---