diff options
author | Sam James <sam@gentoo.org> | 2023-06-04 05:59:34 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-06-04 06:06:39 +0100 |
commit | bbbbb0a44b36b8e45c4b94e9cd55e3b564882389 (patch) | |
tree | f77442e1816a832fffdec973d6a9207cceae4b6d /sys-cluster | |
parent | Rename dev-python/{docker-py → docker} (diff) | |
download | gentoo-bbbbb0a44b36b8e45c4b94e9cd55e3b564882389.tar.gz gentoo-bbbbb0a44b36b8e45c4b94e9cd55e3b564882389.tar.bz2 gentoo-bbbbb0a44b36b8e45c4b94e9cd55e3b564882389.zip |
sys-cluster/ceph: fix parallel(?) build failure
... or at least a non-deterministic issue, as it only happens on some machines.
We've seen that kind of thing in the past with ninja, although only pretty
rarely (on m68k...).
Closes: https://bugs.gentoo.org/868891
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-cluster')
-rw-r--r-- | sys-cluster/ceph/ceph-17.2.6-r3.ebuild | 4 | ||||
-rw-r--r-- | sys-cluster/ceph/files/ceph-17.2.6-cmake.patch | 80 |
2 files changed, 83 insertions, 1 deletions
diff --git a/sys-cluster/ceph/ceph-17.2.6-r3.ebuild b/sys-cluster/ceph/ceph-17.2.6-r3.ebuild index 259638cf91a1..0c028dec1610 100644 --- a/sys-cluster/ceph/ceph-17.2.6-r3.ebuild +++ b/sys-cluster/ceph/ceph-17.2.6-r3.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_COMPAT=( python3_{10..11} ) LUA_COMPAT=( lua5-{3..4} ) inherit check-reqs bash-completion-r1 cmake flag-o-matic lua-single \ @@ -227,6 +227,8 @@ PATCHES=( "${FILESDIR}/ceph-17.2.6-link-boost-context.patch" # https://bugs.gentoo.org/905626 "${FILESDIR}/ceph-17.2.6-arrow-flatbuffers-c++14.patch" + # https://bugs.gentoo.org/868891 + "${FILESDIR}/ceph-17.2.6-cmake.patch" ) check-reqs_export_vars() { diff --git a/sys-cluster/ceph/files/ceph-17.2.6-cmake.patch b/sys-cluster/ceph/files/ceph-17.2.6-cmake.patch new file mode 100644 index 000000000000..82bf399fb6f1 --- /dev/null +++ b/sys-cluster/ceph/files/ceph-17.2.6-cmake.patch @@ -0,0 +1,80 @@ +https://bugs.gentoo.org/868891 +https://github.com/ceph/ceph/pull/49517 + +From aa4b3652399b317652407959ee880982d4f648de Mon Sep 17 00:00:00 2001 +From: jinqiang zhang <peeweep@0x0.ee> +Date: Tue, 20 Dec 2022 04:28:52 +0000 +Subject: [PATCH 1/2] cmake: fix common-msg-objs can't find common-options-objs +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +compile ceph-17.2.5 failed with follow error message: + +``` +ceph-17.2.5/src/msg/Messenger.h:723:30: error: ‘class ConfigValues’ has no member named ‘ms_die_on_unhandled_msg’ +``` + +Add common-options-objs to common-msg-objs's depend to fix it. + +Full build log: https://fars.ee/YMqu +Releated downstream issue: https://bugs.gentoo.org/866449 +Signed-off-by: jinqiang zhang <peeweep@0x0.ee> +--- a/src/msg/CMakeLists.txt ++++ b/src/msg/CMakeLists.txt +@@ -48,6 +48,7 @@ add_library(common-msg-objs OBJECT ${msg_srcs}) + target_compile_definitions(common-msg-objs PRIVATE + $<TARGET_PROPERTY:fmt::fmt,INTERFACE_COMPILE_DEFINITIONS>) + target_include_directories(common-msg-objs PRIVATE ${OPENSSL_INCLUDE_DIR}) ++add_dependencies(common-msg-objs common-options-objs) + + if(WITH_DPDK) + set(async_dpdk_srcs + +From 80e422234acb1f8ffcbe8ee3898cb00f889466a3 Mon Sep 17 00:00:00 2001 +From: jinqiang zhang <peeweep@0x0.ee> +Date: Tue, 20 Dec 2022 04:36:56 +0000 +Subject: [PATCH 2/2] cmake: fix krbd and rados_snap_set_diff_obj can't find + global_legacy_options.h + +compile ceph-17.2.5 failed with follow error messages: + +1. src/librados/snap_set_diff.cc can't find global_legacy_options.h +``` + from /var/tmp/portage/sys-cluster/ceph-17.2.5-r1/work/ceph-17.2.5/src/librados/snap_set_diff.cc:7: +/var/tmp/portage/sys-cluster/ceph-17.2.5-r1/work/ceph-17.2.5/src/common/options/legacy_config_opts.h:1:10: fatal error: global_legacy_options.h: No such file or directory + +``` + +2. src/krbd.cc can't find global_legacy_options.h + +``` + from /var/tmp/portage/sys-cluster/ceph-17.2.5-r1/work/ceph-17.2.5/src/krbd.cc:44: +/var/tmp/portage/sys-cluster/ceph-17.2.5-r1/work/ceph-17.2.5/src/common/options/legacy_config_opts.h:1:10: fatal error: global_legacy_options.h: No such file or directory + +``` + +Add common-options-objs to depend to let it build ealier, similar with 3b3da64d. + +Full build log: https://fars.ee/SZFs +Releated downstream issue: https://bugs.gentoo.org/868891 +Signed-off-by: jinqiang zhang <peeweep@0x0.ee> +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -614,6 +614,7 @@ add_subdirectory(osdc) + add_subdirectory(perfglue) + + add_library(rados_snap_set_diff_obj OBJECT librados/snap_set_diff.cc) ++add_dependencies(rados_snap_set_diff_obj common-options-objs) + + option(WITH_LIBRADOSSTRIPER "build with libradosstriper support" ON) + +@@ -867,6 +868,7 @@ add_subdirectory(journal) + if(WITH_RBD) + if(WITH_KRBD) + add_library(krbd STATIC krbd.cc ++ $<TARGET_OBJECTS:common-options-objs> + $<TARGET_OBJECTS:parse_secret_objs>) + target_link_libraries(krbd keyutils::keyutils) + endif() + |