commit:     8bd965215b0aec8cb6065c8f39f039529e4e2401
Author:     Patrick McLean <patrick.mclean <AT> sony <DOT> com>
AuthorDate: Wed Aug  5 00:16:17 2020 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Wed Aug  5 00:16:37 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bd96521

sys-cluster/ceph-14.2.10-r3: revbump, fix build with USE=-mgr, fix deps

Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-3.0.1, Repoman-2.3.23
Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 ...ph-14.2.10-r2.ebuild => ceph-14.2.10-r3.ebuild} |   5 +-
 .../files/ceph-14.2.10-build-without-mgr.patch     | 111 +++++++++++++++++++++
 2 files changed, 114 insertions(+), 2 deletions(-)

diff --git a/sys-cluster/ceph/ceph-14.2.10-r2.ebuild 
b/sys-cluster/ceph/ceph-14.2.10-r3.ebuild
similarity index 99%
rename from sys-cluster/ceph/ceph-14.2.10-r2.ebuild
rename to sys-cluster/ceph/ceph-14.2.10-r3.ebuild
index ea91f8e8425..9da1e1fe06c 100644
--- a/sys-cluster/ceph/ceph-14.2.10-r2.ebuild
+++ b/sys-cluster/ceph/ceph-14.2.10-r3.ebuild
@@ -32,7 +32,7 @@ IUSE="babeltrace +cephfs custom-cflags diskprediction dpdk 
fuse grafana jemalloc
        spdk system-boost systemd +tcmalloc test xfs zfs"
 IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
 
-COMMON_DEPEND="
+DEPEND="
        acct-group/ceph
        acct-user/ceph
        virtual/libudev:=
@@ -122,7 +122,7 @@ BDEPEND="
                sys-fs/btrfs-progs
        )
 "
-RDEPEND="${COMMON_DEPEND}
+RDEPEND="${DEPEND}
        app-admin/sudo
        net-misc/socat
        sys-apps/gptfdisk
@@ -195,6 +195,7 @@ PATCHES=(
        "${FILESDIR}/ceph-14.2.4-undefined-behaviour.patch"
        "${FILESDIR}/ceph-14.2.10-missing-includes.patch"
        "${FILESDIR}/ceph-14.2.10-python-warnings.patch"
+       "${FILESDIR}/ceph-14.2.10-build-without-mgr.patch"
 )
 
 check-reqs_export_vars() {

diff --git a/sys-cluster/ceph/files/ceph-14.2.10-build-without-mgr.patch 
b/sys-cluster/ceph/files/ceph-14.2.10-build-without-mgr.patch
new file mode 100644
index 00000000000..0742945c018
--- /dev/null
+++ b/sys-cluster/ceph/files/ceph-14.2.10-build-without-mgr.patch
@@ -0,0 +1,111 @@
+commit 41c1cee88b38bc43002b232ede42dc157364f61a
+Author: Casey Bodley <cbod...@redhat.com>
+Date:   Fri Nov 1 16:04:37 2019 -0400
+
+    cmake: define mgr_cap_obj library when WITH_MGR=OFF
+    
+    resolves the cmake error when WITH_MGR=OFF:
+    
+      Error evaluating generator expression:
+    
+        $<TARGET_OBJECTS:mgr_cap_obj>
+    
+      Objects of target "mgr_cap_obj" referenced but no such target exists.
+    Call Stack (most recent call first):
+      src/mon/CMakeLists.txt:34 (add_library)
+    
+    Signed-off-by: Casey Bodley <cbod...@redhat.com>
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 275a8ebd17..c2a9d7a669 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -473,9 +473,7 @@ if(WITH_LIBRADOSSTRIPER)
+   add_subdirectory(libradosstriper)
+ endif()
+ 
+-if(WITH_MGR)
+-  add_subdirectory(mgr)
+-endif()
++add_subdirectory(mgr)
+ 
+ set(librados_config_srcs
+   librados-config.cc)
+diff --git a/src/mgr/CMakeLists.txt b/src/mgr/CMakeLists.txt
+index 79227bcc1d..e69335eb69 100644
+--- a/src/mgr/CMakeLists.txt
++++ b/src/mgr/CMakeLists.txt
+@@ -1,37 +1,39 @@
+ add_library(mgr_cap_obj OBJECT
+   MgrCap.cc)
+ 
+-set(mgr_srcs
+-  ${CMAKE_SOURCE_DIR}/src/ceph_mgr.cc
+-  ${CMAKE_SOURCE_DIR}/src/mon/PGMap.cc
+-  ActivePyModule.cc
+-  ActivePyModules.cc
+-  BaseMgrModule.cc
+-  BaseMgrStandbyModule.cc
+-  ClusterState.cc
+-  DaemonHealthMetricCollector.cc
+-  DaemonServer.cc
+-  DaemonState.cc
+-  Gil.cc
+-  Mgr.cc
+-  MgrStandby.cc
+-  OSDPerfMetricTypes.cc
+-  OSDPerfMetricCollector.cc
+-  PyFormatter.cc
+-  PyModule.cc
+-  PyModuleRegistry.cc
+-  PyModuleRunner.cc
+-  PyOSDMap.cc
+-  StandbyPyModules.cc
+-  mgr_commands.cc
+-  $<TARGET_OBJECTS:mgr_cap_obj>)
+-add_executable(ceph-mgr ${mgr_srcs})
+-target_include_directories(ceph-mgr SYSTEM PRIVATE "${PYTHON_INCLUDE_DIRS}")
+-target_link_libraries(ceph-mgr
+-  osdc client heap_profiler
+-  global-static ceph-common
+-  Boost::python${MGR_PYTHON_VERSION_MAJOR}${MGR_PYTHON_VERSION_MINOR}
+-  ${MGR_PYTHON_LIBRARIES} ${CMAKE_DL_LIBS} ${GSSAPI_LIBRARIES})
+-set_target_properties(ceph-mgr PROPERTIES
+-  POSITION_INDEPENDENT_CODE ${EXE_LINKER_USE_PIE})
+-install(TARGETS ceph-mgr DESTINATION bin)
++if(WITH_MGR)
++  set(mgr_srcs
++    ${CMAKE_SOURCE_DIR}/src/ceph_mgr.cc
++    ${CMAKE_SOURCE_DIR}/src/mon/PGMap.cc
++    ActivePyModule.cc
++    ActivePyModules.cc
++    BaseMgrModule.cc
++    BaseMgrStandbyModule.cc
++    ClusterState.cc
++    DaemonHealthMetricCollector.cc
++    DaemonServer.cc
++    DaemonState.cc
++    Gil.cc
++    Mgr.cc
++    MgrStandby.cc
++    OSDPerfMetricTypes.cc
++    OSDPerfMetricCollector.cc
++    PyFormatter.cc
++    PyModule.cc
++    PyModuleRegistry.cc
++    PyModuleRunner.cc
++    PyOSDMap.cc
++    StandbyPyModules.cc
++    mgr_commands.cc
++    $<TARGET_OBJECTS:mgr_cap_obj>)
++  add_executable(ceph-mgr ${mgr_srcs})
++  target_include_directories(ceph-mgr SYSTEM PRIVATE "${PYTHON_INCLUDE_DIRS}")
++  target_link_libraries(ceph-mgr
++    osdc client heap_profiler
++    global-static ceph-common
++    Boost::python${MGR_PYTHON_VERSION_MAJOR}${MGR_PYTHON_VERSION_MINOR}
++    ${MGR_PYTHON_LIBRARIES} ${CMAKE_DL_LIBS} ${GSSAPI_LIBRARIES})
++  set_target_properties(ceph-mgr PROPERTIES
++    POSITION_INDEPENDENT_CODE ${EXE_LINKER_USE_PIE})
++  install(TARGETS ceph-mgr DESTINATION bin)
++endif()

Reply via email to