Compare commits

...

157 Commits

Author SHA1 Message Date
Kaleb S. KEITHLEY 3c5598efe8 rebuild with libarrow-23.0.1, cmake-4-isms, lua-5.5 2026-02-17 12:52:35 -05:00
Kaleb S. KEITHLEY 8fa2f6e626 cmake-4-isms, use system zstd 2026-02-17 09:26:54 -05:00
Kaleb S. KEITHLEY 3a3173ee12 again 2026-02-16 19:59:06 -05:00
Kaleb S. KEITHLEY 0ceeb07f51 ceph-20.2.0, rebuild with libarrow-23.0.0, side tag f44-build-side-127546 2026-01-28 17:45:31 -05:00
Kaleb S. KEITHLEY df9f29a42f ceph-20.2.0, rhbz#2433903 2026-01-28 10:22:29 -05:00
Fedora Release Engineering 7a652c7616 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 08:52:11 +00:00
Fedora Release Engineering d26f7d1015 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 04:54:19 +00:00
Kaleb S. KEITHLEY 48feed4a4d disable crimson, core team says it's not ready for prime time 2025-12-10 10:58:08 -05:00
Kaleb S. KEITHLEY cf2bdd5f8e rhbz 2419150 2025-12-05 15:03:14 -05:00
Kaleb S. KEITHLEY 39ab64deb9 enable crimson.
unclear why smp_helpers.h inclusion of <crimson/common/coroutine.h is
not including <coroutine.h>, thus necessitating the patch
2025-12-04 12:50:11 -05:00
Kaleb S. KEITHLEY 73999fa1c0 Ceph 20.2.0 GA 2025-11-18 16:20:47 -05:00
Tom spot Callaway 20f3025d76 rebuild for new fuse3 2025-11-04 11:57:53 -05:00
Kaleb S. KEITHLEY ca9114cab0 rebuild with libarrow-22.0.0, side tag f44-build-side-121464 2025-10-24 15:01:36 -04:00
Kaleb S. KEITHLEY 3fddb94cca rhbz#2403112 2025-10-17 07:41:15 -04:00
Gordon Messmer b65611de9e Use rpm's native resource tunable to limit parallelism.
rpm 4.19 and newer have built-in tunable settings to limit
parallel tasks. This change adopts a common configuration to ease
collaboration with SUSE.
2025-10-16 18:10:57 -07:00
Kaleb S. KEITHLEY 059dc66b73 sync w/ upstream ceph.spec(.in) 2025-10-09 13:54:09 -04:00
Kaleb S. KEITHLEY 65f3783e6b ceph-20.1.1 RC 2025-10-08 06:52:36 -04:00
Kaleb S. KEITHLEY b7390cc379 - ceph-20.1.0 RC, rhbz#2396036 (gmock, gtest again) 2025-09-23 13:25:25 -04:00
Python Maint 12e10018d3 Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 12:10:54 +02:00
Kaleb S. KEITHLEY 3816c2c84c restore 0051-src-googletest-nosharedlibs.patch
and 0053-src-test-neorados-common_tests.h.patch
    rhbz#2395703
2025-09-16 08:19:30 -04:00
Kaleb S. KEITHLEY d412b12357 restore 0051-src-googletest-nosharedlibs.patch
and 0053-src-test-neorados-common_tests.h.patch
rhbz#2395703
2025-09-16 08:16:31 -04:00
Kaleb S. KEITHLEY 0e004b5c4d ceph-20.1.0 RC, rhbz#2394758 2025-09-12 08:42:08 -04:00
Kaleb S. KEITHLEY e734c59205 ceph-20.1.0 RC, rhbz#2394363 2025-09-10 21:06:19 -04:00
Kaleb S. KEITHLEY eb50428bb2 ceph-20.1.0 RC0, rhbz#2394363 2025-09-10 09:30:08 -04:00
Kaleb S. KEITHLEY ff96b156de ceph-20.1.0 RC0, rhbz#2394363 2025-09-10 09:12:45 -04:00
Kaleb S. KEITHLEY a71490735f ceph-20.1.0 RC
WITH_UADK aarch64 conditional in top-level CMakeLists.txt doesn't
appear to work as expected to disable UADK on aarch64
2025-09-09 16:25:39 -04:00
Kaleb S. KEITHLEY bae6b119a3 ceph-20.1.0 RC 2025-09-09 15:13:25 -04:00
Kaleb S. KEITHLEY 3d257c9866 f44-build-side-116633 2025-08-21 19:32:54 -04:00
Hector Martin 10c2ce06df Two mgr fixes
- Work around mgr `restful` module PyO3 failures
- Fix NOTIFY_TYPES exceptions during module import (rhbz#2361850)
2025-08-20 20:28:03 +09:00
Hector Martin 675842896e Fix F41 build 2025-08-20 20:05:37 +09:00
Hector Martin b383e9871a Fix mgr dashboard module failures due to unusable dependencies 2025-08-20 20:05:37 +09:00
Python Maint ed9eb44736 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 12:41:39 +02:00
Kaleb S. KEITHLEY 09ccc8e9b9 ceph-19.2.3, rhbz#2310236 2025-08-13 08:33:04 -04:00
František Zatloukal be4504721e Rebuilt for icu 77.1 2025-08-06 09:52:44 +02:00
Kaleb S. KEITHLEY 462b6371a8 ceph-19.2.3 GA 2025-07-28 17:44:49 -04:00
Fedora Release Engineering 73fbd52cf0 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 18:12:16 +00:00
Kaleb S. KEITHLEY 76311ff73d w/ libarrow-20 in f43-build-side-114791 w/ Python 3.14 2025-07-09 13:11:42 -04:00
Kaleb S. KEITHLEY 7777c12922 rebuild with libarrow-20 2025-07-07 20:23:59 -04:00
Miroslav Suchý 7b02812bfa update license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
Reported to upstream: https://github.com/ceph/ceph/pull/59650
2025-07-05 16:45:11 +02:00
Python Maint f30547975e Rebuilt for Python 3.14 2025-06-03 14:27:27 +02:00
Kaleb S. KEITHLEY 71415e347c python 3.14 ready. rhbz#2336913 2025-05-29 19:15:25 -04:00
Kaleb S. KEITHLEY ab3a611b40 build in side tag f43-build-side-110906 2025-04-28 15:56:49 -04:00
Zbigniew Jędrzejewski-Szmek 3e62f6732f Also use sysusers.d for the ceph user
Previously, the scriptlets that add 'cephadm' were converted. But the
ones for 'ceph' were missed. Let's rename the older sysusers file that
adds 'cephadm' to 'cephadm.conf', and add a new file 'ceph.conf' for
the -common subpackage.
2025-04-17 10:57:18 +02:00
Zbigniew Jędrzejewski-Szmek 79153d6480 Fix location of ceph-create-keys
The end state in F42+ must be that all files are under /usr/bin as reported in
%files. (Then filesystem.rpm takes care of making either /usr/sbin a symlink or
providing individual symlinks under /usr/sbin.)  Since %_sbindir is defined as
/usr/bin, the same as %_bindir, there is no need to replace instances of
%_sbindir in the spec file. In fact, to avoid churn and make it easier to
retain compatibility with older branches, we kept %_sbindir use in most
packages. After F41 and older stop being supported, we might clean that up and
use %_bindir everywhere, but it's just a cosmetic issue.
Right now, the use of %{_exec_prefix}/sbin/ hardcodes the path to the wrong
value and prevents the merge from being finalized.
2025-04-16 17:49:07 +02:00
Zbigniew Jędrzejewski-Szmek 523d1206e6 Avoid unexpanded macro in comment 2025-04-16 11:29:49 +02:00
Kaleb S. KEITHLEY 74fb57d14d ceph-19.2.2, rhbz#2359214 again 2025-04-14 08:38:52 -04:00
Kaleb S. KEITHLEY 72afc44846 ceph-19.2.2, rhbz#2359214 2025-04-12 10:38:29 -04:00
Kaleb S. KEITHLEY 709057efd7 ceph-19.2.2 GA 2025-04-11 07:32:35 -04:00
Kaleb S. KEITHLEY e2f83f0159 rebuild with libarrow-19.0.1 (and liborc-2.1.1) 2025-03-13 17:02:15 -04:00
Kaleb S. KEITHLEY 84c56bc5b9 cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
cephadm
2025-03-07 08:24:01 -05:00
Kaleb S. KEITHLEY 051c60d292 cmake-4, again 2025-03-01 14:23:14 -05:00
Kaleb S. KEITHLEY cd9775de83 rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
rebuild w/ cmake-4
2025-03-01 14:21:52 -05:00
Kaleb S. KEITHLEY bf3e97a4bf ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
2025-02-17 16:01:06 -05:00
Zbigniew Jędrzejewski-Szmek 10008f4d4d Add sysusers.d config file to allow rpm to create users/groups automatically
While at it, drop scriptlet to delete the user. This is not reliable
and should not be done.
2025-02-08 17:46:40 +01:00
Kaleb S. KEITHLEY 9a53ef8bfc ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
ceph-19.2.1, rebuild w/ libarrow 19, liborc 2.1, f43-build-side-105129
2025-02-07 09:55:55 -05:00
Kaleb S. KEITHLEY 2126a0838a ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
ceph-19.2.1 GA
2025-02-07 04:59:29 -05:00
Kaleb S. KEITHLEY b6da7b6869 again. Seems like %_sbindir has finally settled down in rawhide 2025-01-28 09:38:48 -05:00
Kaleb S. KEITHLEY 211fde613e again 2025-01-27 07:29:52 -05:00
Kaleb S. KEITHLEY 0355ace5e2 hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
2025-01-26 19:32:46 -05:00
Kaleb S. KEITHLEY 8b27c56f29 hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs rhbz#2341687
2025-01-26 18:34:03 -05:00
Kaleb S. KEITHLEY 4751d59373 hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
hack around cmake -std=gnu99 w/ userspace-rcu
use system version of gmock and gtest to avoid bundled brain damage
  that creates but does not install gmock and gtest shlibs #rhbz#2341687
2025-01-24 14:51:21 -05:00
Kaleb S. KEITHLEY cb9e33d375 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
2025-01-17 09:18:06 -05:00
Fedora Release Engineering ef563fd8d7 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 13:31:36 +00:00
Kaleb S. KEITHLEY 396c7768f7 remove openssl-engine 2024-12-31 13:01:04 -05:00
Kaleb S. KEITHLEY 7782c6b1de Merge #17 Remove openssl-devel-engine dependency 2024-12-19 21:30:22 +00:00
Pete Walter 777309ac00 Rebuild for ICU 76 2024-12-08 22:08:05 +00:00
Yaakov Selkowitz 9e8f3de90d Remove openssl-devel-engine dependency
https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine
2024-12-04 21:55:41 -05:00
Kaleb S. KEITHLEY b2198c3560 build in f42-build-side-100844 again 2024-11-26 15:11:47 -05:00
Kaleb S. KEITHLEY b4f3e5cd1b build in f42-build-side-100844 again 2024-11-26 13:32:09 -05:00
Kaleb S. KEITHLEY 4d7d8d4f06 build in f42-build-side-100844 2024-11-22 13:32:43 -05:00
Kaleb S. KEITHLEY 9fe6d8aff6 and back; ceph-19.2.0 scikit_learn -> scikit-learn rhbz#2327036 2024-11-18 12:17:52 -05:00
Miroslav Suchý 542aea1c02 fix error in License tag
This is follow up of https://src.fedoraproject.org/rpms/ceph/pull-request/15
2024-11-14 14:22:44 +01:00
Kaleb S. KEITHLEY 5b30d830a7 ceph-19.2.0 scikit-learn -> scikit_learn rhbz#2325990 2024-11-13 14:29:39 -05:00
Miroslav Suchý 57f6aa766d Migrate to SPDX license (temporary ids)
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4

Note that this is an SPDX identifier, but it still needs to be migrated to the proper identifiers in the fedora-license-data set.
2024-11-04 19:18:06 +00:00
Orion Poplawski d890f19b59 Rebuild for yaml-cpp 0.8 2024-10-24 21:01:39 -06:00
Kaleb S. KEITHLEY 3cf60da63e ceph-19.2.0 GA 2024-09-20 10:50:20 -04:00
Kaleb S. KEITHLEY 1617d904e2 ceph-19.1.1 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-08-23 13:27:06 -04:00
Kaleb S. KEITHLEY e75c15b5e1 possible fix for ppc64le build, see rhbz 2297744
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-26 10:50:34 -04:00
Fedora Release Engineering a5f57bdda7 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 19:08:36 +00:00
Kaleb S. KEITHLEY d43cb58ea8 install libtacopie.so
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-12 07:39:44 -04:00
Kaleb S. KEITHLEY 77b4049f20 install libtacopie.so
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-12 05:35:25 -04:00
Kaleb S. KEITHLEY 6760483703 install libcpp_redis.so
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-11 19:16:37 -04:00
Kaleb S. KEITHLEY 6f7af637e0 ceph-19.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-10 16:26:59 -04:00
Kaleb S. KEITHLEY 04cb11136d ceph-19.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-10 08:39:24 -04:00
Kaleb S. KEITHLEY dfb67a0a2d ceph-19.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-09 18:59:13 -04:00
Kaleb S. KEITHLEY 8c24c6966e ceph-19.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-09 15:03:23 -04:00
Kaleb S. KEITHLEY 0707993c6f Rebuild with OpenSSL-3.2.2, w/ openssl-devel-engine
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-09 07:41:58 -04:00
Kaleb S. KEITHLEY 7b9e357bb6 Rebuild with OpenSSL-3.2.2, w/ openssl-devel-engine
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-09 06:53:02 -04:00
Kaleb S. KEITHLEY 5487589f86 Rebuild with OpenSSL-3.2.2, w/ openssl-devel-engine
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-09 06:31:36 -04:00
Kaleb S. KEITHLEY 4dc6f31337 Rebuild with OpenSSL-3.2.2
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-08 17:11:49 -04:00
Kaleb S. KEITHLEY b1b1f3dfe5 Merge branch 'rawhide' of ssh://pkgs.fedoraproject.org/rpms/ceph into rawhide 2024-07-08 17:10:15 -04:00
Kaleb S. KEITHLEY af927eceb5 Rebuild with OpenSSL-3.2.2
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-07-08 17:08:27 -04:00
Python Maint c302acab65 Rebuilt for Python 3.13 2024-06-08 22:29:49 +02:00
Kaleb S. KEITHLEY fdf49fe866 python 3.13 fixes
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-06-07 15:44:57 -04:00
Orion Poplawski 9d891cfd36 Rebuild with thrift 0.20 2024-06-02 16:19:43 -06:00
Kaleb S. KEITHLEY d17727fb4b ceph-18.2.3, enable system boost
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-05-21 08:27:25 -04:00
Kaleb S. KEITHLEY d95a6a107c ceph-18.2.3, rebuild with libarrow-16.1.0,
disable LTO w/ gcc-4.1.1

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-05-20 19:02:18 -04:00
Kaleb S. KEITHLEY b34a342a82 ceph-18.2.3, rebuild with libarrow-16.1.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-05-14 13:59:45 -04:00
Kaleb S. KEITHLEY cecbd5cbdf ceph-18.2.3 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-04-29 16:19:26 -04:00
Kaleb S. KEITHLEY e8164fa77c rebuild with libarrow-16.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-04-22 19:48:35 -04:00
Kaleb S. KEITHLEY 9c0641baab rebuild with libarrow-15.0.2
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-03-19 10:55:33 -04:00
Kaleb S. KEITHLEY 5bc9386587 rebuild with libarrow-15.0.1. (And liborc-2.0.0)
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-03-15 12:05:52 -04:00
Kaleb S. KEITHLEY 7540adc072 ceph-18.2.2 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-03-07 10:07:42 -05:00
Kaleb S. KEITHLEY 82ef40294e ceph-18.2.2 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-03-07 10:00:44 -05:00
David Abdurachmanov 4321616c47 Add support for riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2024-03-06 13:14:01 +00:00
Jiri Vanek 977cf2d586 Rebuilt for java-21-openjdk as system jdk
https://fedoraproject.org/wiki/Changes/Java21
2024-02-27 14:49:18 +01:00
Pete Walter 6bb18287b9 Rebuild for ICU 74 2024-01-31 19:17:02 +00:00
Kaleb S. KEITHLEY 65df1602ea rebuild for libarrow-15.0.0, rhbz#2260552
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-01-26 16:53:55 -05:00
Kaleb S. KEITHLEY dc1eeaa798 rebuild for Fedora_40_Mass_Rebuild, gcc-14, and rocksdb-8.10.0,
libarrow-14.0.2

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-01-24 15:46:18 -05:00
Fedora Release Engineering 95d7b57b43 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-23 01:25:53 +00:00
Fedora Release Engineering 4bd0193db5 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 15:15:39 +00:00
Florian Weimer 570bcf896e Backport upstream patches to fix C compatibility issues
Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2024-01-15 09:59:34 +01:00
Kaleb S. KEITHLEY 675cabaa42 rebuild with rocksdb-8.10.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2024-01-13 22:16:44 -05:00
Kaleb S. KEITHLEY 804d48f233 ceph-18.2.1, incorporate changes from *final* 18.2.1 release from
https://download.ceph.com/rpm-18.2.1/el9/SRPMS/ceph-18.2.1-0.el9.src.rpm

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-12-19 09:16:33 -05:00
Kaleb S. KEITHLEY ae476e040f ceph-18.2.1, rebuild for f40-build-side-76708, w/ libarrow-14.0.1,
and liborc-1.9.2

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-15 19:41:31 -05:00
Kaleb S. KEITHLEY 30fd6bd235 ceph-18.2.1 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-15 10:11:37 -05:00
Kaleb S. KEITHLEY e61e83bf2e Rebuild for gtest 1.14.0 and libarrow 14.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-01 15:52:10 -04:00
Kaleb S. KEITHLEY 1add7973a9 Rebuild for Apache Arrow (libarrow) 14.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-01 14:40:24 -04:00
Kaleb S. KEITHLEY dae4d4a3ac Rebuild for Apache Arrow (libarrow) 14.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-01 13:15:02 -04:00
Kaleb S. KEITHLEY f7b9e58050 Rebuild for Apache Arrow (libarrow) 14.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-01 10:14:23 -04:00
Kaleb S. KEITHLEY 3430d480f2 Rebuild for gtest 1.14.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-11-01 09:08:39 -04:00
Terje Rosten df3c9e92fb Rebuild for gtest 1.14.0 2023-10-31 20:02:10 +01:00
Kaleb S. KEITHLEY 649f961fa0 ceph-18.2.0, rebuild in side tag (f40-build-side-74974)
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-10-05 11:36:47 -04:00
Kaleb S. KEITHLEY ed9b5e1f74 ceph-18.2.0 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-08-04 07:49:13 -04:00
Kaleb S. KEITHLEY 1bf01fccf7 ceph-18.1.3 RC4, rebuild with libarrow-13.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-08-01 18:10:21 -04:00
Kaleb S. KEITHLEY 93a4fe7597 ceph-18.1.3 RC4
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-26 14:00:08 -04:00
Kaleb S. KEITHLEY 1ca647a4b9 ceph-18.1.3 RC4
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-26 11:14:27 -04:00
Kaleb S. KEITHLEY 88108d8c98 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
revert python3-Cython -> python3dist(cython) < 3~~

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-24 14:37:02 -04:00
Kaleb S. KEITHLEY 6f79abf9c3 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
with python3-Cython -> python3dist(cython) < 3~~

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-20 18:05:16 -04:00
Fedora Release Engineering 0d1cc731ad Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 15:29:34 +00:00
František Zatloukal 5e76bc0ad4 Rebuilt for ICU 73.2 2023-07-11 23:26:31 +02:00
Yaakov Selkowitz 6f9f7e2e4a Fix build with Python 3.12
pathfix.py is no longer installed, but this macro is compatible with all
supported versions.
2023-07-06 13:28:46 -04:00
Yaakov Selkowitz 085cd612d4 Fix rocksdb conditional
Use of the system rocksdb is disabled for Fedora and RHEL 10+, not
enabled, because rocksdb there is too new.
2023-07-06 13:21:33 -04:00
Kaleb S. KEITHLEY aa691eb6d2 Rebuilt for Python 3.12
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-04 23:44:05 -04:00
Kaleb S. KEITHLEY 468a2c36ab ceph-18.1.2 RC3
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-07-04 23:39:25 -04:00
Kaleb S. KEITHLEY 1980396784 Rebuilt for Python 3.12
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-18 14:12:00 -04:00
Kaleb S. KEITHLEY 91dd896847 ceph-18.1.1 RC2
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-18 13:49:57 -04:00
Kaleb S. KEITHLEY ca81cd2515 Rebuilt for Python 3.12
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-18 13:09:10 -04:00
Kaleb S. KEITHLEY 617d537253 ceph-18.1.1 RC2
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-18 13:07:33 -04:00
Kaleb S. KEITHLEY 35042fccaa Rebuilt for Python 3.12
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-15 18:03:55 -04:00
Kaleb S. KEITHLEY c89ec5de2b remove requires for nonexistant libjaeger, rhbz#2215320
sync w/ upstream ceph.spec(.in), sanity check

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-15 17:12:00 -04:00
Python Maint 9c5f485aa9 Rebuilt for Python 3.12 2023-06-15 15:34:18 +02:00
Kaleb S. KEITHLEY 4f4defa7e2 ceph-18.1.0 RC1
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-06-13 17:29:30 -04:00
Yaakov Selkowitz 1ab48d0e0d Do not use mold in RHEL/ELN builds 2023-06-06 20:33:50 -04:00
Kaleb S. KEITHLEY 9a0799bc61 ceph-17.2.6, use ldconfig and ldconfig_scriptlet macros
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-05-19 10:08:37 -04:00
Kaleb S. KEITHLEY c817d5a04e ceph-17.2.6, log create of global_legacy_options.h
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-05-10 10:56:37 -04:00
Kaleb S. KEITHLEY 0e8a2ef902 ceph-17.2.6, rebuild with libarrow-12.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-05-01 10:20:21 -04:00
Kaleb S. KEITHLEY d3ad3a08bd ceph-17.2.6, rebuild boost asm with IBT, SHSTK (librgw.so)
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-30 19:18:51 -04:00
Kaleb S. KEITHLEY dcf07e8b7f ceph-17.2.6, rebuild boost with -fcf-protection
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-28 09:09:35 -04:00
Kaleb S. KEITHLEY dbd2b71d9d ceph-17.2.6, rebuild boost with -fcf-protection
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-28 07:51:05 -04:00
Kaleb S. KEITHLEY 2cc4dd5e37 ceph-17.2.6, rebuild boost with -fcf-protection
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-27 19:28:57 -04:00
Kaleb S. KEITHLEY e5f1594856 ceph-17.2.6, rebuild with bundled rocksdb until ready for rocksdb-8.x
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-22 10:08:11 -04:00
Kaleb S. KEITHLEY 3d4788fc3e patch0027 2023-04-20 13:56:14 -04:00
Kaleb S. KEITHLEY 2fec333c00 patch0027 again 2023-04-20 11:39:30 -04:00
Kaleb S. KEITHLEY 460ba1ceb5 patch0027 2023-04-20 10:57:15 -04:00
Kaleb S. KEITHLEY 58319e8d44 patch0027 2023-04-20 10:56:03 -04:00
Kaleb S. KEITHLEY 4844e582ac ceph-17.2.6, rebuild with rocksdb-8.0.0
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2023-04-20 10:05:42 -04:00
36 changed files with 1828 additions and 3646 deletions
-11
View File
@@ -1,11 +0,0 @@
--- ceph-16.1.0-43-g6b74fb5c/cmake/modules/Finduring.cmake.orig 2021-02-01 08:45:39.316108287 -0500
+++ ceph-16.1.0-43-g6b74fb5c/cmake/modules/Finduring.cmake 2021-02-01 08:45:59.813665378 -0500
@@ -5,7 +5,7 @@
# uring_FOUND - True if uring found.
find_path(URING_INCLUDE_DIR liburing.h)
-find_library(URING_LIBRARIES liburing.a liburing)
+find_library(URING_LIBRARIES liburing.so liburing)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(uring DEFAULT_MSG URING_LIBRARIES URING_INCLUDE_DIR)
-63
View File
@@ -1,63 +0,0 @@
--- 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/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-17.0.0-10335-gfd206722/src/s3select/include/s3select_functions.h.orig 2022-02-11 17:21:40.268627997 -0500
+++ ceph-17.0.0-10335-gfd206722/src/s3select/include/s3select_functions.h 2022-02-11 17:21:57.155325437 -0500
@@ -466,7 +466,7 @@
std::string print(int ident) override
{
- return std::string(0);
+ return std::string("");
}
void push_argument(base_statement* arg)
@@ -1,24 +1,15 @@
--- ceph-17.1.0/src/rgw/store/dbstore/sqlite/CMakeLists.txt.orig 2022-03-01 08:19:04.974902872 -0500
+++ ceph-17.1.0/src/rgw/store/dbstore/sqlite/CMakeLists.txt 2022-03-11 07:55:16.236261471 -0500
@@ -12,5 +12,5 @@
set(SQLITE_COMPILE_FLAGS "-DSQLITE_THREADSAFE=1")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SQLITE_COMPILE_FLAGS}")
-add_library(sqlite_db ${sqlite_db_srcs})
+add_library(sqlite_db STATIC ${sqlite_db_srcs})
target_link_libraries(sqlite_db sqlite3 dbstore_lib rgw_common)
--- ceph-17.1.0/src/rgw/store/dbstore/CMakeLists.txt.orig 2022-02-28 14:11:49.987077811 -0500
+++ ceph-17.1.0/src/rgw/store/dbstore/CMakeLists.txt 2022-03-11 08:40:13.409682698 -0500
@@ -16,7 +16,7 @@
--- ceph-18.0.0-3078-gc4847bf8/src/rgw/driver/dbstore/CMakeLists.txt.orig 2023-05-10 08:23:50.000000000 -0400
+++ ceph-18.0.0-3078-gc4847bf8/src/rgw/driver/dbstore/CMakeLists.txt 2023-05-11 08:21:13.794152904 -0400
@@ -24,7 +24,7 @@
dbstore_mgr.cc
)
-add_library(dbstore_lib ${dbstore_srcs})
+add_library(dbstore_lib STATIC ${dbstore_srcs})
target_include_directories(dbstore_lib PUBLIC "${CMAKE_SOURCE_DIR}/src/fmt/include")
target_include_directories(dbstore_lib PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw")
set(link_targets spawn)
@@ -38,6 +38,7 @@
target_include_directories(dbstore_lib
PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw"
PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/store/rados"
@@ -49,6 +49,7 @@
# add pthread library
set (CMAKE_LINK_LIBRARIES ${CMAKE_LINK_LIBRARIES} pthread)
@@ -26,12 +17,3 @@
find_package(gtest QUIET)
if(WITH_TESTS)
@@ -47,7 +48,7 @@
endif()
include_directories(${CMAKE_INCLUDE_DIR})
-add_library(dbstore ${dbstore_mgr_srcs})
+add_library(dbstore STATIC ${dbstore_mgr_srcs})
target_link_libraries(dbstore ${CMAKE_LINK_LIBRARIES})
# testing purpose
@@ -1,43 +0,0 @@
--- ceph-17.2.0-359-gb2fe9ec8/cmake/modules/CheckCxxAtomic.cmake.orig 2022-06-03 08:45:32.341075140 -0400
+++ ceph-17.2.0-359-gb2fe9ec8/cmake/modules/CheckCxxAtomic.cmake 2022-06-03 08:46:47.195775813 -0400
@@ -10,8 +10,9 @@
check_cxx_source_compiles("
#include <atomic>
#include <cstdint>
+#include <cstddef>
-#if defined(__s390x__) || defined(__mips__)
+#if defined(__SIZEOF_INT128__)
// Boost needs 16-byte atomics for tagged pointers.
// These are implemented via inline instructions on the platform
// if 16-byte alignment can be proven, and are delegated to libatomic
@@ -21,13 +22,27 @@
// We specifically test access via an otherwise unknown pointer here
// to ensure we get the most complex case. If this access can be
// done without libatomic, then all accesses can be done.
-bool atomic16(std::atomic<unsigned __int128> *ptr)
+struct tagged_ptr {
+ int* ptr;
+ std::size_t tag;
+};
+
+void atomic16(std::atomic<tagged_ptr> *ptr) __attribute__ ((used));
+void atomic16(std::atomic<tagged_ptr> *ptr)
{
- return *ptr != 0;
+ tagged_ptr p{nullptr, 1};
+ ptr->store(p);
+ tagged_ptr f = ptr->load();
+ tagged_ptr new_tag{nullptr, 0};
+ ptr->compare_exchange_strong(f, new_tag);
}
#endif
int main() {
+#if defined(__SIZEOF_INT128__)
+ std::atomic<tagged_ptr> ptr;
+ atomic16(&ptr);
+#endif
std::atomic<uint8_t> w1;
std::atomic<uint16_t> w2;
std::atomic<uint32_t> w4;
@@ -1,11 +0,0 @@
--- ceph-17.1.0-175-g086c8f84/src/arrow/cpp/cmake_modules/ThirdpartyToolchain.cmake.orig 2022-04-08 11:27:53.593570634 -0400
+++ ceph-17.1.0-175-g086c8f84/src/arrow/cpp/cmake_modules/ThirdpartyToolchain.cmake 2022-04-08 11:28:20.778087653 -0400
@@ -1991,7 +1991,7 @@
if((NOT ARROW_SIMD_LEVEL STREQUAL "NONE") OR (NOT ARROW_RUNTIME_SIMD_LEVEL STREQUAL "NONE"
))
- set(xsimd_SOURCE "BUNDLED")
+ set(xsimd_SOURCE "SYSTEM")
resolve_dependency(xsimd)
# TODO: Don't use global includes but rather target_include_directories
include_directories(SYSTEM ${XSIMD_INCLUDE_DIR})
File diff suppressed because it is too large Load Diff
@@ -1,28 +0,0 @@
From fff72cd14c58d06774cbd0274e6144b42448af03 Mon Sep 17 00:00:00 2001
From: "Adam C. Emerson" <aemerson@redhat.com>
Date: Mon, 7 Mar 2022 18:54:30 -0500
Subject: [PATCH] mon: Replace deprecated use of format_to
The non-deprecated version takes an explicit OutputIterator.
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
---
src/mon/LogMonitor.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mon/LogMonitor.cc b/src/mon/LogMonitor.cc
index 9103ddf7c5b..c196e8429fb 100644
--- a/src/mon/LogMonitor.cc
+++ b/src/mon/LogMonitor.cc
@@ -411,7 +411,7 @@ void LogMonitor::log_external(const LogEntry& le)
}
if (fd >= 0) {
- fmt::format_to(file_log_buffer, "{}\n", le);
+ fmt::format_to(std::back_inserter(file_log_buffer), "{}\n", le);
int err = safe_write(fd, file_log_buffer.data(), file_log_buffer.size());
file_log_buffer.clear();
if (err < 0) {
--
2.36.1
@@ -1,218 +0,0 @@
--- ceph-17.2.3/src/s3select/include/s3select_parquet_intrf.h.orig 2022-01-11 15:47:52.000000000 -0500
+++ ceph-17.2.3/src/s3select/include/s3select_parquet_intrf.h 2022-08-22 10:26:06.738082924 -0400
@@ -26,6 +26,14 @@
#include "internal_file_decryptor.h"
#include "encryption_internal.h"
+#if ARROW_VERSION_MAJOR < 9
+#define _ARROW_FD fd_
+#define _ARROW_FD_TYPE int
+#else
+#define _ARROW_FD fd_.fd()
+#define _ARROW_FD_TYPE arrow::internal::FileDescriptor
+#endif
+
/******************************************/
/******************************************/
class optional_yield;
@@ -164,7 +172,7 @@
std::mutex lock_;
// File descriptor
- int fd_;
+ _ARROW_FD_TYPE fd_;
FileMode::type mode_;
@@ -202,7 +210,7 @@
mode_ = write_only ? FileMode::WRITE : FileMode::READWRITE;
if (!truncate) {
- ARROW_ASSIGN_OR_RAISE(size_, ::arrow::internal::FileGetSize(fd_));
+ ARROW_ASSIGN_OR_RAISE(size_, ::arrow::internal::FileGetSize(_ARROW_FD));
} else {
size_ = 0;
}
@@ -222,7 +230,11 @@
RETURN_NOT_OK(SetFileName(fd));
is_open_ = true;
mode_ = FileMode::WRITE;
+ #if ARROW_VERSION_MAJOR < 9
fd_ = fd;
+ #else
+ fd_ = arrow::internal::FileDescriptor{fd};
+ #endif
return Status::OK();
}
@@ -230,7 +242,7 @@
RETURN_NOT_OK(SetFileName(path));
ARROW_ASSIGN_OR_RAISE(fd_, ::arrow::internal::FileOpenReadable(file_name_));
- ARROW_ASSIGN_OR_RAISE(size_, ::arrow::internal::FileGetSize(fd_));
+ ARROW_ASSIGN_OR_RAISE(size_, ::arrow::internal::FileGetSize(_ARROW_FD));
is_open_ = true;
mode_ = FileMode::READ;
@@ -242,7 +254,11 @@
RETURN_NOT_OK(SetFileName(fd));
is_open_ = true;
mode_ = FileMode::READ;
+ #if ARROW_VERSION_MAJOR < 9
fd_ = fd;
+ #else
+ fd_ = arrow::internal::FileDescriptor{fd};
+ #endif
return Status::OK();
}
@@ -258,9 +274,13 @@
// Even if closing fails, the fd will likely be closed (perhaps it's
// already closed).
is_open_ = false;
+ #if ARROW_VERSION_MAJOR < 9
int fd = fd_;
fd_ = -1;
RETURN_NOT_OK(::arrow::internal::FileClose(fd));
+ #else
+ RETURN_NOT_OK(fd_.Close());
+ #endif
}
return Status::OK();
}
@@ -268,7 +288,7 @@
Result<int64_t> Read(int64_t nbytes, void* out) override {
RETURN_NOT_OK(CheckClosed());
RETURN_NOT_OK(CheckPositioned());
- return ::arrow::internal::FileRead(fd_, reinterpret_cast<uint8_t*>(out), nbytes);
+ return ::arrow::internal::FileRead(_ARROW_FD, reinterpret_cast<uint8_t*>(out), nbytes);
}
Result<int64_t> ReadAt(int64_t position, int64_t nbytes, void* out) override {
@@ -277,7 +297,7 @@
// ReadAt() leaves the file position undefined, so require that we seek
// before calling Read() or Write().
need_seeking_.store(true);
- return ::arrow::internal::FileReadAt(fd_, reinterpret_cast<uint8_t*>(out), position,
+ return ::arrow::internal::FileReadAt(_ARROW_FD, reinterpret_cast<uint8_t*>(out), position,
nbytes);
}
@@ -286,7 +306,7 @@
if (pos < 0) {
return Status::Invalid("Invalid position");
}
- Status st = ::arrow::internal::FileSeek(fd_, pos);
+ Status st = ::arrow::internal::FileSeek(_ARROW_FD, pos);
if (st.ok()) {
need_seeking_.store(false);
}
@@ -295,7 +315,7 @@
Result<int64_t> Tell() const override {
RETURN_NOT_OK(CheckClosed());
- return ::arrow::internal::FileTell(fd_);
+ return ::arrow::internal::FileTell(_ARROW_FD);
}
Status Write(const void* data, int64_t length) override {
@@ -306,11 +326,11 @@
if (length < 0) {
return Status::IOError("Length must be non-negative");
}
- return ::arrow::internal::FileWrite(fd_, reinterpret_cast<const uint8_t*>(data),
+ return ::arrow::internal::FileWrite(_ARROW_FD, reinterpret_cast<const uint8_t*>(data),
length);
}
- int fd() const override { return fd_; }
+ int fd() const override { return _ARROW_FD; }
bool is_open() const override { return is_open_; }
@@ -345,7 +365,7 @@
std::mutex lock_;
// File descriptor
- int fd_;
+ _ARROW_FD_TYPE fd_;
FileMode::type mode_;
@@ -411,7 +431,11 @@
// already closed).
is_open_ = false;
//int fd = fd_;
+ #if ARROW_VERSION_MAJOR < 9
fd_ = -1;
+ #else
+ fd_.Close();
+ #endif
//RETURN_NOT_OK(::arrow::internal::FileClose(fd));
}
return Status::OK();
@@ -421,7 +445,7 @@
NOT_IMPLEMENT;
RETURN_NOT_OK(CheckClosed());
RETURN_NOT_OK(CheckPositioned());
- return ::arrow::internal::FileRead(fd_, reinterpret_cast<uint8_t*>(out), nbytes);
+ return ::arrow::internal::FileRead(_ARROW_FD, reinterpret_cast<uint8_t*>(out), nbytes);
}
Result<int64_t> ReadAt(int64_t position, int64_t nbytes, void* out) {
@@ -443,7 +467,7 @@
return Status::OK();
}
- int fd() const { return fd_; }
+ int fd() const { return _ARROW_FD; }
bool is_open() const { return is_open_; }
@@ -467,7 +491,7 @@
std::mutex lock_;
// File descriptor
- int fd_;
+ _ARROW_FD_TYPE fd_;
FileMode::type mode_;
@@ -609,7 +633,7 @@
for (const auto& range : ranges) {
RETURN_NOT_OK(internal::ValidateRange(range.offset, range.length));
#if defined(POSIX_FADV_WILLNEED)
- if (posix_fadvise(fd_, range.offset, range.length, POSIX_FADV_WILLNEED)) {
+ if (posix_fadvise(_ARROW_FD, range.offset, range.length, POSIX_FADV_WILLNEED)) {
return IOErrorFromErrno(errno, "posix_fadvise failed");
}
#elif defined(F_RDADVISE) // macOS, BSD?
@@ -617,7 +641,7 @@
off_t ra_offset;
int ra_count;
} radvisory{range.offset, static_cast<int>(range.length)};
- if (radvisory.ra_count > 0 && fcntl(fd_, F_RDADVISE, &radvisory) == -1) {
+ if (radvisory.ra_count > 0 && fcntl(_ARROW_FD, F_RDADVISE, &radvisory) == -1) {
return IOErrorFromErrno(errno, "fcntl(fd, F_RDADVISE, ...) failed");
}
#endif
@@ -970,6 +994,9 @@
CryptoContext ctx(col->has_dictionary_page(), row_group_ordinal_,
static_cast<int16_t>(i), meta_decryptor, data_decryptor);
return PageReader::Open(stream, col->num_values(), col->compression(),
+ #if ARROW_VERSION_MAJOR > 8
+ false,
+ #endif
properties_.memory_pool(), &ctx);
}
@@ -985,6 +1012,9 @@
CryptoContext ctx(col->has_dictionary_page(), row_group_ordinal_,
static_cast<int16_t>(i), meta_decryptor, data_decryptor);
return PageReader::Open(stream, col->num_values(), col->compression(),
+ #if ARROW_VERSION_MAJOR > 8
+ false,
+ #endif
properties_.memory_pool(), &ctx);
}
+17 -77
View File
@@ -1,6 +1,6 @@
--- ceph-17.2.5/src/common/subsys_types.h.orig 2023-01-17 05:29:55.711592884 -0500
+++ ceph-17.2.5/src/common/subsys_types.h 2023-01-17 05:31:05.759282197 -0500
@@ -53,7 +53,7 @@
--- ceph-18.1.2/src/common/subsys_types.h.orig 2023-06-27 15:59:59.000000000 -0400
+++ ceph-18.1.2/src/common/subsys_types.h 2023-07-04 19:36:55.941238973 -0400
@@ -54,7 +54,7 @@
#undef DEFAULT_SUBSYS
}
@@ -9,28 +9,8 @@
ceph_subsys_get_max_default_level(const std::size_t subidx) {
const auto item = ceph_subsys_get_as_array()[subidx];
return std::max(item.log_level, item.gather_level);
--- ceph-17.2.5/src/msg/async/compression_onwire.h.orig 2023-01-17 07:34:31.923701878 -0500
+++ ceph-17.2.5/src/msg/async/compression_onwire.h 2023-01-17 07:35:04.493093534 -0500
@@ -44,7 +44,7 @@
class TxHandler final : private Handler {
public:
- TxHandler(CephContext* const cct, CompressorRef compressor, int mode, std::uint64_t min_size)
+ TxHandler(CephContext* const cct, CompressorRef compressor, int mode, uint64_t min_size)
: Handler(cct, compressor),
m_min_size(min_size),
m_mode(static_cast<Compressor::CompressionMode>(mode))
@@ -97,7 +97,7 @@
static rxtx_t create_handler_pair(
CephContext* ctx,
const CompConnectionMeta& comp_meta,
- std::uint64_t compress_min_size);
+ uint64_t compress_min_size);
};
}
--- ceph-17.2.5/src/msg/async/crypto_onwire.h.orig 2023-01-17 07:35:35.535513714 -0500
+++ ceph-17.2.5/src/msg/async/crypto_onwire.h 2023-01-17 07:35:46.578307452 -0500
--- ceph-18.1.2/src/msg/async/crypto_onwire.h.orig 2023-06-27 15:59:59.000000000 -0400
+++ ceph-18.1.2/src/msg/async/crypto_onwire.h 2023-07-04 19:36:55.957238704 -0400
@@ -95,7 +95,7 @@
// Transmitter can append extra bytes of ciphertext at the -final step.
// This method return how much was added, and thus let client translate
@@ -40,63 +20,23 @@
// Instance of RxHandler must be reset before doing any decrypt-update
// step. This applies also to situation when decrypt-final was already
--- ceph-17.2.5/src/common/Cycles.h.orig 2023-01-17 07:56:19.787662012 -0500
+++ ceph-17.2.5/src/common/Cycles.h 2023-01-17 07:56:57.852980655 -0500
@@ -29,8 +29,9 @@
*/
-#ifndef CEPH_CYCLES_H
-#define CEPH_CYCLES_H
+#pragma once
+
+#include <cstdint>
/**
* This class provides static methods that read the fine-grain CPU
@@ -112,4 +113,3 @@
}
};
-#endif // CEPH_CYCLES_H
--- ceph-17.2.5/src/test/librados/op_speed.cc.orig 2023-01-17 08:57:37.078531022 -0500
+++ ceph-17.2.5/src/test/librados/op_speed.cc 2023-01-17 08:57:58.259139439 -0500
@@ -9,7 +9,7 @@
for (int i = 0; i < to_create; ++i) {
librados::ObjectReadOperation op;
bufferlist bl;
- std::uint64_t sz;
+ uint64_t sz;
struct timespec tm;
std::map<std::string, ceph::buffer::list> xattrs;
std::map<std::string, ceph::buffer::list> omap;
--- ceph-17.2.5/src/test/mon/test_log_rss_usage.cc.orig 2023-01-17 10:14:37.552820230 -0500
+++ ceph-17.2.5/src/test/mon/test_log_rss_usage.cc 2023-01-17 10:15:12.319202506 -0500
@@ -5,6 +5,7 @@
--- ceph-18.1.2/src/rocksdb/table/block_based/data_block_hash_index.h.orig 2023-05-24 15:55:23.000000000 -0400
+++ ceph-18.1.2/src/rocksdb/table/block_based/data_block_hash_index.h 2023-07-04 19:36:55.971238469 -0400
@@ -8,6 +8,7 @@
#include <cstdint>
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
+#include <cstdint>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
--- ceph-17.2.5/src/librbd/api/PoolMetadata.h.orig 2023-01-17 13:07:44.701750744 -0500
+++ ceph-17.2.5/src/librbd/api/PoolMetadata.h 2023-01-17 13:08:10.300301845 -0500
@@ -9,6 +9,7 @@
#include <map>
#include "rocksdb/slice.h"
--- ceph-18.1.2/src/rocksdb/util/string_util.h.orig 2023-05-24 15:55:23.000000000 -0400
+++ ceph-18.1.2/src/rocksdb/util/string_util.h 2023-07-04 19:36:55.991238133 -0400
@@ -11,6 +11,7 @@
#include <string>
#include <unordered_map>
#include <vector>
+#include <cstdint>
namespace librbd {
--- ceph-17.2.5/src/rocksdb/db/compaction/compaction_iteration_stats.h.orig 2023-01-26 17:05:20.605333926 -0500
+++ ceph-17.2.5/src/rocksdb/db/compaction/compaction_iteration_stats.h 2023-01-26 17:05:46.376880846 -0500
@@ -6,6 +6,7 @@
#pragma once
#include "rocksdb/rocksdb_namespace.h"
+#include <cstdint>
struct CompactionIterationStats {
// Compaction statistics
@@ -1,42 +0,0 @@
From 73218e291ca68a927965bdffa7d43d0fc62c2718 Mon Sep 17 00:00:00 2001
From: Ondrej Mosnacek <omosnace@redhat.com>
Date: Wed, 27 Jul 2022 17:14:25 +0200
Subject: [PATCH] selinux: prepare for anon inode controls enablement
We plan to start labeling anon inodes (userfaultfd and io_uring file
descriptors) properly in selinux-policy, which means that domains using
these will need new rules.
See: https://github.com/fedora-selinux/selinux-policy/pull/1351
Since ceph may optionally use io_uring, this patch adds the necessary
interface call to its policy to avoid a regression. As the new interface
call is put under a conditional, the policy package will be buildable
against selinux-policy with or without the above PR merged, but it will
need to be rebuilt against the updated selinux-policy to actually pick
up the new rules.
I tested this on a minimal ceph cluster with 'bdev_ioring = true' added
to ceph.conf. I got io_uring denials without this patch + with
selinux-policy with PR#1351 and no denials with ceph rebuilt with this
patch.
Signed-off-by: Ondrej Mosnacek <omosnace@redhat.com>
---
selinux/ceph.te | 3 +++
1 file changed, 3 insertions(+)
diff --git a/selinux/ceph.te b/selinux/ceph.te
index 77d35d9714b60..729bce1fc8589 100644
--- a/selinux/ceph.te
+++ b/selinux/ceph.te
@@ -75,6 +75,9 @@ manage_lnk_files_pattern(ceph_t, ceph_var_run_t, ceph_var_run_t)
kernel_read_system_state(ceph_t)
kernel_read_network_state(ceph_t)
+ifdef(`kernel_io_uring_use',`
+ kernel_io_uring_use(ceph_t)
+')
allow ceph_t kernel_t:system module_request;
corenet_all_recvfrom_unlabeled(ceph_t)
@@ -1,99 +0,0 @@
--- ceph-17.2.5/src/boost/libs/python/src/object/enum.cpp.orig 2023-02-23 08:45:36.498595122 -0500
+++ ceph-17.2.5/src/boost/libs/python/src/object/enum.cpp 2023-02-23 08:46:11.277990890 -0500
@@ -153,7 +153,7 @@
{
if (enum_type_object.tp_dict == 0)
{
- Py_TYPE(&enum_type_object) = incref(&PyType_Type);
+ Py_SET_TYPE(&enum_type_object, incref(&PyType_Type));
#if PY_VERSION_HEX >= 0x03000000
enum_type_object.tp_base = &PyLong_Type;
#else
--- ceph-17.2.5/src/boost/libs/python/src/object/function.cpp.orig 2023-02-23 08:44:19.995920877 -0500
+++ ceph-17.2.5/src/boost/libs/python/src/object/function.cpp 2023-02-23 08:45:26.426770100 -0500
@@ -107,7 +107,7 @@
PyObject* p = this;
if (Py_TYPE(&function_type) == 0)
{
- Py_TYPE(&function_type) = &PyType_Type;
+ Py_SET_TYPE(&function_type, &PyType_Type);
::PyType_Ready(&function_type);
}
--- ceph-17.2.5/src/boost/libs/python/src/object/life_support.cpp.orig 2023-02-23 08:43:37.511650115 -0500
+++ ceph-17.2.5/src/boost/libs/python/src/object/life_support.cpp 2023-02-23 08:44:10.225088588 -0500
@@ -93,7 +93,7 @@
if (Py_TYPE(&life_support_type) == 0)
{
- Py_TYPE(&life_support_type) = &PyType_Type;
+ Py_SET_TYPE(&life_support_type, &PyType_Type);
PyType_Ready(&life_support_type);
}
--- ceph-17.2.5/src/boost/libs/python/src/object/class.cpp.orig 2023-02-23 08:46:22.394797757 -0500
+++ ceph-17.2.5/src/boost/libs/python/src/object/class.cpp 2023-02-23 10:54:56.016527900 -0500
@@ -21,6 +21,7 @@
#include <boost/python/dict.hpp>
#include <boost/python/str.hpp>
#include <boost/python/ssize_t.hpp>
+#include <boost/align/detail/align.hpp>
#include <functional>
#include <vector>
#include <cstddef>
@@ -208,7 +209,7 @@
{
if (static_data_object.tp_dict == 0)
{
- Py_TYPE(&static_data_object) = &PyType_Type;
+ Py_SET_TYPE(&static_data_object, &PyType_Type);
static_data_object.tp_base = &PyProperty_Type;
if (PyType_Ready(&static_data_object))
return 0;
@@ -316,7 +317,7 @@
{
if (class_metatype_object.tp_dict == 0)
{
- Py_TYPE(&class_metatype_object) = &PyType_Type;
+ Py_SET_TYPE(&class_metatype_object, &PyType_Type);
class_metatype_object.tp_base = &PyType_Type;
if (PyType_Ready(&class_metatype_object))
return type_handle();
@@ -374,12 +375,7 @@
// like, so we'll store the total size of the object
// there. A negative number indicates that the extra
// instance memory is not yet allocated to any holders.
-#if PY_VERSION_HEX >= 0x02060000
- Py_SIZE(result) =
-#else
- result->ob_size =
-#endif
- -(static_cast<int>(offsetof(instance<>,storage) + instance_size));
+ Py_SET_SIZE(result,-static_cast<int>(offsetof(instance<>,storage) + instance_size));
}
return (PyObject*)result;
}
@@ -470,7 +466,7 @@
{
if (class_type_object.tp_dict == 0)
{
- Py_TYPE(&class_type_object) = incref(class_metatype().get());
+ Py_SET_TYPE(&class_type_object, incref(class_metatype().get()));
class_type_object.tp_base = &PyBaseObject_Type;
if (PyType_Ready(&class_type_object))
return type_handle();
@@ -738,8 +734,13 @@
// holder_offset should at least point into the variable-sized part
assert(holder_offset >= offsetof(objects::instance<>,storage));
+ size_t allocated = holder_size + 8;
+ void* storage = (char*)self + holder_offset;
+ void* aligned_storage = ::boost::alignment::align(8, holder_size, storage, allocated);
+
// Record the fact that the storage is occupied, noting where it starts
- Py_SIZE(self) = holder_offset;
+ const size_t offset = reinterpret_cast<uintptr_t>(aligned_storage) - reinterpret_cast<uintptr_t>(storage) + holder_offset;
+ Py_SET_SIZE(self, offset);
return (char*)self + holder_offset;
}
else
+17
View File
@@ -0,0 +1,17 @@
--- ceph-18.0.0-2726-g7cea3740/src/rgw/rgw_amqp.cc.orig 2023-03-14 18:22:35.636864260 -0400
+++ ceph-18.0.0-2726-g7cea3740/src/rgw/rgw_amqp.cc 2023-03-14 18:24:36.362756771 -0400
@@ -2,10 +2,10 @@
// vim: ts=8 sw=2 smarttab ft=cpp
#include "rgw_amqp.h"
-#include <amqp.h>
-#include <amqp_ssl_socket.h>
-#include <amqp_tcp_socket.h>
-#include <amqp_framing.h>
+#include <rabbitmq-c/amqp.h>
+#include <rabbitmq-c/ssl_socket.h>
+#include <rabbitmq-c/tcp_socket.h>
+#include <rabbitmq-c/framing.h>
#include "include/ceph_assert.h"
#include <sstream>
#include <cstring>
+24
View File
@@ -0,0 +1,24 @@
--- ceph-18.0.0-2950-g1c931bc4/cmake/modules/BuildBoost.cmake.orig 2023-04-28 18:30:19.133064577 -0400
+++ ceph-18.0.0-2950-g1c931bc4/cmake/modules/BuildBoost.cmake 2023-04-28 18:31:55.290354383 -0400
@@ -104,12 +104,21 @@
set(user_config ${CMAKE_BINARY_DIR}/user-config.jam)
# edit the user-config.jam so b2 will be able to use the specified
# toolset and python
+if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
+ file(WRITE ${user_config}
+ "using ${toolset}"
+ " : "
+ " : ${CMAKE_CXX_COMPILER}"
+ " : <compileflags>-fPIC <compileflags>-w <compileflags>-fcf-protection <compileflags>-Wno-everything"
+ " ;\n")
+else()
file(WRITE ${user_config}
"using ${toolset}"
" : "
" : ${CMAKE_CXX_COMPILER}"
" : <compileflags>-fPIC <compileflags>-w <compileflags>-Wno-everything"
" ;\n")
+endif()
if(with_python_version)
find_package(Python3 ${with_python_version} QUIET REQUIRED
COMPONENTS Development)
+62
View File
@@ -0,0 +1,62 @@
--- ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S.orig 2025-05-19 18:28:37.137194693 -0400
+++ ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S 2025-05-19 18:30:54.292857720 -0400
@@ -144,4 +144,18 @@
/* Mark that we don't need executable stack. */
.section .note.GNU-stack,"",%progbits
+
+.section .note.gnu.property
+.align=8
+
+ .byte 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x00, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x01, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x02, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
# endif
--- ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/make_x86_64_sysv_elf_gas.S.orig 2025-05-19 18:28:22.611442193 -0400
+++ ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/make_x86_64_sysv_elf_gas.S 2025-05-19 18:31:01.037742795 -0400
@@ -159,4 +159,18 @@
/* Mark that we don't need executable stack. */
.section .note.GNU-stack,"",%progbits
+
+.section .note.gnu.property
+.align=8
+
+ .byte 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x00, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x01, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x02, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
# endif
--- ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/ontop_x86_64_sysv_elf_gas.S.orig 2025-05-19 18:29:35.836194529 -0400
+++ ceph-20.0.0-1954-g77a7c83d/src/boost/libs/context/src/asm/ontop_x86_64_sysv_elf_gas.S 2025-05-19 18:31:15.172501956 -0400
@@ -137,3 +137,17 @@
/* Mark that we don't need executable stack. */
.section .note.GNU-stack,"",%progbits
+
+.section .note.gnu.property
+.align=8
+
+ .byte 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x00, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x01, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ .byte 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
+ .byte 0x05, 0x00, 0x00, 0x00, 0x47, 0x4E, 0x55, 0x00
+ .byte 0x02, 0x00, 0x00, 0xC0, 0x04, 0x00, 0x00, 0x00
+ .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+24
View File
@@ -0,0 +1,24 @@
--- ceph-18.1.2/src/pybind/rbd/rbd.pyx.orig 2023-07-21 13:30:08.156825317 -0400
+++ ceph-18.1.2/src/pybind/rbd/rbd.pyx 2023-07-24 09:09:27.930137117 -0400
@@ -371,10 +371,10 @@
cdef rados_ioctx_t convert_ioctx(rados.Ioctx ioctx) except? NULL:
return <rados_ioctx_t>ioctx.io
-cdef int progress_callback(uint64_t offset, uint64_t total, void* ptr) with gil:
+cdef int progress_callback(uint64_t offset, uint64_t total, void* ptr) noexcept with gil:
return (<object>ptr)(offset, total)
-cdef int no_op_progress_callback(uint64_t offset, uint64_t total, void* ptr):
+cdef int no_op_progress_callback(uint64_t offset, uint64_t total, void* ptr) noexcept:
return 0
def cstr(val, name, encoding="utf-8", opt=False):
@@ -426,7 +426,7 @@
cdef class Completion
-cdef void __aio_complete_cb(rbd_completion_t completion, void *args) with gil:
+cdef void __aio_complete_cb(rbd_completion_t completion, void *args) noexcept with gil:
"""
Callback to oncomplete() for asynchronous operations
"""
@@ -0,0 +1,11 @@
--- ceph-18.2.3/src/boost/boost/python/call_method.hpp.orig 2024-06-07 11:14:58.579734749 -0400
+++ ceph-18.2.3/src/boost/boost/python/call_method.hpp 2024-06-07 11:19:06.754520504 -0400
@@ -59,7 +59,7 @@
)
{
PyObject* const result =
- PyEval_CallMethod(
+ PyObject_CallMethod(
self
, const_cast<char*>(name)
, const_cast<char*>("(" BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FIXED, "O") ")")
+19
View File
@@ -0,0 +1,19 @@
--- ceph-18.2.3/src/mgr/PyModule.cc.orig 2024-06-06 16:31:10.340731851 -0400
+++ ceph-18.2.3/src/mgr/PyModule.cc 2024-06-07 12:58:49.913571410 -0400
@@ -342,6 +342,16 @@
return ceph_module;
}
+// FIXME
+// Removed in Python 3.13 API, but kept for the stable ABI
+#ifdef __cplusplus
+extern "C" {
+#endif
+PyAPI_FUNC(void) PySys_SetPath(const wchar_t *);
+#ifdef __cplusplus
+}
+#endif
+
int PyModule::load(PyThreadState *pMainThreadState)
{
ceph_assert(pMainThreadState != nullptr);
+15
View File
@@ -0,0 +1,15 @@
--- ceph-19.1.0/src/common/crc32c_ppc_asm.S.orig 2024-07-10 10:55:06.255480790 -0400
+++ ceph-19.1.0/src/common/crc32c_ppc_asm.S 2024-07-10 12:53:42.844075490 -0400
@@ -54,11 +54,8 @@
/* byte reverse permute constant */
.octa 0x0F0E0D0C0B0A09080706050403020100
-#ifdef CRC32_CONSTANTS_HEADER
-#include CRC32_CONSTANTS_HEADER
-#else
+#define __ASSEMBLY__
#include "crc32c_ppc_constants.h"
-#endif
.text
+14
View File
@@ -0,0 +1,14 @@
diff --git a/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/src/civetweb.c b/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/src/civetweb.c
index fea9e6f98..c7eddb20b 100644
--- a/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/src/civetweb.c
+++ b/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/src/civetweb.c
@@ -1744,7 +1744,9 @@ typedef struct SSL_CTX SSL_CTX;
#include <openssl/conf.h>
#include <openssl/crypto.h>
#include <openssl/dh.h>
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
#include <openssl/engine.h>
+#endif
#include <openssl/err.h>
#include <openssl/opensslv.h>
#include <openssl/pem.h>
@@ -0,0 +1,20 @@
--- ceph-19.2.0/src/rocksdb/db/blob/blob_file_meta.h.orig 2025-01-16 08:16:41.762758595 -0500
+++ ceph-19.2.0/src/rocksdb/db/blob/blob_file_meta.h 2025-01-16 08:17:37.172784779 -0500
@@ -10,6 +10,7 @@
#include <memory>
#include <string>
#include <unordered_set>
+#include <cstdint>
#include "rocksdb/rocksdb_namespace.h"
--- ceph-19.2.0/src/rocksdb/include/rocksdb/trace_record.h.orig 2025-01-16 09:04:19.196962397 -0500
+++ ceph-19.2.0/src/rocksdb/include/rocksdb/trace_record.h 2025-01-16 09:04:33.885701684 -0500
@@ -8,6 +8,7 @@
#include <memory>
#include <string>
#include <vector>
+#include <cstdint>
#include "rocksdb/rocksdb_namespace.h"
#include "rocksdb/slice.h"
+63
View File
@@ -0,0 +1,63 @@
--- ceph-20.1.0/src/googletest/googletest/CMakeLists.txt.orig 2025-02-07 11:04:56.000000000 -0500
+++ ceph-20.1.0/src/googletest/googletest/CMakeLists.txt 2025-09-16 08:11:59.341951770 -0400
@@ -53,6 +53,8 @@
set_up_hermetic_build()
endif()
+option(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF)
+
# These commands only run if this is the main project.
if(CMAKE_PROJECT_NAME STREQUAL "gtest" OR CMAKE_PROJECT_NAME STREQUAL "googletest-distribution")
@@ -121,7 +123,7 @@
# are used for other targets, to ensure that gtest can be compiled by a user
# aggressive about warnings.
cxx_library(gtest "${cxx_strict}" src/gtest-all.cc)
-set_target_properties(gtest PROPERTIES VERSION ${GOOGLETEST_VERSION})
+#set_target_properties(gtest PROPERTIES VERSION ${GOOGLETEST_VERSION})
if(GTEST_HAS_ABSL)
target_compile_definitions(gtest PUBLIC GTEST_HAS_ABSL=1)
target_link_libraries(gtest PUBLIC
@@ -139,7 +141,7 @@
)
endif()
cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc)
-set_target_properties(gtest_main PROPERTIES VERSION ${GOOGLETEST_VERSION})
+#set_target_properties(gtest_main PROPERTIES VERSION ${GOOGLETEST_VERSION})
string(REPLACE ";" "$<SEMICOLON>" dirs "${gtest_build_include_dirs}")
target_include_directories(gtest SYSTEM INTERFACE
"$<BUILD_INTERFACE:${dirs}>"
--- ceph-20.1.0/src/googletest/googlemock/CMakeLists.txt.orig 2025-02-07 11:04:56.000000000 -0500
+++ ceph-20.1.0/src/googletest/googlemock/CMakeLists.txt 2025-09-16 08:12:18.121641875 -0400
@@ -49,6 +49,7 @@
# if they are the same (the default).
add_subdirectory("${gtest_dir}" "${gmock_BINARY_DIR}/${gtest_dir}")
+option(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF)
# These commands only run if this is the main project
if(CMAKE_PROJECT_NAME STREQUAL "gmock" OR CMAKE_PROJECT_NAME STREQUAL "googletest-distribution")
@@ -96,10 +97,10 @@
else()
cxx_library(gmock "${cxx_strict}" src/gmock-all.cc)
target_link_libraries(gmock PUBLIC gtest)
- set_target_properties(gmock PROPERTIES VERSION ${GOOGLETEST_VERSION})
+ # set_target_properties(gmock PROPERTIES VERSION ${GOOGLETEST_VERSION})
cxx_library(gmock_main "${cxx_strict}" src/gmock_main.cc)
target_link_libraries(gmock_main PUBLIC gmock)
- set_target_properties(gmock_main PROPERTIES VERSION ${GOOGLETEST_VERSION})
+ # set_target_properties(gmock_main PROPERTIES VERSION ${GOOGLETEST_VERSION})
endif()
string(REPLACE ";" "$<SEMICOLON>" dirs "${gmock_build_include_dirs}")
--- ceph-20.1.0/src/googletest/googletest/cmake/internal_utils.cmake.orig 2025-09-22 10:12:18.037349494 -0400
+++ ceph-20.1.0/src/googletest/googletest/cmake/internal_utils.cmake 2025-09-22 10:13:13.729590249 -0400
@@ -207,7 +207,7 @@
endfunction()
function(cxx_library name cxx_flags)
- cxx_library_with_type(${name} "" "${cxx_flags}" ${ARGN})
+ cxx_library_with_type(${name} STATIC "${cxx_flags}" ${ARGN})
endfunction()
# cxx_executable_with_flags(name cxx_flags libs srcs...)
+11
View File
@@ -0,0 +1,11 @@
--- ceph-19.2.0/src/tracing/CMakeLists.txt.orig 2025-01-23 17:51:43.874162594 -0500
+++ ceph-19.2.0/src/tracing/CMakeLists.txt 2025-01-23 17:54:21.877186735 -0500
@@ -6,6 +6,8 @@
set(header_dir ${working_dir}/tracing)
file(MAKE_DIRECTORY ${header_dir})
+set(CMAKE_C99_EXTENSION_COMPILE_OPTION "-std=gnu23")
+
add_custom_target(tracepoint_libraries)
file(GLOB tps "*.tp")
@@ -0,0 +1,21 @@
--- ceph-20.1.0/src/test/neorados/common_tests.h.orig 2025-09-04 15:35:40.000000000 -0400
+++ ceph-20.1.0/src/test/neorados/common_tests.h 2025-09-16 08:13:03.274896767 -0400
@@ -47,6 +47,18 @@
#include "gtest/gtest.h"
+#if !defined(GTEST_DISALLOW_COPY_AND_ASSIGN_)
+#define GTEST_DISALLOW_COPY_AND_ASSIGN_(type) \
+ type(type const&) = delete; \
+ type& operator=(type const&) = delete
+#endif
+
+#if !defined(GTEST_DISALLOW_MOVE_AND_ASSIGN_)
+#define GTEST_DISALLOW_MOVE_AND_ASSIGN_(type) \
+ type(type&&) noexcept = delete; \
+ type& operator=(type&&) noexcept = delete
+#endif
+
/// \file test/neorados/common_tests.h
///
/// \brief Tools for testing neorados code
+838
View File
@@ -0,0 +1,838 @@
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal_19.h.orig 2025-07-08 07:40:29.811814549 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal_19.h 2025-07-08 07:40:29.811739290 -0400
@@ -0,0 +1,114 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+#pragma once
+
+#include <memory>
+#include <string>
+#include <vector>
+
+#include "parquet/properties.h"
+#include "parquet/types.h"
+
+using parquet::ParquetCipher;
+
+namespace parquet {
+namespace encryption {
+
+constexpr int kGcmTagLength = 16;
+constexpr int kNonceLength = 12;
+
+// Module types
+constexpr int8_t kFooter = 0;
+constexpr int8_t kColumnMetaData = 1;
+constexpr int8_t kDataPage = 2;
+constexpr int8_t kDictionaryPage = 3;
+constexpr int8_t kDataPageHeader = 4;
+constexpr int8_t kDictionaryPageHeader = 5;
+constexpr int8_t kColumnIndex = 6;
+constexpr int8_t kOffsetIndex = 7;
+
+/// Performs AES encryption operations with GCM or CTR ciphers.
+class AesEncryptor {
+ public:
+ static AesEncryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
+ std::vector<AesEncryptor*>* all_encryptors);
+
+ ~AesEncryptor();
+
+ /// Size difference between plaintext and ciphertext, for this cipher.
+ int CiphertextSizeDelta();
+
+ /// Encrypts plaintext with the key and aad. Key length is passed only for validation.
+ /// If different from value in constructor, exception will be thrown.
+ int Encrypt(const uint8_t* plaintext, int plaintext_len, const uint8_t* key,
+ int key_len, const uint8_t* aad, int aad_len, uint8_t* ciphertext);
+
+ /// Encrypts plaintext footer, in order to compute footer signature (tag).
+ int SignedFooterEncrypt(const uint8_t* footer, int footer_len, const uint8_t* key,
+ int key_len, const uint8_t* aad, int aad_len,
+ const uint8_t* nonce, uint8_t* encrypted_footer);
+
+ void WipeOut();
+
+ private:
+ /// Can serve one key length only. Possible values: 16, 24, 32 bytes.
+ explicit AesEncryptor(ParquetCipher::type alg_id, int key_len, bool metadata);
+ // PIMPL Idiom
+ class AesEncryptorImpl;
+ std::unique_ptr<AesEncryptorImpl> impl_;
+};
+
+/// Performs AES decryption operations with GCM or CTR ciphers.
+class AesDecryptor {
+ public:
+ static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
+ std::vector<AesDecryptor*>* all_decryptors);
+
+ ~AesDecryptor();
+ void WipeOut();
+
+ /// Size difference between plaintext and ciphertext, for this cipher.
+ int CiphertextSizeDelta();
+
+ /// Decrypts ciphertext with the key and aad. Key length is passed only for
+ /// validation. If different from value in constructor, exception will be thrown.
+ int Decrypt(const uint8_t* ciphertext, int ciphertext_len, const uint8_t* key,
+ int key_len, const uint8_t* aad, int aad_len, uint8_t* plaintext);
+
+ private:
+ /// Can serve one key length only. Possible values: 16, 24, 32 bytes.
+ explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata);
+ // PIMPL Idiom
+ class AesDecryptorImpl;
+ std::unique_ptr<AesDecryptorImpl> impl_;
+};
+
+std::string CreateModuleAad(const std::string& file_aad, int8_t module_type,
+ int16_t row_group_ordinal, int16_t column_ordinal,
+ int16_t page_ordinal);
+
+std::string CreateFooterAad(const std::string& aad_prefix_bytes);
+
+// Update last two bytes of page (or page header) module AAD
+void QuickUpdatePageAad(const std::string& AAD, int16_t new_page_ordinal);
+
+// Wraps OpenSSL RAND_bytes function
+void RandBytes(unsigned char* buf, int num);
+
+} // namespace encryption
+} // namespace parquet
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal_20.h.orig 2025-07-08 07:40:29.812759948 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal_20.h 2025-07-08 07:40:29.812687536 -0400
@@ -0,0 +1,141 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+#pragma once
+
+#include <memory>
+#include <string>
+#include <vector>
+
+#include "arrow/util/span.h"
+#include "parquet/properties.h"
+#include "parquet/types.h"
+
+using parquet::ParquetCipher;
+
+namespace parquet::encryption {
+
+constexpr int32_t kGcmTagLength = 16;
+constexpr int32_t kNonceLength = 12;
+
+// Module types
+constexpr int8_t kFooter = 0;
+constexpr int8_t kColumnMetaData = 1;
+constexpr int8_t kDataPage = 2;
+constexpr int8_t kDictionaryPage = 3;
+constexpr int8_t kDataPageHeader = 4;
+constexpr int8_t kDictionaryPageHeader = 5;
+constexpr int8_t kColumnIndex = 6;
+constexpr int8_t kOffsetIndex = 7;
+constexpr int8_t kBloomFilterHeader = 8;
+constexpr int8_t kBloomFilterBitset = 9;
+
+/// Performs AES encryption operations with GCM or CTR ciphers.
+class PARQUET_EXPORT AesEncryptor {
+ public:
+ /// Can serve one key length only. Possible values: 16, 24, 32 bytes.
+ /// If write_length is true, prepend ciphertext length to the ciphertext
+ explicit AesEncryptor(ParquetCipher::type alg_id, int32_t key_len, bool metadata,
+ bool write_length = true);
+
+ static std::unique_ptr<AesEncryptor> Make(ParquetCipher::type alg_id, int32_t key_len,
+ bool metadata, bool write_length = true);
+
+ ~AesEncryptor();
+
+ /// The size of the ciphertext, for this cipher and the specified plaintext length.
+ [[nodiscard]] int32_t CiphertextLength(int64_t plaintext_len) const;
+
+ /// Encrypts plaintext with the key and aad. Key length is passed only for validation.
+ /// If different from value in constructor, exception will be thrown.
+ int32_t Encrypt(::arrow::util::span<const uint8_t> plaintext,
+ ::arrow::util::span<const uint8_t> key,
+ ::arrow::util::span<const uint8_t> aad,
+ ::arrow::util::span<uint8_t> ciphertext);
+
+ /// Encrypts plaintext footer, in order to compute footer signature (tag).
+ int32_t SignedFooterEncrypt(::arrow::util::span<const uint8_t> footer,
+ ::arrow::util::span<const uint8_t> key,
+ ::arrow::util::span<const uint8_t> aad,
+ ::arrow::util::span<const uint8_t> nonce,
+ ::arrow::util::span<uint8_t> encrypted_footer);
+
+ private:
+ // PIMPL Idiom
+ class AesEncryptorImpl;
+ std::unique_ptr<AesEncryptorImpl> impl_;
+};
+
+/// Performs AES decryption operations with GCM or CTR ciphers.
+class PARQUET_EXPORT AesDecryptor {
+ public:
+ /// \brief Construct an AesDecryptor
+ ///
+ /// \param alg_id the encryption algorithm to use
+ /// \param key_len key length. Possible values: 16, 24, 32 bytes.
+ /// \param metadata if true then this is a metadata decryptor
+ /// \param contains_length if true, expect ciphertext length prepended to the ciphertext
+ explicit AesDecryptor(ParquetCipher::type alg_id, int32_t key_len, bool metadata,
+ bool contains_length = true);
+
+ static std::unique_ptr<AesDecryptor> Make(ParquetCipher::type alg_id, int32_t key_len,
+ bool metadata);
+
+ ~AesDecryptor();
+
+ /// The size of the plaintext, for this cipher and the specified ciphertext length.
+ [[nodiscard]] int32_t PlaintextLength(int32_t ciphertext_len) const;
+
+ /// The size of the ciphertext, for this cipher and the specified plaintext length.
+ [[nodiscard]] int32_t CiphertextLength(int32_t plaintext_len) const;
+
+ /// Decrypts ciphertext with the key and aad. Key length is passed only for
+ /// validation. If different from value in constructor, exception will be thrown.
+ /// The caller is responsible for ensuring that the plaintext buffer is at least as
+ /// large as PlaintextLength(ciphertext_len).
+ int32_t Decrypt(::arrow::util::span<const uint8_t> ciphertext,
+ ::arrow::util::span<const uint8_t> key,
+ ::arrow::util::span<const uint8_t> aad,
+ ::arrow::util::span<uint8_t> plaintext);
+
+ private:
+ // PIMPL Idiom
+ class AesDecryptorImpl;
+ std::unique_ptr<AesDecryptorImpl> impl_;
+};
+
+std::string CreateModuleAad(const std::string& file_aad, int8_t module_type,
+ int16_t row_group_ordinal, int16_t column_ordinal,
+ int32_t page_ordinal);
+
+std::string CreateFooterAad(const std::string& aad_prefix_bytes);
+
+// Update last two bytes of page (or page header) module AAD
+void QuickUpdatePageAad(int32_t new_page_ordinal, std::string* AAD);
+
+// Wraps OpenSSL RAND_bytes function
+void RandBytes(unsigned char* buf, size_t num);
+
+// Ensure OpenSSL is initialized.
+//
+// This is only necessary in specific situations since OpenSSL otherwise
+// initializes itself automatically. For example, under Valgrind, a memory
+// leak will be reported if OpenSSL is initialized for the first time from
+// a worker thread; calling this function from the main thread prevents this.
+void EnsureBackendInitialized();
+
+} // namespace parquet::encryption
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal.h.orig 2024-10-06 07:18:41.000000000 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/encryption_internal.h 2025-07-08 07:40:29.809908891 -0400
@@ -17,98 +17,8 @@
#pragma once
-#include <memory>
-#include <string>
-#include <vector>
-
-#include "parquet/properties.h"
-#include "parquet/types.h"
-
-using parquet::ParquetCipher;
-
-namespace parquet {
-namespace encryption {
-
-constexpr int kGcmTagLength = 16;
-constexpr int kNonceLength = 12;
-
-// Module types
-constexpr int8_t kFooter = 0;
-constexpr int8_t kColumnMetaData = 1;
-constexpr int8_t kDataPage = 2;
-constexpr int8_t kDictionaryPage = 3;
-constexpr int8_t kDataPageHeader = 4;
-constexpr int8_t kDictionaryPageHeader = 5;
-constexpr int8_t kColumnIndex = 6;
-constexpr int8_t kOffsetIndex = 7;
-
-/// Performs AES encryption operations with GCM or CTR ciphers.
-class AesEncryptor {
- public:
- static AesEncryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesEncryptor*>* all_encryptors);
-
- ~AesEncryptor();
-
- /// Size difference between plaintext and ciphertext, for this cipher.
- int CiphertextSizeDelta();
-
- /// Encrypts plaintext with the key and aad. Key length is passed only for validation.
- /// If different from value in constructor, exception will be thrown.
- int Encrypt(const uint8_t* plaintext, int plaintext_len, const uint8_t* key,
- int key_len, const uint8_t* aad, int aad_len, uint8_t* ciphertext);
-
- /// Encrypts plaintext footer, in order to compute footer signature (tag).
- int SignedFooterEncrypt(const uint8_t* footer, int footer_len, const uint8_t* key,
- int key_len, const uint8_t* aad, int aad_len,
- const uint8_t* nonce, uint8_t* encrypted_footer);
-
- void WipeOut();
-
- private:
- /// Can serve one key length only. Possible values: 16, 24, 32 bytes.
- explicit AesEncryptor(ParquetCipher::type alg_id, int key_len, bool metadata);
- // PIMPL Idiom
- class AesEncryptorImpl;
- std::unique_ptr<AesEncryptorImpl> impl_;
-};
-
-/// Performs AES decryption operations with GCM or CTR ciphers.
-class AesDecryptor {
- public:
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
-
- ~AesDecryptor();
- void WipeOut();
-
- /// Size difference between plaintext and ciphertext, for this cipher.
- int CiphertextSizeDelta();
-
- /// Decrypts ciphertext with the key and aad. Key length is passed only for
- /// validation. If different from value in constructor, exception will be thrown.
- int Decrypt(const uint8_t* ciphertext, int ciphertext_len, const uint8_t* key,
- int key_len, const uint8_t* aad, int aad_len, uint8_t* plaintext);
-
- private:
- /// Can serve one key length only. Possible values: 16, 24, 32 bytes.
- explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata);
- // PIMPL Idiom
- class AesDecryptorImpl;
- std::unique_ptr<AesDecryptorImpl> impl_;
-};
-
-std::string CreateModuleAad(const std::string& file_aad, int8_t module_type,
- int16_t row_group_ordinal, int16_t column_ordinal,
- int16_t page_ordinal);
-
-std::string CreateFooterAad(const std::string& aad_prefix_bytes);
-
-// Update last two bytes of page (or page header) module AAD
-void QuickUpdatePageAad(const std::string& AAD, int16_t new_page_ordinal);
-
-// Wraps OpenSSL RAND_bytes function
-void RandBytes(unsigned char* buf, int num);
-
-} // namespace encryption
-} // namespace parquet
+#if ARROW_VERSION_MAJOR < 20
+#include "encryption_internal_19.h"
+#else
+#include "encryption_internal_20.h"
+#endif
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor_19.h.orig 2025-07-08 07:40:29.814292389 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor_19.h 2025-07-08 07:40:29.813727465 -0400
@@ -0,0 +1,121 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+#pragma once
+
+#include <map>
+#include <memory>
+#include <string>
+#include <vector>
+
+#include "parquet/schema.h"
+
+namespace parquet {
+
+namespace encryption {
+class AesDecryptor;
+class AesEncryptor;
+} // namespace encryption
+
+class FileDecryptionProperties;
+
+class PARQUET_EXPORT Decryptor {
+ public:
+ Decryptor(encryption::AesDecryptor* decryptor, const std::string& key,
+ const std::string& file_aad, const std::string& aad,
+ ::arrow::MemoryPool* pool);
+
+ const std::string& file_aad() const { return file_aad_; }
+ void UpdateAad(const std::string& aad) { aad_ = aad; }
+ ::arrow::MemoryPool* pool() { return pool_; }
+
+ int CiphertextSizeDelta();
+ int Decrypt(const uint8_t* ciphertext, int ciphertext_len, uint8_t* plaintext);
+
+ private:
+ encryption::AesDecryptor* aes_decryptor_;
+ std::string key_;
+ std::string file_aad_;
+ std::string aad_;
+ ::arrow::MemoryPool* pool_;
+};
+
+class InternalFileDecryptor {
+ public:
+ explicit InternalFileDecryptor(FileDecryptionProperties* properties,
+ const std::string& file_aad,
+ ParquetCipher::type algorithm,
+ const std::string& footer_key_metadata,
+ ::arrow::MemoryPool* pool);
+
+ std::string& file_aad() { return file_aad_; }
+
+ std::string GetFooterKey();
+
+ ParquetCipher::type algorithm() { return algorithm_; }
+
+ std::string& footer_key_metadata() { return footer_key_metadata_; }
+
+ FileDecryptionProperties* properties() { return properties_; }
+
+ void WipeOutDecryptionKeys();
+
+ ::arrow::MemoryPool* pool() { return pool_; }
+
+ std::shared_ptr<Decryptor> GetFooterDecryptor();
+ std::shared_ptr<Decryptor> GetFooterDecryptorForColumnMeta(const std::string& aad = "");
+ std::shared_ptr<Decryptor> GetFooterDecryptorForColumnData(const std::string& aad = "");
+ std::shared_ptr<Decryptor> GetColumnMetaDecryptor(
+ const std::string& column_path, const std::string& column_key_metadata,
+ const std::string& aad = "");
+ std::shared_ptr<Decryptor> GetColumnDataDecryptor(
+ const std::string& column_path, const std::string& column_key_metadata,
+ const std::string& aad = "");
+
+ private:
+ FileDecryptionProperties* properties_;
+ // Concatenation of aad_prefix (if exists) and aad_file_unique
+ std::string file_aad_;
+ std::map<std::string, std::shared_ptr<Decryptor>> column_data_map_;
+ std::map<std::string, std::shared_ptr<Decryptor>> column_metadata_map_;
+
+ std::shared_ptr<Decryptor> footer_metadata_decryptor_;
+ std::shared_ptr<Decryptor> footer_data_decryptor_;
+ ParquetCipher::type algorithm_;
+ std::string footer_key_metadata_;
+ std::vector<encryption::AesDecryptor*> all_decryptors_;
+
+ /// Key must be 16, 24 or 32 bytes in length. Thus there could be up to three
+ // types of meta_decryptors and data_decryptors.
+ std::unique_ptr<encryption::AesDecryptor> meta_decryptor_[3];
+ std::unique_ptr<encryption::AesDecryptor> data_decryptor_[3];
+
+ ::arrow::MemoryPool* pool_;
+
+ std::shared_ptr<Decryptor> GetFooterDecryptor(const std::string& aad, bool metadata);
+ std::shared_ptr<Decryptor> GetColumnDecryptor(const std::string& column_path,
+ const std::string& column_key_metadata,
+ const std::string& aad,
+ bool metadata = false);
+
+ encryption::AesDecryptor* GetMetaAesDecryptor(size_t key_size);
+ encryption::AesDecryptor* GetDataAesDecryptor(size_t key_size);
+
+ int MapKeyLenToDecryptorArrayIndex(int key_len);
+};
+
+} // namespace parquet
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor_20.h.orig 2025-07-08 07:40:29.815411998 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor_20.h 2025-07-08 07:40:29.815245155 -0400
@@ -0,0 +1,148 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+#pragma once
+
+#include <memory>
+#include <mutex>
+#include <string>
+#include <vector>
+
+#include "parquet/schema.h"
+
+namespace parquet {
+
+namespace encryption {
+class AesDecryptor;
+class AesEncryptor;
+} // namespace encryption
+
+class ColumnCryptoMetaData;
+class FileDecryptionProperties;
+
+// An object handling decryption using well-known encryption parameters
+//
+// CAUTION: Decryptor objects are not thread-safe.
+class PARQUET_EXPORT Decryptor {
+ public:
+ Decryptor(std::unique_ptr<encryption::AesDecryptor> decryptor, const std::string& key,
+ const std::string& file_aad, const std::string& aad,
+ ::arrow::MemoryPool* pool);
+ ~Decryptor();
+
+ const std::string& file_aad() const { return file_aad_; }
+ void UpdateAad(const std::string& aad) { aad_ = aad; }
+ ::arrow::MemoryPool* pool() { return pool_; }
+
+ [[nodiscard]] int32_t PlaintextLength(int32_t ciphertext_len) const;
+ [[nodiscard]] int32_t CiphertextLength(int32_t plaintext_len) const;
+ int32_t Decrypt(::arrow::util::span<const uint8_t> ciphertext,
+ ::arrow::util::span<uint8_t> plaintext);
+
+ private:
+ std::unique_ptr<encryption::AesDecryptor> aes_decryptor_;
+ std::string key_;
+ std::string file_aad_;
+ std::string aad_;
+ ::arrow::MemoryPool* pool_;
+};
+
+class InternalFileDecryptor {
+ public:
+ explicit InternalFileDecryptor(std::shared_ptr<FileDecryptionProperties> properties,
+ const std::string& file_aad,
+ ParquetCipher::type algorithm,
+ const std::string& footer_key_metadata,
+ ::arrow::MemoryPool* pool);
+
+ const std::string& file_aad() const { return file_aad_; }
+
+ std::string GetFooterKey();
+
+ ParquetCipher::type algorithm() const { return algorithm_; }
+
+ const std::string& footer_key_metadata() const { return footer_key_metadata_; }
+
+ const std::shared_ptr<FileDecryptionProperties>& properties() const {
+ return properties_;
+ }
+
+ ::arrow::MemoryPool* pool() const { return pool_; }
+
+ // Get a Decryptor instance for the Parquet footer
+ std::unique_ptr<Decryptor> GetFooterDecryptor();
+
+ // Get a Decryptor instance for column chunk metadata.
+ std::unique_ptr<Decryptor> GetColumnMetaDecryptor(
+ const std::string& column_path, const std::string& column_key_metadata,
+ const std::string& aad = "") {
+ return GetColumnDecryptor(column_path, column_key_metadata, aad, /*metadata=*/true);
+ }
+
+ // Get a Decryptor instance for column chunk data.
+ std::unique_ptr<Decryptor> GetColumnDataDecryptor(
+ const std::string& column_path, const std::string& column_key_metadata,
+ const std::string& aad = "") {
+ return GetColumnDecryptor(column_path, column_key_metadata, aad, /*metadata=*/false);
+ }
+
+ // Get a Decryptor factory for column chunk metadata.
+ //
+ // This is typically useful if multi-threaded decryption is expected.
+ // This is a static function as it accepts a null `InternalFileDecryptor*`
+ // argument if the column is not encrypted.
+ static std::function<std::unique_ptr<Decryptor>()> GetColumnMetaDecryptorFactory(
+ InternalFileDecryptor*, const ColumnCryptoMetaData* crypto_metadata,
+ const std::string& aad = "");
+ // Get a Decryptor factory for column chunk data.
+ //
+ // This is typically useful if multi-threaded decryption is expected.
+ // This is a static function as it accepts a null `InternalFileDecryptor*`
+ // argument if the column is not encrypted.
+ static std::function<std::unique_ptr<Decryptor>()> GetColumnDataDecryptorFactory(
+ InternalFileDecryptor*, const ColumnCryptoMetaData* crypto_metadata,
+ const std::string& aad = "");
+
+ private:
+ std::shared_ptr<FileDecryptionProperties> properties_;
+ // Concatenation of aad_prefix (if exists) and aad_file_unique
+ std::string file_aad_;
+ ParquetCipher::type algorithm_;
+ std::string footer_key_metadata_;
+ ::arrow::MemoryPool* pool_;
+
+ // Protects footer_key_ updates
+ std::mutex mutex_;
+ std::string footer_key_;
+
+ std::string GetColumnKey(const std::string& column_path,
+ const std::string& column_key_metadata);
+
+ std::unique_ptr<Decryptor> GetFooterDecryptor(const std::string& aad, bool metadata);
+
+ std::unique_ptr<Decryptor> GetColumnDecryptor(const std::string& column_path,
+ const std::string& column_key_metadata,
+ const std::string& aad, bool metadata);
+
+ std::function<std::unique_ptr<Decryptor>()> GetColumnDecryptorFactory(
+ const ColumnCryptoMetaData* crypto_metadata, const std::string& aad, bool metadata);
+};
+
+void UpdateDecryptor(Decryptor* decryptor, int16_t row_group_ordinal,
+ int16_t column_ordinal, int8_t module_type);
+
+} // namespace parquet
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor.h.orig 2024-10-06 07:18:41.000000000 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/internal_file_decryptor.h 2025-07-08 07:40:29.813623143 -0400
@@ -17,105 +17,8 @@
#pragma once
-#include <map>
-#include <memory>
-#include <string>
-#include <vector>
-
-#include "parquet/schema.h"
-
-namespace parquet {
-
-namespace encryption {
-class AesDecryptor;
-class AesEncryptor;
-} // namespace encryption
-
-class FileDecryptionProperties;
-
-class PARQUET_EXPORT Decryptor {
- public:
- Decryptor(encryption::AesDecryptor* decryptor, const std::string& key,
- const std::string& file_aad, const std::string& aad,
- ::arrow::MemoryPool* pool);
-
- const std::string& file_aad() const { return file_aad_; }
- void UpdateAad(const std::string& aad) { aad_ = aad; }
- ::arrow::MemoryPool* pool() { return pool_; }
-
- int CiphertextSizeDelta();
- int Decrypt(const uint8_t* ciphertext, int ciphertext_len, uint8_t* plaintext);
-
- private:
- encryption::AesDecryptor* aes_decryptor_;
- std::string key_;
- std::string file_aad_;
- std::string aad_;
- ::arrow::MemoryPool* pool_;
-};
-
-class InternalFileDecryptor {
- public:
- explicit InternalFileDecryptor(FileDecryptionProperties* properties,
- const std::string& file_aad,
- ParquetCipher::type algorithm,
- const std::string& footer_key_metadata,
- ::arrow::MemoryPool* pool);
-
- std::string& file_aad() { return file_aad_; }
-
- std::string GetFooterKey();
-
- ParquetCipher::type algorithm() { return algorithm_; }
-
- std::string& footer_key_metadata() { return footer_key_metadata_; }
-
- FileDecryptionProperties* properties() { return properties_; }
-
- void WipeOutDecryptionKeys();
-
- ::arrow::MemoryPool* pool() { return pool_; }
-
- std::shared_ptr<Decryptor> GetFooterDecryptor();
- std::shared_ptr<Decryptor> GetFooterDecryptorForColumnMeta(const std::string& aad = "");
- std::shared_ptr<Decryptor> GetFooterDecryptorForColumnData(const std::string& aad = "");
- std::shared_ptr<Decryptor> GetColumnMetaDecryptor(
- const std::string& column_path, const std::string& column_key_metadata,
- const std::string& aad = "");
- std::shared_ptr<Decryptor> GetColumnDataDecryptor(
- const std::string& column_path, const std::string& column_key_metadata,
- const std::string& aad = "");
-
- private:
- FileDecryptionProperties* properties_;
- // Concatenation of aad_prefix (if exists) and aad_file_unique
- std::string file_aad_;
- std::map<std::string, std::shared_ptr<Decryptor>> column_data_map_;
- std::map<std::string, std::shared_ptr<Decryptor>> column_metadata_map_;
-
- std::shared_ptr<Decryptor> footer_metadata_decryptor_;
- std::shared_ptr<Decryptor> footer_data_decryptor_;
- ParquetCipher::type algorithm_;
- std::string footer_key_metadata_;
- std::vector<encryption::AesDecryptor*> all_decryptors_;
-
- /// Key must be 16, 24 or 32 bytes in length. Thus there could be up to three
- // types of meta_decryptors and data_decryptors.
- std::unique_ptr<encryption::AesDecryptor> meta_decryptor_[3];
- std::unique_ptr<encryption::AesDecryptor> data_decryptor_[3];
-
- ::arrow::MemoryPool* pool_;
-
- std::shared_ptr<Decryptor> GetFooterDecryptor(const std::string& aad, bool metadata);
- std::shared_ptr<Decryptor> GetColumnDecryptor(const std::string& column_path,
- const std::string& column_key_metadata,
- const std::string& aad,
- bool metadata = false);
-
- encryption::AesDecryptor* GetMetaAesDecryptor(size_t key_size);
- encryption::AesDecryptor* GetDataAesDecryptor(size_t key_size);
-
- int MapKeyLenToDecryptorArrayIndex(int key_len);
-};
-
-} // namespace parquet
+#if ARROW_VERSION_MAJOR < 20
+#include "internal_file_decryptor_19.h"
+#else
+#include "internal_file_decryptor_20.h"
+#endif
--- ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/s3select_parquet_intrf.h.orig 2024-10-06 07:18:41.000000000 -0400
+++ ceph-20.0.0-2362-ga9d20fc0/src/s3select/include/s3select_parquet_intrf.h 2025-07-08 07:40:29.816727417 -0400
@@ -1002,6 +1002,7 @@
throw ParquetException("Encrypted files cannot contain more than 32767 row groups");
}
+#if ARROW_VERSION_MAJOR < 20
// The column is encrypted
std::shared_ptr<::parquet::Decryptor> meta_decryptor;
std::shared_ptr<Decryptor> data_decryptor;
@@ -1035,6 +1036,25 @@
false,
#endif
properties_.memory_pool(), &ctx);
+#else
+ // Arrow 20+ version uses factory functions instead of shared_ptr for decryptors
+ std::function<std::unique_ptr<Decryptor>()> meta_decryptor_factory =
+ InternalFileDecryptor::GetColumnMetaDecryptorFactory(file_decryptor_.get(), crypto_metadata.get());
+ std::function<std::unique_ptr<Decryptor>()> data_decryptor_factory =
+ InternalFileDecryptor::GetColumnDataDecryptorFactory(file_decryptor_.get(), crypto_metadata.get());
+
+ const CryptoContext ctx {
+ col->has_dictionary_page(),
+ row_group_ordinal_,
+ static_cast<int16_t>(i),
+ meta_decryptor_factory,
+ data_decryptor_factory,
+ };
+
+ return PageReader::Open(stream, col->num_values(), col->compression(),
+ false,
+ properties_.memory_pool(), &ctx);
+#endif
}
private:
@@ -1071,7 +1091,9 @@
}
void Close() override {
+#if ARROW_VERSION_MAJOR < 20
if (file_decryptor_) file_decryptor_->WipeOutDecryptionKeys();
+#endif
}
std::shared_ptr<RowGroupReader> GetRowGroup(int i) override {
@@ -1249,9 +1271,17 @@
// Handle AAD prefix
EncryptionAlgorithm algo = file_crypto_metadata->encryption_algorithm();
std::string file_aad = HandleAadPrefix(file_decryption_properties, algo);
+#if ARROW_VERSION_MAJOR < 20
file_decryptor_ = std::make_shared<::parquet::InternalFileDecryptor>(
file_decryption_properties, file_aad, algo.algorithm,
file_crypto_metadata->key_metadata(), properties_.memory_pool());
+#else
+ // Arrow 20+ takes a shared_ptr to FileDecryptionProperties
+ file_decryptor_ = std::make_shared<::parquet::InternalFileDecryptor>(
+ std::shared_ptr<FileDecryptionProperties>(file_decryption_properties),
+ file_aad, algo.algorithm,
+ file_crypto_metadata->key_metadata(), properties_.memory_pool());
+#endif
int64_t metadata_offset = source_size_ - kFooterSize - footer_len + crypto_metadata_len;
uint32_t metadata_len = footer_len - crypto_metadata_len;
@@ -1282,9 +1312,18 @@
EncryptionAlgorithm algo = file_metadata_->encryption_algorithm();
// Handle AAD prefix
std::string file_aad = HandleAadPrefix(file_decryption_properties, algo);
+#if ARROW_VERSION_MAJOR < 20
file_decryptor_ = std::make_shared<::parquet::InternalFileDecryptor>(
file_decryption_properties, file_aad, algo.algorithm,
file_metadata_->footer_signing_key_metadata(), properties_.memory_pool());
+#else
+ // Arrow 20+ takes a shared_ptr to FileDecryptionProperties
+ file_decryptor_ = std::make_shared<::parquet::InternalFileDecryptor>(
+ std::shared_ptr<FileDecryptionProperties>(file_decryption_properties),
+ file_aad, algo.algorithm,
+ file_metadata_->footer_signing_key_metadata(), properties_.memory_pool());
+ // In Arrow 20+, no need to set file_decryptor in metadata
+#endif
// set the InternalFileDecryptor in the metadata as well, as it's used
// for signature verification and for ColumnChunkMetaData creation.
#if GAL_set_file_decryptor_declare_private
@@ -0,0 +1,10 @@
--- ceph-20.0.0-2099-gc62cbb7d/src/json_spirit/json_spirit_reader_template.h.orig 2025-06-09 11:56:21.534808695 -0400
+++ ceph-20.0.0-2099-gc62cbb7d/src/json_spirit/json_spirit_reader_template.h 2025-06-09 12:01:56.358334353 -0400
@@ -136,6 +136,7 @@
{
typedef typename String_type::const_iterator Iter_type;
+ if( end - begin < 1 ) return String_type();
if( end - begin < 2 ) return String_type( begin, end );
String_type result;
+13
View File
@@ -0,0 +1,13 @@
--- ceph-20.2.0/src/CMakeLists.txt.orig 2026-01-20 14:31:56.764231793 -0500
+++ ceph-20.2.0/src/CMakeLists.txt 2026-01-20 14:35:21.258787691 -0500
@@ -1051,8 +1051,8 @@
if(WITH_RADOSGW)
if(WITH_RADOSGW_SELECT_PARQUET OR WITH_RADOSGW_ARROW_FLIGHT)
if(WITH_SYSTEM_ARROW)
- find_package(Arrow 4 REQUIRED QUIET)
- find_package(Parquet 4 REQUIRED QUIET)
+ find_package(Arrow REQUIRED QUIET)
+ find_package(Parquet REQUIRED QUIET)
else()
# find arrow's dependencies
if (WITH_SYSTEM_UTF8PROC)
+22
View File
@@ -0,0 +1,22 @@
--- ceph-20.0.0-2787-g838ba95e/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/nostd/internal/absl/base/options.h.orig 2025-07-31 10:18:56.636528168 -0400
+++ ceph-20.0.0-2787-g838ba95e/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/nostd/internal/absl/base/options.h 2025-07-31 10:19:12.923329646 -0400
@@ -70,7 +70,7 @@
// Include a standard library header to allow configuration based on the
// standard library in use.
#ifdef __cplusplus
-#include <ciso646>
+#include <iso646.h>
#endif
// -----------------------------------------------------------------------------
--- ceph-20.2.0/src/boost/boost/redis/adapter/detail/adapters.hpp.orig 2026-02-06 09:54:39.748078321 -0500
+++ ceph-20.2.0/src/boost/boost/redis/adapter/detail/adapters.hpp 2026-02-06 09:55:02.427664048 -0500
@@ -29,7 +29,7 @@
#include <charconv>
// See https://stackoverflow.com/a/31658120/1077832
-#include<ciso646>
+#include<iso646.h>
#ifdef _LIBCPP_VERSION
#else
#include <cstdlib>
@@ -0,0 +1,10 @@
--- ceph-20.2.0/src/crimson/common/smp_helpers.h.orig 2025-12-04 10:38:34.906915674 -0500
+++ ceph-20.2.0/src/crimson/common/smp_helpers.h 2025-12-04 10:38:45.200845804 -0500
@@ -8,6 +8,7 @@
#include <optional>
#include <type_traits>
#include <vector>
+#include <coroutine>
#include <seastar/core/shared_future.hh>
#include <seastar/core/smp.hh>
+70
View File
@@ -0,0 +1,70 @@
--- ceph-20.2.0/src/common/Formatter.h.orig 2026-01-06 17:47:18.437014517 -0500
+++ ceph-20.2.0/src/common/Formatter.h 2026-01-06 17:47:53.015404074 -0500
@@ -12,6 +12,7 @@
#include <memory>
#include <vector>
#include <stdarg.h>
+#include <cstdint>
#include <sstream>
#include <map>
#include <vector>
--- ceph-20.2.0/src/mds/Locker.cc.orig 2026-01-07 10:34:12.731210930 -0500
+++ ceph-20.2.0/src/mds/Locker.cc 2026-01-07 10:34:35.627823155 -0500
@@ -4489,7 +4489,7 @@
dout(7) << "handle_client_lease client." << client << " renew on " << *dn
<< (!dn->lock.can_lease(client)?", revoking lease":"") << dendl;
if (dn->lock.can_lease(client)) {
- auto reply = make_message<MClientLease>(*m);
+ auto reply = ceph::make_message<MClientLease>(*m);
int pool = 1; // fixme.. do something smart!
reply->h.duration_ms = (int)(1000 * mdcache->client_lease_durations[pool]);
reply->h.seq = ++l->seq;
--- ceph-20.2.0/src/mds/Server.cc.orig 2026-01-07 11:27:13.532097596 -0500
+++ ceph-20.2.0/src/mds/Server.cc 2026-01-07 11:28:42.411581266 -0500
@@ -150,7 +150,7 @@
}
}
batch_reqs.clear();
- server->reply_client_request(mdr, make_message<MClientReply>(*mdr->client_request, r));
+ server->reply_client_request(mdr, ceph::make_message<MClientReply>(*mdr->client_request, r));
}
void print(std::ostream& o) const override {
o << "[batch front=" << *mdr << "]";
@@ -2142,7 +2142,7 @@
dout(20) << __func__ << ": batch head " << *mdr << dendl;
mdr->release_batch_op()->respond(r);
} else {
- reply_client_request(mdr, make_message<MClientReply>(*mdr->client_request, r));
+ reply_client_request(mdr, ceph::make_message<MClientReply>(*mdr->client_request, r));
}
} else if (mdr->internal_op > -1) {
dout(10) << __func__ << ": completing with result " << cpp_strerror(r) << " on internal " << *mdr << dendl;
@@ -2290,7 +2290,7 @@
}
- auto reply = make_message<MClientReply>(*req, 0);
+ auto reply = ceph::make_message<MClientReply>(*req, 0);
reply->set_unsafe();
// mark xlocks "done", indicating that we are exposing uncommitted changes.
@@ -2632,7 +2632,7 @@
req->get_op() != CEPH_MDS_OP_OPEN &&
req->get_op() != CEPH_MDS_OP_CREATE)) {
dout(5) << "already completed " << req->get_reqid() << dendl;
- auto reply = make_message<MClientReply>(*req, 0);
+ auto reply = ceph::make_message<MClientReply>(*req, 0);
if (created != inodeno_t()) {
bufferlist extra;
set_reply_extra_bl(req, created, extra);
--- ceph-20.2.0/src/mds/MDCache.cc.orig 2026-01-07 11:28:48.882470871 -0500
+++ ceph-20.2.0/src/mds/MDCache.cc 2026-01-07 11:29:12.405069562 -0500
@@ -10535,7 +10535,7 @@
CInode *cur = 0;
- auto reply = make_message<MDiscoverReply>(*dis);
+ auto reply = ceph::make_message<MDiscoverReply>(*dis);
snapid_t snapid = dis->get_snapid();
@@ -0,0 +1,11 @@
--- ceph-20.2.0/src/rgw/driver/dbstore/CMakeLists.txt.orig 2026-01-27 19:53:53.780108462 -0500
+++ ceph-20.2.0/src/rgw/driver/dbstore/CMakeLists.txt 2026-01-28 07:30:04.861741687 -0500
@@ -34,7 +34,7 @@
list(APPEND link_targets jaeger_base)
endif()
list(APPEND link_targets rgw_common)
-target_link_libraries(dbstore_lib PUBLIC ${link_targets})
+target_link_libraries(dbstore_lib PUBLIC ${link_targets} PRIVATE rgw_a)
set (CMAKE_LINK_LIBRARIES ${CMAKE_LINK_LIBRARIES} dbstore_lib)
@@ -0,0 +1,8 @@
--- ceph-20.2.0/src/jaegertracing/opentelemetry-cpp/CMakeLists.txt.orig 2026-02-17 08:17:06.372917033 -0500
+++ ceph-20.2.0/src/jaegertracing/opentelemetry-cpp/CMakeLists.txt 2026-02-17 08:17:44.026323618 -0500
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.1)
+cmake_minimum_required(VERSION 3.5)
# See https://cmake.org/cmake/help/v3.3/policy/CMP0057.html required by certain
# versions of gtest
+14
View File
@@ -0,0 +1,14 @@
--- ceph-20.2.0/src/rgw/rgw_lua_utils.cc.orig 2026-02-17 11:46:05.677894827 -0500
+++ ceph-20.2.0/src/rgw/rgw_lua_utils.cc 2026-02-17 11:50:06.106569226 -0500
@@ -115,7 +115,11 @@
// create new lua state together with reference to the guard
lua_State* newstate(lua_state_guard* guard) {
+#if (LUA_VERSION_NUM < 505)
lua_State* L = lua_newstate(allocator, guard);
+#else
+ lua_State* L = lua_newstate(allocator, guard, 314159);
+#endif
if (L) {
lua_atpanic(L, [](lua_State* L) -> int {
const char* msg = lua_tostring(L, -1);
+506 -1259
View File
File diff suppressed because it is too large Load Diff
@@ -1,13 +0,0 @@
diff --git a/cmake/modules/BuildBoost.cmake b/cmake/modules/BuildBoost.cmake
index 2e92132366..3cb1e3d958 100644
--- a/cmake/modules/BuildBoost.cmake
+++ b/cmake/modules/BuildBoost.cmake
@@ -62,7 +62,7 @@ function(do_build_boost version)
else()
list(APPEND boost_features "address-model=32")
endif()
- set(BOOST_CXXFLAGS "-fPIC -w") # check on arm, etc <---XXX
+ set(BOOST_CXXFLAGS "-fPIC -w -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -ftemplate-depth-1024 -fno-new-ttp-matching -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free") # check on arm, etc <---XXX
list(APPEND boost_features "cxxflags=${BOOST_CXXFLAGS}")
set(boost_with_libs)
+1 -1
View File
@@ -1 +1 @@
SHA512 (ceph-17.2.6.tar.gz) = dca9aea2ce210c15fcc34cb06a5dc5b4488ffa36d684166d47ebd87e48b54b6fee0882e1c67007a780e1c25754e9bc6e760cc10f60ea1183263f8504ef2dbd9b
SHA512 (ceph-20.2.0.tar.gz) = 5678586fe663ddc3d8ca4ded7a2b811025784abc5f493164d2f1e590608a72176a722d5984d83400c501deeb526e0a108c2e7e3d969dea7bf6ce0d0b42190ea5