diff -Nru abseil-0~20210324.2/debian/changelog abseil-0~20210324.2/debian/changelog --- abseil-0~20210324.2/debian/changelog 2022-04-14 17:20:16.000000000 +0000 +++ abseil-0~20210324.2/debian/changelog 2022-05-11 02:15:18.000000000 +0000 @@ -1,3 +1,11 @@ +abseil (0~20210324.2-3+rpi1) bookworm-staging; urgency=medium + + [changes brought forward from 0~20210324.2-2+rpi1 by Peter Michael Green at Fri, 25 Feb 2022 01:39:43 +0000] + * Disable TestArmThumbOverlap, it fails to build with a "sorry unimplemented" + error. + + -- Raspbian forward porter Wed, 11 May 2022 02:15:18 +0000 + abseil (0~20210324.2-3) unstable; urgency=medium * Backport an upstream patch to disable a problematic unit test. diff -Nru abseil-0~20210324.2/debian/patches/disable-testarmthumboverlap.patch abseil-0~20210324.2/debian/patches/disable-testarmthumboverlap.patch --- abseil-0~20210324.2/debian/patches/disable-testarmthumboverlap.patch 1970-01-01 00:00:00.000000000 +0000 +++ abseil-0~20210324.2/debian/patches/disable-testarmthumboverlap.patch 2022-05-11 02:15:18.000000000 +0000 @@ -0,0 +1,42 @@ +Description: Disable TestArmThumbOverlap on raspbian + TestArmThumbOverlap includes a pair of test functions, one built in arm mode + and the other built in thumb mode. + + unfortunately when configured for armv6 hardfloat, gcc refuses to build any + functions in thumb mode (even if they don't actually use floating point) +Author: Peter Michael Green + +Index: abseil-0~20210324.2/absl/debugging/symbolize_test.cc +=================================================================== +--- abseil-0~20210324.2.orig/absl/debugging/symbolize_test.cc ++++ abseil-0~20210324.2/absl/debugging/symbolize_test.cc +@@ -477,7 +477,7 @@ void ABSL_ATTRIBUTE_NOINLINE TestWithRet + #endif + } + +-#if defined(__arm__) && ABSL_HAVE_ATTRIBUTE(target) ++#if defined(__arm__) && ABSL_HAVE_ATTRIBUTE(target) && ((__ARM_ARCH >= 7) || !defined(__ARM_PCS_VFP)) + // Test that we correctly identify bounds of Thumb functions on ARM. + // + // Thumb functions have the lowest-order bit set in their addresses in the ELF +@@ -496,6 +496,11 @@ void ABSL_ATTRIBUTE_NOINLINE TestWithRet + // bit in the Thumb function's entry point. It will correctly compute the end of + // the Thumb function, it will find no overlap between the Thumb and ARM + // functions, and it will return the name of the ARM function. ++// ++// Unfortunately we cannot perform this test on armv6 or lower systems that use ++// the hard float ABI because gcc refuses to compile thumb functions on such ++// systems with a "sorry, unimplemented: Thumb-1 hard-float VFP ABI" error. ++ + + __attribute__((target("thumb"))) int ArmThumbOverlapThumb(int x) { + return x * x * x; +@@ -591,7 +596,7 @@ int main(int argc, char **argv) { + TestWithPCInsideInlineFunction(); + TestWithPCInsideNonInlineFunction(); + TestWithReturnAddress(); +-#if defined(__arm__) && ABSL_HAVE_ATTRIBUTE(target) ++#if defined(__arm__) && ABSL_HAVE_ATTRIBUTE(target) && ((__ARM_ARCH >= 7) || !defined(__ARM_PCS_VFP)) + TestArmThumbOverlap(); + #endif + #endif diff -Nru abseil-0~20210324.2/debian/patches/series abseil-0~20210324.2/debian/patches/series --- abseil-0~20210324.2/debian/patches/series 2022-04-14 17:16:07.000000000 +0000 +++ abseil-0~20210324.2/debian/patches/series 2022-05-11 02:15:18.000000000 +0000 @@ -16,3 +16,4 @@ disable-nominalcpufrequency-test.diff hppa-symbolize.diff str-format-convert-test-printf.diff +disable-testarmthumboverlap.patch