guix_mirror_bot pushed a commit to branch master in repository guix. commit 9b9120dcad9b95be9dfec5a4ca3536dbe6cfd8c4 Author: Maxim Cournoyer <ma...@guixotic.coop> AuthorDate: Mon Jul 21 16:49:09 2025 +0900
gnu: libjami: Fix build with GCC 14, building with sdbus-cpp v2.1.0. * gnu/packages/patches/libjami-sdbus-cpp-v2.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/jami.scm (libjami): Apply it. [inputs]: Replace sdbus-c++-1.4 with sdbus-c++. Change-Id: Ib123cb84a4ffa241ae3c6bcdff0d97884732c173 --- gnu/local.mk | 1 + gnu/packages/jami.scm | 5 +- gnu/packages/patches/libjami-sdbus-cpp-v2.patch | 144 ++++++++++++++++++++++++ 3 files changed, 148 insertions(+), 2 deletions(-) diff --git a/gnu/local.mk b/gnu/local.mk index f1a9e940c6..e1b2003842 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1761,6 +1761,7 @@ dist_patch_DATA = \ %D%/packages/patches/libgnomeui-utf8.patch \ %D%/packages/patches/libgrss-CVE-2016-2001.patch \ %D%/packages/patches/libjami-ac-config-files.patch \ + %D%/packages/patches/libjami-sdbus-cpp-v2.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-typos.patch \ %D%/packages/patches/libofa-ftbfs-1.diff \ diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm index f8b7a4345f..e5a0798991 100644 --- a/gnu/packages/jami.scm +++ b/gnu/packages/jami.scm @@ -96,7 +96,8 @@ (base32 "136hiippjfbyp4h3pf68kh3cyw6r2idjgq7vj1h9sdipc87a1a2r")) (patches (search-patches - "libjami-ac-config-files.patch")))) + "libjami-ac-config-files.patch" + "libjami-sdbus-cpp-v2.patch")))) (outputs '("out" "bin" "debug")) ;"bin' contains jamid (build-system gnu-build-system) (arguments @@ -158,7 +159,7 @@ openssl pjproject-jami pulseaudio - sdbus-c++-1.4.0 + sdbus-c++ speex speexdsp webrtc-audio-processing-0.3 diff --git a/gnu/packages/patches/libjami-sdbus-cpp-v2.patch b/gnu/packages/patches/libjami-sdbus-cpp-v2.patch new file mode 100644 index 0000000000..3a6460d380 --- /dev/null +++ b/gnu/packages/patches/libjami-sdbus-cpp-v2.patch @@ -0,0 +1,144 @@ +Upstream-status: <https://review.jami.net/c/jami-daemon/+/31504> + +diff --git a/bin/dbus/dbuscallmanager.hpp b/bin/dbus/dbuscallmanager.hpp +index b79e0cd6f..918d8bc30 100644 +--- a/bin/dbus/dbuscallmanager.hpp ++++ b/bin/dbus/dbuscallmanager.hpp +@@ -23,7 +23,7 @@ class DBusCallManager : public sdbus::AdaptorInterfaces<cx::ring::Ring::CallMana + { + public: + DBusCallManager(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/CallManager") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/CallManager")) + { + registerAdaptor(); + registerSignalHandlers(); +diff --git a/bin/dbus/dbusconfigurationmanager.hpp b/bin/dbus/dbusconfigurationmanager.hpp +index a6bb8e4e9..895c7690d 100644 +--- a/bin/dbus/dbusconfigurationmanager.hpp ++++ b/bin/dbus/dbusconfigurationmanager.hpp +@@ -33,7 +33,7 @@ public: + std::vector<std::map<std::string, std::string>>, + std::map<std::string, int32_t>>; + DBusConfigurationManager(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/ConfigurationManager") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/ConfigurationManager")) + { + registerAdaptor(); + registerSignalHandlers(); +diff --git a/bin/dbus/dbusinstance.hpp b/bin/dbus/dbusinstance.hpp +index d45c033e1..184fd2c7d 100644 +--- a/bin/dbus/dbusinstance.hpp ++++ b/bin/dbus/dbusinstance.hpp +@@ -28,7 +28,7 @@ class DBusInstance : public sdbus::AdaptorInterfaces<cx::ring::Ring::Instance_ad + { + public: + DBusInstance(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/Instance") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/Instance")) + { + registerAdaptor(); + } +diff --git a/bin/dbus/dbuspluginmanagerinterface.hpp b/bin/dbus/dbuspluginmanagerinterface.hpp +index c063a9903..132674e9f 100644 +--- a/bin/dbus/dbuspluginmanagerinterface.hpp ++++ b/bin/dbus/dbuspluginmanagerinterface.hpp +@@ -23,7 +23,7 @@ class DBusPluginManagerInterface : public sdbus::AdaptorInterfaces<cx::ring::Rin + { + public: + DBusPluginManagerInterface(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/PluginManagerInterface") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/PluginManagerInterface")) + { + registerAdaptor(); + registerSignalHandlers(); +diff --git a/bin/dbus/dbuspresencemanager.hpp b/bin/dbus/dbuspresencemanager.hpp +index ca8ba7f2a..27b93eee4 100644 +--- a/bin/dbus/dbuspresencemanager.hpp ++++ b/bin/dbus/dbuspresencemanager.hpp +@@ -23,7 +23,7 @@ class DBusPresenceManager : public sdbus::AdaptorInterfaces<cx::ring::Ring::Pres + { + public: + DBusPresenceManager(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/PresenceManager") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/PresenceManager")) + { + registerAdaptor(); + registerSignalHandlers(); +diff --git a/bin/dbus/dbusvideomanager.hpp b/bin/dbus/dbusvideomanager.hpp +index 7fbca2492..96f73e99b 100644 +--- a/bin/dbus/dbusvideomanager.hpp ++++ b/bin/dbus/dbusvideomanager.hpp +@@ -23,7 +23,7 @@ class DBusVideoManager : public sdbus::AdaptorInterfaces<cx::ring::Ring::VideoMa + { + public: + DBusVideoManager(sdbus::IConnection& connection) +- : AdaptorInterfaces(connection, "/cx/ring/Ring/VideoManager") ++ : AdaptorInterfaces(connection, sdbus::ObjectPath("/cx/ring/Ring/VideoManager")) + { + registerAdaptor(); + registerSignalHandlers(); +diff --git a/bin/dbus/main.cpp b/bin/dbus/main.cpp +index ee8a349cc..4d7adc95e 100644 +--- a/bin/dbus/main.cpp ++++ b/bin/dbus/main.cpp +@@ -180,7 +180,7 @@ main(int argc, char *argv []) + } + + try { +- connection = sdbus::createSessionBusConnection("cx.ring.Ring"); ++ connection = sdbus::createSessionBusConnection(sdbus::ServiceName("cx.ring.Ring")); + DBusCallManager callManager(*connection); + DBusConfigurationManager configurationManager(*connection); + DBusInstance instanceManager(*connection); +diff --git a/configure.ac b/configure.ac +index 66e52ee62..68de32497 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -420,7 +420,7 @@ AC_ARG_WITH([dbus], + [], + [with_dbus=yes]) + AS_IF([test "x$with_dbus" = "xyes"], +- [PKG_CHECK_MODULES(SDBUSCPP, [sdbus-c++],, ++ [PKG_CHECK_MODULES(SDBUSCPP, [sdbus-c++ >= 2.0.0],, + AC_MSG_ERROR([sdbus-c++ not found])) + + AC_CONFIG_FILES([bin/dbus/Makefile]) +diff --git a/contrib/src/sdbus-cpp/SHA512SUMS b/contrib/src/sdbus-cpp/SHA512SUMS +index a48ebec1c..009d0b81b 100644 +--- a/contrib/src/sdbus-cpp/SHA512SUMS ++++ b/contrib/src/sdbus-cpp/SHA512SUMS +@@ -1 +1 @@ +-dab2c4d9a5ea6d626672a5a6ee6f3490c60c6fdd160769801a4d6b4cf3df4983fad57ff0230132a5d637ec78a55993200ce217fa89461016e101865cc2777d7d sdbus-cpp-1.2.0.tar.gz ++4247d49f0d5231e2768c0c96fa9c266bbcc340292c9c3d748f9c37ff992b82301faea798300f916e9a5c992d77adfe56186866c91a4c7d4157750ff09ba5a047 sdbus-cpp-2.1.0.tar.gz +diff --git a/contrib/src/sdbus-cpp/rules.mak b/contrib/src/sdbus-cpp/rules.mak +index 397d18d3b..d00fa97ca 100644 +--- a/contrib/src/sdbus-cpp/rules.mak ++++ b/contrib/src/sdbus-cpp/rules.mak +@@ -1,4 +1,4 @@ +-SDBUS_CPP_VERSION := 1.2.0 ++SDBUS_CPP_VERSION := 2.1.0 + SDBUS_CPP_URL := https://github.com/Kistler-Group/sdbus-cpp/archive/refs/tags/v$(SDBUS_CPP_VERSION).tar.gz + + ifdef HAVE_LINUX +@@ -7,17 +7,14 @@ PKGS += sdbus-cpp + endif + endif + +-ifeq ($(call need_pkg,"sdbus-c++ >= 1.2.0"),) ++ifeq ($(call need_pkg,"sdbus-c++ >= 2.0.0"),) + PKGS_FOUND += sdbus-cpp + endif + + SDBUS_CPP_CMAKECONF := -D CMAKE_BUILD_TYPE=Release \ + -D BUILD_SHARED_LIBS=OFF \ +- -D BUILD_CODE_GEN=ON \ +- -D BUILD_LIBSYSTEMD=OFF \ +- -D BUILD_TESTS=OFF \ +- -D BUILD_EXAMPLES=OFF \ +- -D BUILD_DOC=OFF ++ -D SDBUSCPP_BUILD_CODEGEN=ON \ ++ -D SDBUSCPP_BUILD_DOCS=OFF + + $(TARBALLS)/sdbus-cpp-$(SDBUS_CPP_VERSION).tar.gz: + $(call download,$(SDBUS_CPP_URL))