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))

Reply via email to