#1 Update to 20211102.0 (close RHBZ#2019691)
Merged 2 years ago by music. Opened 2 years ago by music.
rpms/ music/abseil-cpp v20211102.0  into  rawhide

file modified
+1
@@ -2,3 +2,4 @@ 

  /abseil-cpp-20200923.2.tar.gz

  /abseil-cpp-20200923.3.tar.gz

  /abseil-cpp-20210324.2.tar.gz

+ /abseil-cpp-20211102.0.tar.gz

@@ -1,26 +0,0 @@ 

- diff -up ./CMakeLists.txt.2 ./CMakeLists.txt

- --- ./CMakeLists.txt.2	2021-04-20 12:55:14.000000000 -0400

- +++ ./CMakeLists.txt	2021-05-21 22:26:12.910191071 -0400

- @@ -127,6 +127,22 @@ if(BUILD_TESTING)

-        set(absl_gtest_src_dir ${ABSL_LOCAL_GOOGLETEST_DIR})

-      endif()

-      include(CMake/Googletest/DownloadGTest.cmake)

- +  else()

- +    # Set up gtest targets

- +    find_library(GTEST_LIB gtest)

- +    add_library(gtest UNKNOWN IMPORTED)

- +    set_target_properties(gtest PROPERTIES IMPORTED_LOCATION ${GTEST_LIB})

- +    find_library(GTEST_MAIN_LIB gtest_main)

- +    add_library(gtest_main UNKNOWN IMPORTED)

- +    set_target_properties(gtest_main PROPERTIES IMPORTED_LOCATION ${GTEST_MAIN_LIB} INTERFACE_LINK_LIBRARIES gtest)

- +    

- +    # Set up gmock targets

- +    find_library(GMOCK_LIB gmock)

- +    add_library(gmock UNKNOWN IMPORTED)

- +    set_target_properties(gmock PROPERTIES IMPORTED_LOCATION ${GMOCK_LIB} INTERFACE_LINK_LIBRARIES gtest)

- +    find_library(GMOCK_MAIN_LIB gmock_main)

- +    add_library(gmock_main UNKNOWN IMPORTED)

- +    set_target_properties(gmock_main PROPERTIES IMPORTED_LOCATION ${GMOCK_MAIN_LIB} INTERFACE_LINK_LIBRARIES "gmock;Threads::Threads")

-    endif()

-  

-    check_target(gtest)

@@ -1,19 +0,0 @@ 

- diff -up ./absl/base/internal/sysinfo_test.cc.armv7 ./absl/base/internal/sysinfo_test.cc

- --- ./absl/base/internal/sysinfo_test.cc.armv7	2021-06-09 21:54:44.503755718 -0400

- +++ ./absl/base/internal/sysinfo_test.cc	2021-06-09 22:56:14.459611843 -0400

- @@ -43,13 +43,13 @@ TEST(SysinfoTest, NumCPUs) {

-  // POWER is particularly problematic here; some Linux kernels expose the CPU

-  // frequency, while others do not. Since we can't predict a priori what a given

-  // machine is going to do, just disable this test on POWER on Linux.

- -#if !(defined(__linux) && (defined(__ppc64__) || defined(__PPC64__)))

- +#if !(defined(__linux) && (defined(__ppc64__) || defined(__PPC64__) || defined(__aarch64__) || defined(__arm__)))

-  TEST(SysinfoTest, NominalCPUFrequency) {

-    // Linux only exposes the CPU frequency on certain architectures, and

-    // Emscripten doesn't expose it at all.

-  #if defined(__linux__) &&                                                  \

-          (defined(__aarch64__) || defined(__hppa__) || defined(__mips__) || \

- -         defined(__riscv) || defined(__s390x__)) ||                        \

- +         defined(__riscv) || defined(__s390x__))                     ||    \

-      defined(__EMSCRIPTEN__)

-    EXPECT_EQ(NominalCPUFrequency(), 1.0)

-        << "CPU frequency detection was fixed! Please update unittest.";

@@ -0,0 +1,111 @@ 

+ diff -Naur abseil-cpp-20211102.0-original/absl/strings/internal/cord_rep_btree_test.cc abseil-cpp-20211102.0/absl/strings/internal/cord_rep_btree_test.cc

+ --- abseil-cpp-20211102.0-original/absl/strings/internal/cord_rep_btree_test.cc	2021-11-03 11:26:14.000000000 -0400

+ +++ abseil-cpp-20211102.0/absl/strings/internal/cord_rep_btree_test.cc	2021-12-17 08:44:54.254485697 -0500

+ @@ -59,7 +59,6 @@

+  using ::testing::_;

+  using ::testing::AllOf;

+  using ::testing::AnyOf;

+ -using ::testing::Conditional;

+  using ::testing::ElementsAre;

+  using ::testing::ElementsAreArray;

+  using ::testing::Eq;

+ @@ -381,7 +380,6 @@

+      flats.push_back(MakeHexFlat(i));

+      auto* result = CordRepBtree::Append(leaf, flats.back());

+      EXPECT_THAT(result->height(), Eq(0));

+ -    EXPECT_THAT(result, Conditional(shared(), Ne(leaf), Eq(leaf)));

+      EXPECT_THAT(result->Edges(), ElementsAreArray(flats));

+      leaf = result;

+    }

+ @@ -399,7 +397,6 @@

+      flats.push_front(MakeHexFlat(i));

+      auto* result = CordRepBtree::Prepend(leaf, flats.front());

+      EXPECT_THAT(result->height(), Eq(0));

+ -    EXPECT_THAT(result, Conditional(shared(), Ne(leaf), Eq(leaf)));

+      EXPECT_THAT(result->Edges(), ElementsAreArray(flats));

+      leaf = result;

+    }

+ @@ -426,7 +423,6 @@

+        result = CordRepBtree::Append(leaf, flats.back());

+      }

+      EXPECT_THAT(result->height(), Eq(0));

+ -    EXPECT_THAT(result, Conditional(shared(), Ne(leaf), Eq(leaf)));

+      EXPECT_THAT(result->Edges(), ElementsAreArray(flats));

+      leaf = result;

+    }

+ @@ -483,7 +479,6 @@

+      flats.push_back(MakeHexFlat(i));

+      CordRepBtree* result = CordRepBtree::Append(tree, flats.back());

+      ASSERT_THAT(result, IsNode(1));

+ -    ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+      std::vector<CordRep*> edges = GetLeafEdges(result);

+      ASSERT_THAT(edges, ElementsAreArray(flats));

+      tree = result;

+ @@ -514,7 +509,6 @@

+      flats.push_back(MakeHexFlat(i));

+      CordRepBtree* result = CordRepBtree::Append(tree, flats.back());

+      ASSERT_THAT(result, IsNode(2));

+ -    ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+      std::vector<CordRep*> edges = GetLeafEdges(result);

+      ASSERT_THAT(edges, ElementsAreArray(flats));

+      tree = result;

+ @@ -544,7 +538,6 @@

+      flats.push_front(MakeHexFlat(i));

+      CordRepBtree* result = CordRepBtree::Prepend(tree, flats.front());

+      ASSERT_THAT(result, IsNode(1));

+ -    ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+      std::vector<CordRep*> edges = GetLeafEdges(result);

+      ASSERT_THAT(edges, ElementsAreArray(flats));

+      tree = result;

+ @@ -575,7 +568,6 @@

+      flats.push_front(MakeHexFlat(i));

+      CordRepBtree* result = CordRepBtree::Prepend(tree, flats.front());

+      ASSERT_THAT(result, IsNode(2));

+ -    ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+      std::vector<CordRep*> edges = GetLeafEdges(result);

+      ASSERT_THAT(edges, ElementsAreArray(flats));

+      tree = result;

+ @@ -889,7 +881,6 @@

+      for (size_t i = 1; i < n; ++i) {

+        refs.RefIf(shared(), leaf);

+        CordRepBtree* result = BtreeAdd(leaf, append, consumer.Next(3));

+ -      EXPECT_THAT(result, Conditional(shared(), Ne(leaf), Eq(leaf)));

+        EXPECT_THAT(CordToString(result), Eq(consumer.Consumed()));

+        leaf = result;

+      }

+ @@ -905,9 +896,6 @@

+    CordRepBtree* leaf0 = tree->Edges()[0]->btree();

+    CordRepBtree* leaf1 = tree->Edges()[1]->btree();

+    CordRepBtree* result = CordRepBtree::Append(tree, "123456789");

+ -  EXPECT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+ -  EXPECT_THAT(result->Edges(),

+ -              ElementsAre(leaf0, Conditional(shared(), Ne(leaf1), Eq(leaf1))));

+    EXPECT_THAT(CordToString(result), Eq(data + "123456789"));

+    CordRep::Unref(result);

+  }

+ @@ -920,9 +908,6 @@

+    CordRepBtree* leaf0 = tree->Edges()[0]->btree();

+    CordRepBtree* leaf1 = tree->Edges()[1]->btree();

+    CordRepBtree* result = CordRepBtree::Prepend(tree, "123456789");

+ -  EXPECT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+ -  EXPECT_THAT(result->Edges(),

+ -              ElementsAre(Conditional(shared(), Ne(leaf0), Eq(leaf0)), leaf1));

+    EXPECT_THAT(CordToString(result), Eq("123456789" + data));

+    CordRep::Unref(result);

+  }

+ @@ -954,7 +939,6 @@

+      for (size_t i = max_cap + 1; i < max_cap * max_cap; ++i) {

+        refs.RefIf(shared(), tree);

+        result = BtreeAdd(tree, append, consumer.Next(3));

+ -      ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+        ASSERT_THAT(CordToString(result), Eq(consumer.Consumed()));

+        tree = result;

+      }

+ @@ -970,7 +954,6 @@

+           ++i) {

+        refs.RefIf(shared(), tree);

+        result = BtreeAdd(tree, append, consumer.Next(3));

+ -      ASSERT_THAT(result, Conditional(shared(), Ne(tree), Eq(tree)));

+        ASSERT_THAT(CordToString(result), Eq(consumer.Consumed()));

+        tree = result;

+      }

file modified
+76 -24
@@ -1,34 +1,27 @@ 

- # Force out of source build

- %undefine __cmake_in_source_build

- 

  # Installed library version

- %global lib_version 2103.0.1

+ %global lib_version 2111.0.0

  

  Name:           abseil-cpp

- Version:        20210324.2

- Release:        4%{?dist}

+ Version:        20211102.0

+ Release:        1%{?dist}

  Summary:        C++ Common Libraries

  

  License:        ASL 2.0

  URL:            https://abseil.io

  Source0:        https://github.com/abseil/abseil-cpp/archive/%{version}/%{name}-%{version}.tar.gz

  

- # Set up system gtest and gmock targets to allow test suite to be built.

- # abseil-cpp expects the targets to be created by a bundled copy of gtest/gmock.

- # This patch replicates those targets via find_library and imported targets.

- # Not submitted upstream.

- Patch1:         abseil-cpp-20210324-gtest.patch

- 

- # Disable CPU frequency detection on armv7hl architectures.

- # Makes test consistent with aarch64 CPUs.

- # Not submitted upstream.

- Patch2:         abseil-cpp-20210324.2-armv7.patch

+ # Remove test assertions that use ::testing::Conditional, which is not in a

+ # released version of GTest. Not submitted upstream, as this is a workaround

+ # rather than a fix. https://github.com/abseil/abseil-cpp/issues/1063

+ Patch0:         abseil-cpp-20211102.0-gtest-unreleased-features.patch

  

  BuildRequires:  cmake

+ # The default make backend would work just as well; ninja is observably faster

+ BuildRequires:  ninja-build

  BuildRequires:  gcc-c++

+ 

  BuildRequires:  gmock-devel

  BuildRequires:  gtest-devel

- BuildRequires:  make

  

  %description

  Abseil is an open-source collection of C++ library code designed to augment
@@ -55,9 +48,67 @@ 

  %prep

  %autosetup -p1 -S gendiff

  

+ # Replace GTEST_FLAG_GET, which is not in a released version of GTest, with an

+ # appropriate default value. Not submitted upstream, as this is a workaround

+ # rather than a fix. https://github.com/abseil/abseil-cpp/issues/1063

+ #

+ # The find-then-sed pattern means we only discard mtimes on files that actually

+ # needed to be modified.

+ find . -type f -name '*.cc' \

+     -exec gawk '/GTEST_FLAG_GET/ { print FILENAME ; nextfile }' '{}' '+' |

+   xargs -r -t sed -r -i 's/GTEST_FLAG_GET/::testing::GTEST_FLAG/g'

+ 

+ # It’s extremely difficult to pass gtest options through to the test

+ # executables from ctest. We could probably skip an entire executable (e.g.

+ # absl_symbolize_test) by symlinking it to /bin/true, but the easiest way to

+ # skip a *single test* is to patch the test source.

+ 

+ %ifarch s390x

+ # TODO: why does this test fail?

+ #

+ #  48/167 Test  #49: absl_symbolize_test ................................***Failed    0.02 sec

+ # TestWithReturnAddress passed

+ # [==========] Running 7 tests from 1 test suite.

+ # [----------] Global test environment set-up.

+ # [----------] 7 tests from Symbolize

+ # [ RUN      ] Symbolize.Cached

+ # [       OK ] Symbolize.Cached (0 ms)

+ # [ RUN      ] Symbolize.Truncation

+ # [       OK ] Symbolize.Truncation (0 ms)

+ # [ RUN      ] Symbolize.SymbolizeWithDemangling

+ # [       OK ] Symbolize.SymbolizeWithDemangling (0 ms)

+ # [ RUN      ] Symbolize.SymbolizeSplitTextSections

+ # [       OK ] Symbolize.SymbolizeSplitTextSections (0 ms)

+ # [ RUN      ] Symbolize.SymbolizeWithMultipleMaps

+ # /builddir/build/BUILD/abseil-cpp-20210324.2/absl/debugging/symbolize_test.cc:315: Failure

+ # Expected equality of these values:

+ #   "kPadding1"

+ #   buf

+ #     Which is: ""

+ # /builddir/build/BUILD/abseil-cpp-20210324.2/absl/debugging/symbolize_test.cc:349: Failure

+ # Expected equality of these values:

+ #   expected[i]

+ #     Which is: "kPadding1"

+ #   buf

+ #     Which is: ""

+ # /builddir/build/BUILD/abseil-cpp-20210324.2/absl/debugging/symbolize_test.cc:349: Failure

+ # Expected equality of these values:

+ #   expected[i]

+ #     Which is: "kPadding1"

+ #   buf

+ #     Which is: ""

+ # [  FAILED  ] Symbolize.SymbolizeWithMultipleMaps (1 ms)

+ sed -r -i 's/\bSymbolizeWithMultipleMaps\b/DISABLED_&/' \

+     absl/debugging/symbolize_test.cc

+ %endif

+ 

+ 

  %build

  %cmake \

+   -GNinja \

    -DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=ON \

+   -DABSL_FIND_GOOGLETEST:BOOL=ON \

+   -DABSL_ENABLE_INSTALL:BOOL=ON \

    -DBUILD_TESTING:BOOL=ON \

    -DCMAKE_BUILD_TYPE:STRING=None \

    -DCMAKE_CXX_STANDARD:STRING=17
@@ -68,13 +119,7 @@ 

  %cmake_install

  

  %check

- # s390x does not seem to be supported, several tests fail.

- # Make tests informational until failures are resolved.

- %ifarch s390x

- %ctest --output-on-failure || :

- %else

- %ctest --output-on-failure

- %endif

+ %ctest

  

  %files

  %license LICENSE
@@ -88,6 +133,13 @@ 

  %{_libdir}/pkgconfig/*.pc

  

  %changelog

+ * Fri Feb 18 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20211102.0-1

+ - Update to 20211102.0 (close RHBZ#2019691)

+ - Drop --output-on-failure, already in %%ctest expansion

+ - On s390x, instead of ignoring all tests, skip only the single failing test

+ - Use ninja backend for CMake: speeds up build with no downsides

+ - Drop patch for armv7hl

+ 

  * Mon Jan 31 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 20210324.2-4

  - Fix test failure (fix RHBZ#2045186)

  

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (abseil-cpp-20210324.2.tar.gz) = 7b935f0f2787a81438f30072f2191138ce3c099e4b22addfbe8ebe579d906604bc6ab03f054d3d6917a08ef5cb7a4371c1a501a7dfbc15c50301261dbf5f6e27

+ SHA512 (abseil-cpp-20211102.0.tar.gz) = fed68aa434c02ec6faa9d1c81f1ad35b60ec024b44957e2e0ac31e6075e385c06a3e1b616afeb4bb7c2413191fd7827d82e1f9f0796b52ed21fb2c41dd9031cf

This, of course, bumps the %lib_version/soversion to 2111.0.0.

It incidentally drops

%undefine __cmake_in_source_build

since this is the default on all current Fedora versions.


I’m starting work on building dependent packages in a COPR to verify compatibility. This will take a day or so even if there are no problems, since grpc takes a really long time to build.

Looks like there’s a problem on 32-bit ARM:

[ RUN      ] CordRepBtreeTest.IsValid
[cord_rep_btree.cc : 404] RAW: CordRepBtree::CheckValid() FAILED: tree != nullptr
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (3 vs 2)
[cord_rep_btree.cc : 405] RAW: CordRepBtree::CheckValid() FAILED: tree->IsBtree()
[cord_rep_btree.cc : 406] RAW: CordRepBtree::CheckValid() FAILED: tree->height() <= kMaxHeight
[cord_rep_btree.cc : 414] RAW: CordRepBtree::CheckValid() FAILED: edge->IsBtree()
[cord_rep_btree.cc : 407] RAW: CordRepBtree::CheckValid() FAILED: tree->begin() < tree->capacity()
[cord_rep_btree.cc : 409] RAW: CordRepBtree::CheckValid() FAILED: tree->begin() <= tree->end()
[cord_rep_btree.cc : 408] RAW: CordRepBtree::CheckValid() FAILED: tree->end() <= tree->capacity()
[cord_rep_btree.cc : 412] RAW: CordRepBtree::CheckValid() FAILED: edge != nullptr
[cord_rep_btree.cc : 417] RAW: CordRepBtree::CheckValid() FAILED: IsDataEdge(edge)
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (2 vs 3)
[cord_rep_btree.cc : 414] RAW: CordRepBtree::CheckValid() FAILED: edge->IsBtree()
[cord_rep_btree.cc : 415] RAW: CordRepBtree::CheckValid() FAILED: edge->btree()->height() == tree->height() - 1
[cord_rep_btree.cc : 415] RAW: CordRepBtree::CheckValid() FAILED: edge->btree()->height() == tree->height() - 1
[cord_rep_btree.cc : 407] RAW: CordRepBtree::CheckValid() FAILED: tree->begin() < tree->capacity()
[cord_rep_btree.cc : 409] RAW: CordRepBtree::CheckValid() FAILED: tree->begin() <= tree->end()
[cord_rep_btree.cc : 408] RAW: CordRepBtree::CheckValid() FAILED: tree->end() <= tree->capacity()
[cord_rep_btree.cc : 412] RAW: CordRepBtree::CheckValid() FAILED: edge != nullptr
[cord_rep_btree.cc : 417] RAW: CordRepBtree::CheckValid() FAILED: IsDataEdge(edge)
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (2 vs 3)
[cord_rep_btree.cc : 415] RAW: CordRepBtree::CheckValid() FAILED: edge->btree()->height() == tree->height() - 1
[cord_rep_btree.cc : 414] RAW: CordRepBtree::CheckValid() FAILED: edge->IsBtree()
[       OK ] CordRepBtreeTest.IsValid (0 ms)
[ RUN      ] CordRepBtreeTest.AssertValid
[       OK ] CordRepBtreeTest.AssertValid (3052 ms)
[ RUN      ] CordRepBtreeTest.CheckAssertValidShallowVsDeep
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (155 vs 58)
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (155 vs 58)
===================================
CordRepBtree validation failed:
-----------------------------------
Private (0x653310) Node(2), len = 795, begin = 0, end = 3
  Private (0x63e678) Node(1), len = 388, begin = 0, end = 6
    Private (0x652d28) Leaf, len = 58, begin = 0, end = 6
      Private (0x655390) Flat, len = 100, cap = 23
      Private (0x64dde0) Flat, len = 11, cap = 23
      Private (0x655db0) Flat, len = 11, cap = 23
      Private (0x63a480) Flat, len = 11, cap = 23
      Private (0x64e9e0) Flat, len = 11, cap = 23
      Private (0x64e7e8) Flat, len = 11, cap = 23
    Private (0x656268) Leaf, len = 66, begin = 0, end = 6
      Private (0x655dd8) Flat, len = 11, cap = 23
      Private (0x654028) Flat, len = 11, cap = 23
      Private (0x64e3f8) Flat, len = 11, cap = 23
      Private (0x64dac0) Flat, len = 11, cap = 23
      Private (0x6526b0) Flat, len = 11, cap = 23
      Private (0x64ad40) Flat, len = 11, cap = 23
    Private (0x64e7a0) Leaf, len = 66, begin = 0, end = 6
      Private (0x652c78) Flat, len = 11, cap = 23
      Private (0x650320) Flat, len = 11, cap = 23
      Private (0x6521e0) Flat, len = 11, cap = 23
      Private (0x652208) Flat, len = 11, cap = 23
      Private (0x650e40) Flat, len = 11, cap = 23
      Private (0x650e68) Flat, len = 11, cap = 23
    Private (0x655180) Leaf, len = 66, begin = 0, end = 6
      Private (0x650e90) Flat, len = 11, cap = 23
      Private (0x6551a8) Flat, len = 11, cap = 23
      Private (0x6551d0) Flat, len = 11, cap = 23
      Private (0x6551f8) Flat, len = 11, cap = 23
      Private (0x653e48) Flat, len = 11, cap = 23
      Private (0x653e70) Flat, len = 11, cap = 23
    Private (0x653ec0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653e98) Flat, len = 11, cap = 23
      Private (0x655e00) Flat, len = 11, cap = 23
      Private (0x655e28) Flat, len = 11, cap = 23
      Private (0x655e50) Flat, len = 11, cap = 23
      Private (0x655e78) Flat, len = 11, cap = 23
      Private (0x655ea0) Flat, len = 11, cap = 23
    Private (0x6504a8) Leaf, len = 66, begin = 0, end = 6
      Private (0x650480) Flat, len = 11, cap = 23
      Private (0x6504d0) Flat, len = 11, cap = 23
      Private (0x6504f8) Flat, len = 11, cap = 23
      Private (0x650520) Flat, len = 11, cap = 23
      Private (0x650548) Flat, len = 11, cap = 23
      Private (0x653270) Flat, len = 11, cap = 23
  Private (0x6532e8) Node(1), len = 396, begin = 0, end = 6
    Private (0x6532c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653298) Flat, len = 11, cap = 23
      Private (0x653338) Flat, len = 11, cap = 23
      Private (0x653360) Flat, len = 11, cap = 23
      Private (0x653c18) Flat, len = 11, cap = 23
      Private (0x653c40) Flat, len = 11, cap = 23
      Private (0x653c68) Flat, len = 11, cap = 23
    Private (0x653cb8) Leaf, len = 66, begin = 0, end = 6
      Private (0x653c90) Flat, len = 11, cap = 23
      Private (0x653ce0) Flat, len = 11, cap = 23
      Private (0x653d08) Flat, len = 11, cap = 23
      Private (0x653d30) Flat, len = 11, cap = 23
      Private (0x654148) Flat, len = 11, cap = 23
      Private (0x654170) Flat, len = 11, cap = 23
    Private (0x6541c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x654198) Flat, len = 11, cap = 23
      Private (0x6541e8) Flat, len = 11, cap = 23
      Private (0x654210) Flat, len = 11, cap = 23
      Private (0x654238) Flat, len = 11, cap = 23
      Private (0x654260) Flat, len = 11, cap = 23
      Private (0x654288) Flat, len = 11, cap = 23
    Private (0x6542d8) Leaf, len = 66, begin = 0, end = 6
      Private (0x6542b0) Flat, len = 11, cap = 23
      Private (0x654300) Flat, len = 11, cap = 23
      Private (0x654328) Flat, len = 11, cap = 23
      Private (0x654350) Flat, len = 11, cap = 23
      Private (0x654378) Flat, len = 11, cap = 23
      Private (0x6543a0) Flat, len = 11, cap = 23
    Private (0x6543f0) Leaf, len = 66, begin = 0, end = 6
      Private (0x6543c8) Flat, len = 11, cap = 23
      Private (0x654418) Flat, len = 11, cap = 23
      Private (0x654440) Flat, len = 11, cap = 23
      Private (0x654468) [cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (155 vs 58)
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (155 vs 58)
[cord_rep_btree.cc : 421] RAW: CordRepBtree::CheckValid() FAILED: child_length != tree->length (155 vs 58)
===================================
CordRepBtree validation failed:
-----------------------------------
Private (0x653310) Node(2), len = 795, begin = 0, end = 3
  Private (0x63e678) Node(1), len = 388, begin = 0, end = 6
    Private (0x652d28) Leaf, len = 58, begin = 0, end = 6
      Private (0x655390) Flat, len = 100, cap = 23
      Private (0x64dde0) Flat, len = 11, cap = 23
      Private (0x655db0) Flat, len = 11, cap = 23
      Private (0x63a480) Flat, len = 11, cap = 23
      Private (0x64e9e0) Flat, len = 11, cap = 23
      Private (0x64e7e8) Flat, len = 11, cap = 23
    Private (0x656268) Leaf, len = 66, begin = 0, end = 6
      Private (0x655dd8) Flat, len = 11, cap = 23
      Private (0x654028) Flat, len = 11, cap = 23
      Private (0x64e3f8) Flat, len = 11, cap = 23
      Private (0x64dac0) Flat, len = 11, cap = 23
      Private (0x6526b0) Flat, len = 11, cap = 23
      Private (0x64ad40) Flat, len = 11, cap = 23
    Private (0x64e7a0) Leaf, len = 66, begin = 0, end = 6
      Private (0x652c78) Flat, len = 11, cap = 23
      Private (0x650320) Flat, len = 11, cap = 23
      Private (0x6521e0) Flat, len = 11, cap = 23
      Private (0x652208) Flat, len = 11, cap = 23
      Private (0x650e40) Flat, len = 11, cap = 23
      Private (0x650e68) Flat, len = 11, cap = 23
    Private (0x655180) Leaf, len = 66, begin = 0, end = 6
      Private (0x650e90) Flat, len = 11, cap = 23
      Private (0x6551a8) Flat, len = 11, cap = 23
      Private (0x6551d0) Flat, len = 11, cap = 23
      Private (0x6551f8) Flat, len = 11, cap = 23
      Private (0x653e48) Flat, len = 11, cap = 23
      Private (0x653e70) Flat, len = 11, cap = 23
    Private (0x653ec0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653e98) Flat, len = 11, cap = 23
      Private (0x655e00) Flat, len = 11, cap = 23
      Private (0x655e28) Flat, len = 11, cap = 23
      Private (0x655e50) Flat, len = 11, cap = 23
      Private (0x655e78) Flat, len = 11, cap = 23
      Private (0x655ea0) Flat, len = 11, cap = 23
    Private (0x6504a8) Leaf, len = 66, begin = 0, end = 6
      Private (0x650480) Flat, len = 11, cap = 23
      Private (0x6504d0) Flat, len = 11, cap = 23
      Private (0x6504f8) Flat, len = 11, cap = 23
      Private (0x650520) Flat, len = 11, cap = 23
      Private (0x650548) Flat, len = 11, cap = 23
      Private (0x653270) Flat, len = 11, cap = 23
  Private (0x6532e8) Node(1), len = 396, begin = 0, end = 6
    Private (0x6532c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653298) Flat, len = 11, cap = 23
      Private (0x653338) Flat, len = 11, cap = 23
      Private (0x653360) Flat, len = 11, cap = 23
      Private (0x653c18) Flat, len = 11, cap = 23
      Private (0x653c40) Flat, len = 11, cap = 23
      Private (0x653c68) Flat, len = 11, cap = 23
    Private (0x653cb8) Leaf, len = 66, begin = 0, end = 6
      Private (0x653c90) Flat, len = 11, cap = 23
      Private (0x653ce0) Flat, len = 11, cap = 23
      Private (0x653d08) Flat, len = 11, cap = 23
      Private (0x653d30) Flat, len = 11, cap = 23
      Private (0x654148) Flat, len = 11, cap = 23
      Private (0x654170) Flat, len = 11, cap = 23
    Private (0x6541c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x654198) Flat, len = 11, cap = 23
      Private (0x6541e8) Flat, len = 11, cap = 23
      Private (0x654210) Flat, len = 11, cap = 23
      Private (0x654238) Flat, len = 11, cap = 23
      Private (0x654260) Flat, len = 11, cap = 23
      Private (0x654288) Flat, len = 11, cap = 23
    Private (0x6542d8) Leaf, len = 66, begin = 0, end = 6
      Private (0x6542b0) Flat, len = 11, cap = 23
      Private (0x654300) Flat, len = 11, cap = 23
      Private (0x654328) Flat, len = 11, cap = 23
      Private (0x654350) Flat, len = 11, cap = 23
      Private (0x654378) Flat, len = 11, cap = 23
      Private (0x6543a0) Flat, len = 11, cap = 23
    Private (0x6543f0) Leaf, len = 66, begin = 0, end = 6
      Private (0x6543c8) Flat, len = 11, cap = 23
      Private (0x654418) Flat, len = 11, cap = 23
      Private (0x654440) Flat, len = 11, cap = 23
      Private (0x654468) ===================================
CordRepBtree validation failed:
-----------------------------------
Private (0x653310) Node(2), len = 795, begin = 0, end = 3
  Private (0x63e678) Node(1), len = 388, begin = 0, end = 6
    Private (0x652d28) Leaf, len = 58, begin = 0, end = 6
      Private (0x655390) Flat, len = 100, cap = 23
      Private (0x64dde0) Flat, len = 11, cap = 23
      Private (0x655db0) Flat, len = 11, cap = 23
      Private (0x63a480) Flat, len = 11, cap = 23
      Private (0x64e9e0) Flat, len = 11, cap = 23
      Private (0x64e7e8) Flat, len = 11, cap = 23
    Private (0x656268) Leaf, len = 66, begin = 0, end = 6
      Private (0x655dd8) Flat, len = 11, cap = 23
      Private (0x654028) Flat, len = 11, cap = 23
      Private (0x64e3f8) Flat, len = 11, cap = 23
      Private (0x64dac0) Flat, len = 11, cap = 23
      Private (0x6526b0) Flat, len = 11, cap = 23
      Private (0x64ad40) Flat, len = 11, cap = 23
    Private (0x64e7a0) Leaf, len = 66, begin = 0, end = 6
      Private (0x652c78) Flat, len = 11, cap = 23
      Private (0x650320) Flat, len = 11, cap = 23
      Private (0x6521e0) Flat, len = 11, cap = 23
      Private (0x652208) Flat, len = 11, cap = 23
      Private (0x650e40) Flat, len = 11, cap = 23
      Private (0x650e68) Flat, len = 11, cap = 23
    Private (0x655180) Leaf, len = 66, begin = 0, end = 6
      Private (0x650e90) Flat, len = 11, cap = 23
      Private (0x6551a8) Flat, len = 11, cap = 23
      Private (0x6551d0) Flat, len = 11, cap = 23
      Private (0x6551f8) Flat, len = 11, cap = 23
      Private (0x653e48) Flat, len = 11, cap = 23
      Private (0x653e70) Flat, len = 11, cap = 23
    Private (0x653ec0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653e98) Flat, len = 11, cap = 23
      Private (0x655e00) Flat, len = 11, cap = 23
      Private (0x655e28) Flat, len = 11, cap = 23
      Private (0x655e50) Flat, len = 11, cap = 23
      Private (0x655e78) Flat, len = 11, cap = 23
      Private (0x655ea0) Flat, len = 11, cap = 23
    Private (0x6504a8) Leaf, len = 66, begin = 0, end = 6
      Private (0x650480) Flat, len = 11, cap = 23
      Private (0x6504d0) Flat, len = 11, cap = 23
      Private (0x6504f8) Flat, len = 11, cap = 23
      Private (0x650520) Flat, len = 11, cap = 23
      Private (0x650548) Flat, len = 11, cap = 23
      Private (0x653270) Flat, len = 11, cap = 23
  Private (0x6532e8) Node(1), len = 396, begin = 0, end = 6
    Private (0x6532c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x653298) Flat, len = 11, cap = 23
      Private (0x653338) Flat, len = 11, cap = 23
      Private (0x653360) Flat, len = 11, cap = 23
      Private (0x653c18) Flat, len = 11, cap = 23
      Private (0x653c40) Flat, len = 11, cap = 23
      Private (0x653c68) Flat, len = 11, cap = 23
    Private (0x653cb8) Leaf, len = 66, begin = 0, end = 6
      Private (0x653c90) Flat, len = 11, cap = 23
      Private (0x653ce0) Flat, len = 11, cap = 23
      Private (0x653d08) Flat, len = 11, cap = 23
      Private (0x653d30) Flat, len = 11, cap = 23
      Private (0x654148) Flat, len = 11, cap = 23
      Private (0x654170) Flat, len = 11, cap = 23
    Private (0x6541c0) Leaf, len = 66, begin = 0, end = 6
      Private (0x654198) Flat, len = 11, cap = 23
      Private (0x6541e8) Flat, len = 11, cap = 23
      Private (0x654210) Flat, len = 11, cap = 23
      Private (0x654238) Flat, len = 11, cap = 23
      Private (0x654260) Flat, len = 11, cap = 23
      Private (0x654288) Flat, len = 11, cap = 23
    Private (0x6542d8) Leaf, len = 66, begin = 0, end = 6
      Private (0x6542b0) Flat, len = 11, cap = 23
      Private (0x654300) Flat, len = 11, cap = 23
      Private (0x654328) Flat, len = 11, cap = 23
      Private (0x654350) Flat, len = 11, cap = 23
      Private (0x654378) Flat, len = 11, cap = 23
      Private (0x6543a0) Flat, len = 11, cap = 23
    Private (0x6543f0) Leaf, len = 66, begin = 0, end = 6
      Private (0x6543c8) Flat, len = 11, cap = 23
      Private (0x654418) Flat, len = 11, cap = 23
      Private (0x654440) Flat, len = 11, cap = 23
      Private (0x654468) [       OK ] CordRepBtreeTest.CheckAssertValidShallowVsDeep (2911 ms)
[----------] 16 tests from CordRepBtreeTest (11006 ms total)

[…]

The following tests FAILED:
    156 - absl_cord_rep_btree_test (SEGFAULT)

I’m not quite sure what to do about that.

Thanks. I started to do this and ran into the gtest compatibility issues as well, I'm glad you were able to fix those.

It's definitely not great 32-bit ARM unit tests fail, maybe it's a 32-bit issue? I'll play with it and see if I can track it down...

We will shortly be able to just ignore 32-bit ARM failures, at least in Rawhide.

https://fedoraproject.org/wiki/Changes/RetireARMv7
https://pagure.io/releng/issue/10387

It looks like the f37 gcc update linked in the other PR isn't building for armv7, should I merge this PR for f37 and merge the other one to f36 to fix the FTBFS?

I’d be inclined to merge the other PR and build it in both F36 and F37 first, assuming a successful build with the new GCC, since it resolves the FTBFS non-disruptively.

Then we could re-test this PR and coordinate the ABI change with a devel list announcement and side tag at our leisure.

If this update is in fact destined for F37 only due to 32-bit ARM issues, I can remove abseil-cpp-20210324.2-armv7.patch, too.

I’m going to adjust this so that only the single failing test is skipped on s390x.

rebased onto d70989c

2 years ago

1 new commit added

  • Drop patch for armv7hl
2 years ago

@rmattes, it seems like dependent packages should be OK. Is there anything else you want to do before announcing the .so version bump for Rawhide and coordinating rebuilds?

Nope, everything looks good to me. I'm pretty time constrained at the moment, if you want to push ahead don't let me hold things up.

I have created side tag f37-build-side-51675 for this update. I’m merging this PR, building into the side tag, and starting to coordinate dependent package rebuilds.

Pull-Request has been merged by music

2 years ago