16.2.7, rebuild with gcc-12

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
This commit is contained in:
Kaleb S. KEITHLEY 2022-01-20 07:24:54 -05:00
parent 0c8ed285d3
commit 70e587526e
2 changed files with 88 additions and 1 deletions

83
0017-gcc-12-omnibus.patch Normal file
View File

@ -0,0 +1,83 @@
--- ceph-16.2.7/src/include/buffer.h.orig 2022-01-17 12:17:19.193356237 -0500
+++ ceph-16.2.7/src/include/buffer.h 2022-01-17 12:17:58.599639592 -0500
@@ -38,6 +38,7 @@
# include <sys/mman.h>
#endif
+#include <memory>
#include <iosfwd>
#include <iomanip>
#include <list>
--- ceph-16.2.7/src/common/LogEntry.cc.orig 2022-01-17 13:52:10.799134159 -0500
+++ ceph-16.2.7/src/common/LogEntry.cc 2022-01-17 13:52:47.244469274 -0500
@@ -183,7 +183,7 @@
return "crit";
default:
ceph_abort();
- return 0;
+ return "";
}
}
--- ceph-16.2.7/src/common/dout.h.orig 2022-01-18 08:58:11.805226954 -0500
+++ ceph-16.2.7/src/common/dout.h 2022-01-19 08:06:23.987388663 -0500
@@ -99,11 +99,15 @@
template<typename T>
struct dynamic_marker_t {
T value;
- operator T() const { return value; }
+ // constexpr ctor isn't needed as it's an aggregate type
+ constexpr operator T() const { return value; }
};
template<typename T>
-dynamic_marker_t<T> need_dynamic(T&& t) {
+constexpr dynamic_marker_t<T> need_dynamic(T&& t) {
+ // deprecated in C++17 but that's fine for testing
+ static_assert(std::is_literal_type_v<T>);
+ static_assert(std::is_literal_type_v<dynamic_marker_t<T>>);
return dynamic_marker_t<T>{ std::forward<T>(t) };
}
--- ceph-16.2.7/src/test/librados/tier_cxx.cc.orig 2022-01-19 09:30:47.209459506 -0500
+++ ceph-16.2.7/src/test/librados/tier_cxx.cc 2022-01-19 10:02:47.783240298 -0500
@@ -114,7 +114,7 @@
#include "rgw/rgw_common.h"
void check_fp_oid_refcount(librados::IoCtx& ioctx, std::string foid, uint64_t count,
- std::string fp_algo = NULL)
+ std::string fp_algo = "")
{
bufferlist t;
int size = foid.length();
@@ -142,7 +142,7 @@
ASSERT_LE(count, refs.count());
}
-string get_fp_oid(string oid, std::string fp_algo = NULL)
+string get_fp_oid(string oid, std::string fp_algo = "")
{
if (fp_algo == "sha1") {
unsigned char fingerprint[CEPH_CRYPTO_SHA1_DIGESTSIZE + 1];
--- ceph-16.2.7/src/test/test_trans.cc.orig 2022-01-19 13:24:33.460008897 -0500
+++ ceph-16.2.7/src/test/test_trans.cc 2022-01-19 13:24:58.211554005 -0500
@@ -51,7 +51,7 @@
cout << "#dev " << filename << std::endl;
cout << "#mb " << mb << std::endl;
- ObjectStore *fs = new FileStore(cct.get(), filename, NULL);
+ ObjectStore *fs = new FileStore(cct.get(), filename, "");
if (fs->mount() < 0) {
cout << "mount failed" << std::endl;
return -1;
--- ceph-16.2.7/src/s3select/include/s3select_functions.h.orig 2022-01-19 15:06:45.312783565 -0500
+++ ceph-16.2.7/src/s3select/include/s3select_functions.h 2022-01-19 15:08:17.270087590 -0500
@@ -142,7 +142,7 @@
virtual std::string print(int ident)
{
- return std::string(0);
+ return std::string("");
}
void push_argument(base_statement* arg)

View File

@ -128,7 +128,7 @@
#################################################################################
Name: ceph
Version: 16.2.7
Release: 3%{?dist}
Release: 4%{?dist}
%if 0%{?fedora} || 0%{?rhel}
Epoch: 2
%endif
@ -152,6 +152,7 @@ Patch0008: 0008-cmake-modules-Finduring.cmake.patch
Patch0014: 0014-rgw-Replace-boost-string_ref-view-with-std-string_vi.patch
Patch0015: 0015-src-kv-rocksdb_cache.patch
Patch0016: 0016-src-tracing-patch
Patch0017: 0017-gcc-12-omnibus.patch
# Source1: cmake-modules-BuildBoost.cmake.noautopatch
# ceph 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787
ExcludeArch: i686 armv7hl
@ -2516,6 +2517,9 @@ exit 0
%config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml
%changelog
* Thu Jan 20 2022 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 2:16.2.7-4
- 16.2.7, rebuild with gcc-12
* Mon Jan 10 2022 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 2:16.2.7-3
- 16.2.7, rebuild with fmt-8.1.1