commit:     dc10ecae76251e05914bdd47a9728a42ef0cc853
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon May 29 18:50:28 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon May 29 19:09:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc10ecae

dev-db/postgis: Fix build with dev-cpp/abseil-cpp-20230125.2

Closes: https://bugs.gentoo.org/905378
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../postgis-3.3.2-flatbuffers-abseil-2023.patch    | 39 ++++++++++++++++++++++
 dev-db/postgis/postgis-3.3.2-r1.ebuild             |  2 ++
 2 files changed, 41 insertions(+)

diff --git a/dev-db/postgis/files/postgis-3.3.2-flatbuffers-abseil-2023.patch 
b/dev-db/postgis/files/postgis-3.3.2-flatbuffers-abseil-2023.patch
new file mode 100644
index 000000000000..670361b5b29e
--- /dev/null
+++ b/dev-db/postgis/files/postgis-3.3.2-flatbuffers-abseil-2023.patch
@@ -0,0 +1,39 @@
+From 411abb7014b05b809c0644f196425af1028e7ad3 Mon Sep 17 00:00:00 2001
+From: Berke <[email protected]>
+Date: Fri, 7 Apr 2023 22:05:45 +0300
+Subject: [PATCH] additional check for absl::string_view availability
+
+absl::string_view is uses std::string_view when available. It already checks 
if std::string_view is available in the earlier code.
+It should only use absl::string_view implementation.
+---
+ deps/flatgeobuf/include/flatbuffers/base.h | 17 +++++++++++------
+ 1 file changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/deps/flatgeobuf/include/flatbuffers/base.h 
b/deps/flatgeobuf/include/flatbuffers/base.h
+index bc64f18ad93..98a02262c2b 100644
+--- a/deps/flatgeobuf/include/flatbuffers/base.h
++++ b/deps/flatgeobuf/include/flatbuffers/base.h
+@@ -233,12 +233,17 @@ namespace flatbuffers {
+       }
+       #define FLATBUFFERS_HAS_STRING_VIEW 1
+     // Check for absl::string_view
+-    #elif __has_include("absl/strings/string_view.h")
+-      #include "absl/strings/string_view.h"
+-      namespace flatbuffers {
+-        typedef absl::string_view string_view;
+-      }
+-      #define FLATBUFFERS_HAS_STRING_VIEW 1
++    #elif __has_include("absl/strings/string_view.h") && \
++          __has_include("absl/base/config.h") && \
++          (__cplusplus >= 201411)
++      #include "absl/base/config.h"
++      #if !defined(ABSL_USES_STD_STRING_VIEW)
++        #include "absl/strings/string_view.h"
++        namespace flatbuffers {
++          typedef absl::string_view string_view;
++        }
++        #define FLATBUFFERS_HAS_STRING_VIEW 1
++      #endif
+     #endif
+   #endif // __has_include
+ #endif // !FLATBUFFERS_HAS_STRING_VIEW

diff --git a/dev-db/postgis/postgis-3.3.2-r1.ebuild 
b/dev-db/postgis/postgis-3.3.2-r1.ebuild
index 40199711aa2c..5e948c1a6828 100644
--- a/dev-db/postgis/postgis-3.3.2-r1.ebuild
+++ b/dev-db/postgis/postgis-3.3.2-r1.ebuild
@@ -54,6 +54,8 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
        "${FILESDIR}/${PN}-3.0.3-try-other-cpp-names.patch"
+       # source: https://github.com/google/flatbuffers/pull/7897
+       "${FILESDIR}/${P}-flatbuffers-abseil-2023.patch" # bug 905378
 )
 
 src_prepare() {

Reply via email to