From 29bfa653bbd370b60e4666933d43b651b078831b Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 17 Feb 2023 13:10:56 +0100 Subject: fix GCC 13 build using patch from https://github.com/couchbase/couchbase-php-client/pull/63 --- couchbase-gcc13.patch | 188 +++++++++++++++++++++++++++++++++++++++++++++++ php-pecl-couchbase4.spec | 11 ++- 2 files changed, 198 insertions(+), 1 deletion(-) create mode 100644 couchbase-gcc13.patch diff --git a/couchbase-gcc13.patch b/couchbase-gcc13.patch new file mode 100644 index 0000000..d9b953b --- /dev/null +++ b/couchbase-gcc13.patch @@ -0,0 +1,188 @@ +diff -up ./src/deps/couchbase-cxx-client/core/error_context/analytics.hxx.old ./src/deps/couchbase-cxx-client/core/error_context/analytics.hxx +--- ./src/deps/couchbase-cxx-client/core/error_context/analytics.hxx.old 2023-02-17 11:42:50.863806027 +0100 ++++ ./src/deps/couchbase-cxx-client/core/error_context/analytics.hxx 2023-02-17 11:42:59.220770468 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::error_context + { +diff -up ./src/deps/couchbase-cxx-client/core/error_context/http.hxx.old ./src/deps/couchbase-cxx-client/core/error_context/http.hxx +--- ./src/deps/couchbase-cxx-client/core/error_context/http.hxx.old 2023-02-17 11:45:48.059052174 +0100 ++++ ./src/deps/couchbase-cxx-client/core/error_context/http.hxx 2023-02-17 11:45:57.097013713 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::error_context + { +diff -up ./src/deps/couchbase-cxx-client/core/error_context/query.hxx.old ./src/deps/couchbase-cxx-client/core/error_context/query.hxx +--- ./src/deps/couchbase-cxx-client/core/error_context/query.hxx.old 2023-02-17 11:41:18.317199772 +0100 ++++ ./src/deps/couchbase-cxx-client/core/error_context/query.hxx 2023-02-17 11:41:26.784163755 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::error_context + { +diff -up ./src/deps/couchbase-cxx-client/core/error_context/search.hxx.old ./src/deps/couchbase-cxx-client/core/error_context/search.hxx +--- ./src/deps/couchbase-cxx-client/core/error_context/search.hxx.old 2023-02-17 11:43:26.018656454 +0100 ++++ ./src/deps/couchbase-cxx-client/core/error_context/search.hxx 2023-02-17 11:43:34.201621640 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::error_context + { +diff -up ./src/deps/couchbase-cxx-client/core/error_context/view.hxx.old ./src/deps/couchbase-cxx-client/core/error_context/view.hxx +--- ./src/deps/couchbase-cxx-client/core/error_context/view.hxx.old 2023-02-17 11:45:15.515190630 +0100 ++++ ./src/deps/couchbase-cxx-client/core/error_context/view.hxx 2023-02-17 11:45:23.685155875 +0100 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::error_context + { +diff -up ./src/deps/couchbase-cxx-client/core/impl/subdoc/lookup_in_macro.cxx.old ./src/deps/couchbase-cxx-client/core/impl/subdoc/lookup_in_macro.cxx +--- ./src/deps/couchbase-cxx-client/core/impl/subdoc/lookup_in_macro.cxx.old 2023-02-17 11:52:51.380377395 +0100 ++++ ./src/deps/couchbase-cxx-client/core/impl/subdoc/lookup_in_macro.cxx 2023-02-17 11:52:59.963346370 +0100 +@@ -19,6 +19,7 @@ + #include + + #include ++#include + + namespace couchbase::subdoc + { +diff -up ./src/deps/couchbase-cxx-client/core/impl/subdoc/mutate_in_macro.cxx.old ./src/deps/couchbase-cxx-client/core/impl/subdoc/mutate_in_macro.cxx +--- ./src/deps/couchbase-cxx-client/core/impl/subdoc/mutate_in_macro.cxx.old 2023-02-17 11:53:40.331200451 +0100 ++++ ./src/deps/couchbase-cxx-client/core/impl/subdoc/mutate_in_macro.cxx 2023-02-17 11:53:48.536170794 +0100 +@@ -19,6 +19,7 @@ + #include + + #include ++#include + + namespace couchbase::subdoc + { +diff -up ./src/deps/couchbase-cxx-client/core/operations/management/analytics_problem.hxx.old ./src/deps/couchbase-cxx-client/core/operations/management/analytics_problem.hxx +--- ./src/deps/couchbase-cxx-client/core/operations/management/analytics_problem.hxx.old 2023-02-17 11:44:42.479331158 +0100 ++++ ./src/deps/couchbase-cxx-client/core/operations/management/analytics_problem.hxx 2023-02-17 11:44:51.503292772 +0100 +@@ -18,6 +18,7 @@ + #pragma once + + #include ++#include + + namespace couchbase::core::operations::management + { +diff -up ./src/deps/couchbase-cxx-client/core/operations/management/eventing_problem.hxx.old ./src/deps/couchbase-cxx-client/core/operations/management/eventing_problem.hxx +--- ./src/deps/couchbase-cxx-client/core/operations/management/eventing_problem.hxx.old 2023-02-17 11:46:56.338761652 +0100 ++++ ./src/deps/couchbase-cxx-client/core/operations/management/eventing_problem.hxx 2023-02-17 11:47:06.873716827 +0100 +@@ -18,6 +18,7 @@ + #pragma once + + #include ++#include + + namespace couchbase::core::operations::management + { +diff -up ./src/deps/couchbase-cxx-client/core/platform/base64.cc.old ./src/deps/couchbase-cxx-client/core/platform/base64.cc +--- ./src/deps/couchbase-cxx-client/core/platform/base64.cc.old 2023-02-17 11:39:35.916566384 +0100 ++++ ./src/deps/couchbase-cxx-client/core/platform/base64.cc 2023-02-17 11:40:12.655440285 +0100 +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + + /** + * An array of the legal characters used for direct lookup +diff -up ./src/deps/couchbase-cxx-client/core/protocol/client_opcode.hxx.old ./src/deps/couchbase-cxx-client/core/protocol/client_opcode.hxx +--- ./src/deps/couchbase-cxx-client/core/protocol/client_opcode.hxx.old 2023-02-17 11:42:13.056966881 +0100 ++++ ./src/deps/couchbase-cxx-client/core/protocol/client_opcode.hxx 2023-02-17 11:42:16.956950286 +0100 +@@ -19,6 +19,7 @@ + + #include + #include ++#include + + namespace couchbase::core::protocol + { +diff -up ./src/deps/couchbase-cxx-client/core/protocol/cmd_info.hxx.old ./src/deps/couchbase-cxx-client/core/protocol/cmd_info.hxx +--- ./src/deps/couchbase-cxx-client/core/protocol/cmd_info.hxx.old 2023-02-17 11:48:04.927469837 +0100 ++++ ./src/deps/couchbase-cxx-client/core/protocol/cmd_info.hxx 2023-02-17 11:48:12.158439071 +0100 +@@ -18,6 +18,7 @@ + #pragma once + + #include ++#include + + namespace couchbase::core::protocol + { +diff -up ./src/deps/couchbase-cxx-client/core/utils/crc32.hxx.old ./src/deps/couchbase-cxx-client/core/utils/crc32.hxx +--- ./src/deps/couchbase-cxx-client/core/utils/crc32.hxx.old 2023-02-17 11:54:05.664108871 +0100 ++++ ./src/deps/couchbase-cxx-client/core/utils/crc32.hxx 2023-02-17 11:54:16.721068897 +0100 +@@ -5,6 +5,8 @@ + * src/usr.bin/cksum/crc32.c. + */ + ++#include ++ + namespace couchbase::core::utils + { + static const std::uint32_t crc32tab[256] = { +diff -up ./src/deps/couchbase-cxx-client/core/utils/json_streaming_lexer.hxx.old ./src/deps/couchbase-cxx-client/core/utils/json_streaming_lexer.hxx +--- ./src/deps/couchbase-cxx-client/core/utils/json_streaming_lexer.hxx.old 2023-02-17 11:50:55.447796534 +0100 ++++ ./src/deps/couchbase-cxx-client/core/utils/json_streaming_lexer.hxx 2023-02-17 11:51:13.882729879 +0100 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + namespace couchbase::core::utils::json + { +diff -up ./src/deps/couchbase-cxx-client/core/utils/url_codec.cxx.old ./src/deps/couchbase-cxx-client/core/utils/url_codec.cxx +--- ./src/deps/couchbase-cxx-client/core/utils/url_codec.cxx.old 2023-02-17 11:49:55.460013429 +0100 ++++ ./src/deps/couchbase-cxx-client/core/utils/url_codec.cxx 2023-02-17 11:50:05.750976216 +0100 +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + namespace couchbase::core::utils::string_codec + { +diff -up ./src/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx.old ./src/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +--- ./src/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx.old 2023-02-17 12:22:15.005042408 +0100 ++++ ./src/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx 2023-02-17 12:22:23.561023478 +0100 +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN + namespace couchbase::core +diff -up ./src/wrapper/core_error_info.hxx.old ./src/wrapper/core_error_info.hxx +--- ./src/wrapper/core_error_info.hxx.old 2023-02-17 11:40:03.844470526 +0100 ++++ ./src/wrapper/core_error_info.hxx 2023-02-17 11:40:08.423454811 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + namespace couchbase::php + { diff --git a/php-pecl-couchbase4.spec b/php-pecl-couchbase4.spec index 5877d79..ea5d7e6 100644 --- a/php-pecl-couchbase4.spec +++ b/php-pecl-couchbase4.spec @@ -27,7 +27,7 @@ Summary: Couchbase Server PHP extension Name: %{?scl_prefix}php-pecl-couchbase4 Version: 4.1.0 -Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} +Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} # Apache-2.0 # src # third_party/json/LICENSE.ryu @@ -50,6 +50,8 @@ License: Apache-2.0 AND BSD-3-Clause AND BSD-2-Clause AND MIT URL: https://pecl.php.net/package/couchbase Source0: https://pecl.php.net/get/%{pecl_name}-%{version}%{?prever}.tgz +Patch0: %{pecl_name}-gcc13.patch + BuildRequires: make %if 0%{?rhel} == 7 BuildRequires: cmake3 >= 3.17 @@ -136,9 +138,12 @@ cp NTS/src/deps/couchbase-cxx-client/third_party/spdlog/LICENSE cp NTS/src/deps/couchbase-cxx-client/LICENSE.txt lic/LICENSE.txt cd NTS +%patch0 -p1 -b.gcc13 + %if 0%{?rhel} == 7 sed -e 's/cmake/cmake3/' -i config.m4 %endif +sed -e 's/--verbose/%{?_smp_mflags} --verbose/' -i Makefile.frag # Sanity check, really often broken extver=$(sed -n '/#define PHP_COUCHBASE_VERSION/{s/.* "//;s/".*$//;p}' src/php_couchbase.hxx) @@ -269,6 +274,10 @@ fi %changelog +* Fri Feb 17 2023 Remi Collet - 4.1.0-2 +- fix GCC 13 build using patch from + https://github.com/couchbase/couchbase-php-client/pull/63 + * Mon Jan 23 2023 Remi Collet - 4.1.0-1 - update to 4.1.0 - drop patch merged upstream -- cgit