diff -Nru abseil-0~20210324.2/debian/changelog abseil-0~20210324.2/debian/changelog --- abseil-0~20210324.2/debian/changelog 2022-05-27 20:58:38.000000000 +0000 +++ abseil-0~20210324.2/debian/changelog 2022-06-15 14:44:52.000000000 +0000 @@ -1,3 +1,11 @@ +abseil (0~20210324.2-4+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, 15 Jun 2022 14:44:52 +0000 + abseil (0~20210324.2-4) unstable; urgency=medium * Fix "spurious -Wl flag in some pkg-config entries" by backporting a 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-06-15 14:44:52.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-05-27 20:54:23.000000000 +0000 +++ abseil-0~20210324.2/debian/patches/series 2022-06-15 14:44:52.000000000 +0000 @@ -17,3 +17,4 @@ hppa-symbolize.diff str-format-convert-test-printf.diff pkg-config-libs-generation.diff +disable-testarmthumboverlap.patch