summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/cpp.scm7
-rw-r--r--gnu/packages/patches/abseil-cpp-fix.patch16
3 files changed, 22 insertions, 2 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 8325c071bd..c4535daae9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -786,6 +786,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/abcl-fix-build-xml.patch	\
   %D%/packages/patches/ableton-link-system-libraries-debian.patch	\
   %D%/packages/patches/abiword-explictly-cast-bools.patch	\
+  %D%/packages/patches/abseil-cpp-fix.patch			\
   %D%/packages/patches/adb-add-libraries.patch			\
   %D%/packages/patches/aegis-constness-error.patch         	\
   %D%/packages/patches/aegis-perl-tempdir1.patch           	\
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 02a82091b8..ba361ba5ca 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -678,7 +678,7 @@ point and then, after each tween step, plugging back the result.")
 (define-public abseil-cpp
   (package
     (name "abseil-cpp")
-    (version "20200225.2")
+    (version "20200923.3")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -687,11 +687,14 @@ point and then, after each tween step, plugging back the result.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0dwxg54pv6ihphbia0iw65r64whd7v8nm4wwhcz219642cgpv54y"))))
+                "1p4djhm1f011ficbjjxx3n8428p8481p20j4glpaawnpsi362hkl"))
+              ;; Remove after next googletest release and update.
+              (patches (search-patches "abseil-cpp-fix.patch"))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags (list "-DBUILD_SHARED_LIBS=ON"
                                "-DABSL_RUN_TESTS=ON"
+                               "-DABSL_USE_EXTERNAL_GOOGLETEST=ON"
                                ;; Needed, else we get errors like:
                                ;;
                                ;; ld: CMakeFiles/absl_periodic_sampler_test.dir/internal/periodic_sampler_test.cc.o:
diff --git a/gnu/packages/patches/abseil-cpp-fix.patch b/gnu/packages/patches/abseil-cpp-fix.patch
new file mode 100644
index 0000000000..38971448f3
--- /dev/null
+++ b/gnu/packages/patches/abseil-cpp-fix.patch
@@ -0,0 +1,16 @@
+The GTEST_ALLOW_UNINSTANTIATED_PARAMTERIZED_TEST macro was added to googletest
+in commit 0b024bd9 on master. It has been used in an abseil-cpp release before
+a googletest release.
+
+--- a/absl/container/internal/unordered_map_modifiers_test.h
++++ b/absl/container/internal/unordered_map_modifiers_test.h
+@@ -286,7 +286,9 @@ class UniquePtrModifiersTest : public ::testing::Test {
+   }
+ };
+
++#ifdef GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST
+ GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(UniquePtrModifiersTest);
++#endif
+
+ TYPED_TEST_SUITE_P(UniquePtrModifiersTest);
+