From dd016be5a808fbcd0b41a21ad502653fc7db601a Mon Sep 17 00:00:00 2001
From: favogt <>
Date: Jun 30 2022 11:25:03 +0000
Subject: Update abseil-cpp to version 20211102.0 / rev 23 via SR 985793
https://build.opensuse.org/request/show/985793
by user favogt + dimstar_suse
- Remove obsolete 0%{suse_version} < 1500 conditions
- Add options-old.patch, options-cxx17.patch
* Ensure ABI stability regardless of compiler settings per instruction in the header.
---
diff --git a/.files b/.files
index 750fcf3..33311e8 100644
Binary files a/.files and b/.files differ
diff --git a/.meta b/.meta
index 8fdb124..ee165e0 100644
--- a/.meta
+++ b/.meta
@@ -1,6 +1,6 @@
abseil-cppC++11 compliant libraries which augment the C++ stdlib
-
+ https://abseil.io/
diff --git a/.rev b/.rev
index 88cd6ef..023311d 100644
--- a/.rev
+++ b/.rev
@@ -193,4 +193,15 @@
966833
+
+ 36d4b6d83e328b040b7dd67c10ac383c
+ 20211102.0
+
+ dimstar_suse
+ - Remove obsolete 0%{suse_version} < 1500 conditions
+
+- Add options-old.patch, options-cxx17.patch
+ * Ensure ABI stability regardless of compiler settings per instruction in the header.
+ 985793
+
diff --git a/abseil-cpp.changes b/abseil-cpp.changes
index 2714655..c334019 100644
--- a/abseil-cpp.changes
+++ b/abseil-cpp.changes
@@ -1,4 +1,15 @@
-------------------------------------------------------------------
+Wed Jun 29 12:49:20 UTC 2022 - Fabian Vogt
+
+- Remove obsolete 0%{suse_version} < 1500 conditions
+
+-------------------------------------------------------------------
+Wed Jun 29 12:04:22 UTC 2022 - Bruno Pitrus
+
+- Add options-old.patch, options-cxx17.patch
+ * Ensure ABI stability regardless of compiler settings per instruction in the header.
+
+-------------------------------------------------------------------
Mon Apr 4 11:37:33 UTC 2022 - Jan Engelhardt
- Implement shlib packaging policy
diff --git a/abseil-cpp.spec b/abseil-cpp.spec
index 3c79bc8..747568c 100644
--- a/abseil-cpp.spec
+++ b/abseil-cpp.spec
@@ -24,13 +24,16 @@ Summary: C++11 libraries which augment the C++ stdlib
License: Apache-2.0
URL: https://abseil.io/
Source0: https://github.com/abseil/abseil-cpp/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+# PATCH-FIX-OPENSUSE options-{old,cxx17}.patch Ensure ABI stability regardless of compiler options
+%if %{suse_version} < 1550
+Patch0: options-old.patch
+%else
+Patch0: options-cxx17.patch
+%endif
BuildRequires: c++_compiler
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: pkgconfig
-%if 0%{suse_version} < 1500
-BuildRequires: gcc11-c++
-%endif
%description
Abseil is a collection of C++11 libraries which augment the C++
@@ -60,9 +63,6 @@ This package contains headers and build system files for it.
%autosetup -p1
%build
-%if 0%{suse_version} < 1500
-export CXX=g++-11
-%endif
%cmake
%cmake_build
diff --git a/options-cxx17.patch b/options-cxx17.patch
new file mode 100644
index 0000000..161868a
--- /dev/null
+++ b/options-cxx17.patch
@@ -0,0 +1,43 @@
+Make the headers always tell the truth about the ABI of the compiled dll's
+to avoid mysterious linker errors when using wrong C++ version in compiler.
+This version of patch is for new systems (Tumbleweed) where Abseil is built with C++17 support.
+For more information, see “notice for package managers” in options.h
+
+--- a/absl/base/options.h 2021-11-03 16:26:14.000000000 +0100
++++ b/absl/base/options.h 2022-06-28 22:49:52.830727200 +0200
+@@ -100,7 +100,7 @@
+ // User code should not inspect this macro. To check in the preprocessor if
+ // absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY.
+
+-#define ABSL_OPTION_USE_STD_ANY 2
++#define ABSL_OPTION_USE_STD_ANY 1
+
+
+ // ABSL_OPTION_USE_STD_OPTIONAL
+@@ -127,7 +127,7 @@
+ // absl::optional is a typedef of std::optional, use the feature macro
+ // ABSL_USES_STD_OPTIONAL.
+
+-#define ABSL_OPTION_USE_STD_OPTIONAL 2
++#define ABSL_OPTION_USE_STD_OPTIONAL 1
+
+
+ // ABSL_OPTION_USE_STD_STRING_VIEW
+@@ -154,7 +154,7 @@
+ // absl::string_view is a typedef of std::string_view, use the feature macro
+ // ABSL_USES_STD_STRING_VIEW.
+
+-#define ABSL_OPTION_USE_STD_STRING_VIEW 2
++#define ABSL_OPTION_USE_STD_STRING_VIEW 1
+
+ // ABSL_OPTION_USE_STD_VARIANT
+ //
+@@ -180,7 +180,7 @@
+ // absl::variant is a typedef of std::variant, use the feature macro
+ // ABSL_USES_STD_VARIANT.
+
+-#define ABSL_OPTION_USE_STD_VARIANT 2
++#define ABSL_OPTION_USE_STD_VARIANT 1
+
+
+ // ABSL_OPTION_USE_INLINE_NAMESPACE
diff --git a/options-old.patch b/options-old.patch
new file mode 100644
index 0000000..5637925
--- /dev/null
+++ b/options-old.patch
@@ -0,0 +1,43 @@
+Make the headers always tell the truth about the ABI of the compiled dll's
+to avoid mysterious linker errors when using wrong C++ version in compiler.
+This version of the patch is for old systems where the system compiler does not use C++17.
+For more information, see “notice for package managers” in options.h
+
+--- a/absl/base/options.h 2021-11-03 16:26:14.000000000 +0100
++++ b/absl/base/options.h 2022-06-28 22:49:52.830727200 +0200
+@@ -100,7 +100,7 @@
+ // User code should not inspect this macro. To check in the preprocessor if
+ // absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY.
+
+-#define ABSL_OPTION_USE_STD_ANY 2
++#define ABSL_OPTION_USE_STD_ANY 0
+
+
+ // ABSL_OPTION_USE_STD_OPTIONAL
+@@ -127,7 +127,7 @@
+ // absl::optional is a typedef of std::optional, use the feature macro
+ // ABSL_USES_STD_OPTIONAL.
+
+-#define ABSL_OPTION_USE_STD_OPTIONAL 2
++#define ABSL_OPTION_USE_STD_OPTIONAL 0
+
+
+ // ABSL_OPTION_USE_STD_STRING_VIEW
+@@ -154,7 +154,7 @@
+ // absl::string_view is a typedef of std::string_view, use the feature macro
+ // ABSL_USES_STD_STRING_VIEW.
+
+-#define ABSL_OPTION_USE_STD_STRING_VIEW 2
++#define ABSL_OPTION_USE_STD_STRING_VIEW 0
+
+ // ABSL_OPTION_USE_STD_VARIANT
+ //
+@@ -180,7 +180,7 @@
+ // absl::variant is a typedef of std::variant, use the feature macro
+ // ABSL_USES_STD_VARIANT.
+
+-#define ABSL_OPTION_USE_STD_VARIANT 2
++#define ABSL_OPTION_USE_STD_VARIANT 0
+
+
+ // ABSL_OPTION_USE_INLINE_NAMESPACE