diff --git a/gnu/local.mk b/gnu/local.mk index 7218e4d4fb0..445420bb134 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1807,7 +1807,8 @@ dist_patch_DATA = \ %D%/packages/patches/lierolibre-remove-arch-warning.patch \ %D%/packages/patches/lierolibre-try-building-other-arch.patch \ %D%/packages/patches/libcdio-glibc-compat.patch \ - %D%/packages/patches/linphone-desktop-without-sdk.patch \ + %D%/packages/patches/linphone-desktop-ispell.patch \ + %D%/packages/patches/linphone-desktop-qtkeychain.patch \ %D%/packages/patches/linux-libre-infodocs-target.patch \ %D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \ %D%/packages/patches/linux-libre-arm64-mnt-reform-revert-phy-rockchip-samsung.patch \ diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm index f24f83a3c37..cd4a1ac3ae4 100644 --- a/gnu/packages/linphone.scm +++ b/gnu/packages/linphone.scm @@ -1,7 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; ;;; Copyright © 2020, 2021 Raghav Gururajan -;;; Copyright © 2020, 2021 Maxim Cournoyer +;;; Copyright © 2020, 2021, 2024-2025 Maxim Cournoyer ;;; Copyright © 2020 Tobias Geerinckx-Rice ;;; Copyright © 2023 Ricardo Wurmus ;;; Copyright © 2023 Andreas Enge @@ -25,6 +24,7 @@ #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages aidc) + #:use-module (gnu packages aspell) #:use-module (gnu packages audio) #:use-module (gnu packages avahi) #:use-module (gnu packages cpp) @@ -815,7 +815,7 @@ and video calls or instant messaging capabilities to an application.") (define-public linphone-desktop (package (name "linphone-desktop") - (version "5.0.14") + (version "5.2.6") (source (origin (method git-fetch) @@ -824,29 +824,30 @@ and video calls or instant messaging capabilities to an application.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0glrfsp087ni5hn6x6p4f6y63r4nyp061yyy0rfgddbxkzdqi2j1")) - (patches (search-patches "linphone-desktop-without-sdk.patch")))) + (base32 "06qfmgnsyaw1mdhd04pibsyfchy1bj15zvy36wz82g5dx3c5yj17")) + (patches + (search-patches "linphone-desktop-cmake-belcard.patch" + "linphone-desktop-cmake-find-modules.patch" + "linphone-desktop-ispell.patch" + "linphone-desktop-qtkeychain.patch")))) (build-system qt-build-system) (outputs '("out" "debug")) (arguments (list #:tests? #f ; No test target #:configure-flags - #~(list (string-append "-DFULL_VERSION=" #$version) - (string-append "-DCMAKE_INSTALL_PREFIX=" #$output) + #~(list (string-append "-DLINPHONEAPP_VERSION=" #$version) (string-append "-DCMAKE_INSTALL_BINDIR=" #$output "/bin") (string-append "-DCMAKE_INSTALL_DATAROOTDIR=" #$output "/share") + (string-append "-DCMAKE_INSTALL_INCLUDEDIR=" #$output "/include") (string-append "-DCMAKE_INSTALL_LIBDIR=" #$output "/lib") "-DENABLE_UPDATE_CHECK=NO" "-DENABLE_DAEMON=YES" - "-DENABLE_CONSOLE_UI=YES") + "-DENABLE_CONSOLE_UI=YES" + "-DLinphoneCxx_TARGET=liblinphone++" + "-DLINPHONE_QT_ONLY=YES") ;avoid building linphone SDK #:phases #~(modify-phases %standard-phases - (add-after 'unpack 'pre-configure - (lambda _ - (make-file-writable "linphone-app/linphoneqt_version.cmake") - (substitute* "linphone-app/linphoneqt_version.cmake" - (("\\$\\{GUIX-SET-VERSION\\}") #$version)))) (add-before 'install 'pre-install (lambda _ (mkdir-p (string-append #$output "/share/linphone")) @@ -873,18 +874,19 @@ and video calls or instant messaging capabilities to an application.") (mkdir-p (dirname grammar-dest)) (symlink (string-append liblinphone "/share/belr/grammars") grammar-dest))))))) - (native-inputs - (list pkg-config qttools-5)) + (native-inputs (list pkg-config qttools-5)) (inputs (list bctoolbox belcard - belr + ispell-for-linphone liblinphone mediastreamer2 ortp qtbase-5 qtdeclarative-5 qtgraphicaleffects + qtkeychain + qtmultimedia-5 qtquickcontrols-5 qtquickcontrols2-5 qtsvg-5 diff --git a/gnu/packages/patches/linphone-desktop-cmake-belcard.patch b/gnu/packages/patches/linphone-desktop-cmake-belcard.patch new file mode 100644 index 00000000000..3cc573b938a --- /dev/null +++ b/gnu/packages/patches/linphone-desktop-cmake-belcard.patch @@ -0,0 +1,39 @@ +From 0216b81c46f2612b8acf33b1a7c5886db25f45ff Mon Sep 17 00:00:00 2001 +From: Maxim Cournoyer +Date: Thu, 13 Jun 2024 16:04:29 -0400 +Subject: [PATCH] cmake: Fix BelCard cmake module name. + +* linphone-app/CMakeLists.txt: cmake: Fix BelCard cmake module name. + +Fixes: +--- + linphone-app/CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/linphone-app/CMakeLists.txt b/linphone-app/CMakeLists.txt +index d40842fa..f1c225a5 100644 +--- a/linphone-app/CMakeLists.txt ++++ b/linphone-app/CMakeLists.txt +@@ -24,7 +24,7 @@ cmake_minimum_required(VERSION 3.22) + + + #Linphone targets +-set(LINPHONE_PACKAGES LinphoneCxx Mediastreamer2 Belcard LibLinphone) ++set(LINPHONE_PACKAGES LinphoneCxx Mediastreamer2 BelCard LibLinphone) + + list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") + +@@ -115,7 +115,7 @@ set(PLUGIN_TARGETS ${LinphoneCxx_TARGET}) + set(APP_TARGETS ${LinphoneCxx_TARGET} + ${BCToolbox_TARGET}#Logger/App + ${Mediastreamer2_TARGET}#MediastreamerUtils +- ${Belcard_TARGET}#VCard Model ++ ${BelCard_TARGET}#VCard Model + ${LibLinphone_TARGET})#MediastreamerUtils + + #################################### + +base-commit: e34beffe06802efcc5904d5059006ac0d2f7ef32 +-- +2.45.1 + diff --git a/gnu/packages/patches/linphone-desktop-cmake-find-modules.patch b/gnu/packages/patches/linphone-desktop-cmake-find-modules.patch new file mode 100644 index 00000000000..96353eef281 --- /dev/null +++ b/gnu/packages/patches/linphone-desktop-cmake-find-modules.patch @@ -0,0 +1,422 @@ +From 25bdfe9ad3a33e1db6e5db8290b3a5112f4d621e Mon Sep 17 00:00:00 2001 +From: Maxim Cournoyer +Date: Fri, 14 Jun 2024 22:33:58 -0400 +Subject: [PATCH] cmake: Delete most CMake find modules. + +They do not appear to bring any value compared to the config files +installed by each project, and cause issues like the following, at +least when using system libraries: + + -- Trying to find LibLinphone + CMake Error at linphone-app/cmake/FindLibLinphone.cmake:31 (include): + include could not find requested file: + + LibLinphoneTargets + Call Stack (most recent call first): + linphone-app/CMakeLists.txt:108 (find_package) + +Fixes: +--- + linphone-app/cmake/FindBCToolbox.cmake | 60 --------------------- + linphone-app/cmake/FindBelcard.cmake | 44 --------------- + linphone-app/cmake/FindISpell.cmake | 47 ---------------- + linphone-app/cmake/FindLibLinphone.cmake | 46 ---------------- + linphone-app/cmake/FindLinphoneCxx.cmake | 45 ---------------- + linphone-app/cmake/FindMediastreamer2.cmake | 49 ----------------- + linphone-app/cmake/FindQtKeychain.cmake | 48 ----------------- + 7 files changed, 339 deletions(-) + delete mode 100644 linphone-app/cmake/FindBCToolbox.cmake + delete mode 100644 linphone-app/cmake/FindBelcard.cmake + delete mode 100644 linphone-app/cmake/FindISpell.cmake + delete mode 100644 linphone-app/cmake/FindLibLinphone.cmake + delete mode 100644 linphone-app/cmake/FindLinphoneCxx.cmake + delete mode 100644 linphone-app/cmake/FindMediastreamer2.cmake + delete mode 100644 linphone-app/cmake/FindQtKeychain.cmake + +diff --git a/linphone-app/cmake/FindBCToolbox.cmake b/linphone-app/cmake/FindBCToolbox.cmake +deleted file mode 100644 +index 707cc147..00000000 +--- a/linphone-app/cmake/FindBCToolbox.cmake ++++ /dev/null +@@ -1,60 +0,0 @@ +-############################################################################ +-# FindBctoolbox.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +- +-# This module will set the following variables in your project: +-# +-# BCToolbox_FOUND - The bctoolbox library has been found +-# BCToolbox_TARGET - The name of the CMake target for the bctoolbox library +-# BCToolbox_CMAKE_DIR - The bctoolbox CMake directory +-# BCToolbox_CMAKE_UTILS - The path to the bctoolbox CMake utils script +-# BCToolbox_tester_FOUND - The bctoolbox-tester library has been found +-# BCToolbox_tester_TARGET - The name of the CMake target for the bctoolbox-tester library +- +- +-if(NOT TARGET bctoolbox) +- set(EXPORT_PATH ${LINPHONE_OUTPUT_DIR}) +- include(GNUInstallDirs) +- set(BCToolbox_CMAKE_DIR ${EXPORT_PATH}/${CMAKE_INSTALL_DATADIR}/bctoolbox/cmake) +- include(${BCToolbox_CMAKE_DIR}/bctoolboxTargets.cmake) +-endif() +- +-set(_BCToolbox_REQUIRED_VARS BCToolbox_TARGET BCToolbox_CMAKE_DIR BCToolbox_CMAKE_UTILS) +-set(_BCToolbox_CACHE_VARS ${_BCToolbox_REQUIRED_VARS}) +- +-if(TARGET bctoolbox) +- set(BCToolbox_TARGET bctoolbox) +- get_target_property(_BCToolbox_SOURCE_DIR ${BCToolbox_TARGET} SOURCE_DIR) +- set(BCToolbox_CMAKE_DIR "${_BCToolbox_SOURCE_DIR}/../cmake") +- set(BCToolbox_CMAKE_UTILS "${BCToolbox_CMAKE_DIR}/BCToolboxCMakeUtils.cmake") +- if(TARGET bctoolbox-tester) +- set(BCToolbox_tester_FOUND TRUE) +- set(BCToolbox_tester_TARGET bctoolbox-tester) +- list(APPEND _BCToolbox_CACHE_VARS BCToolbox_tester_TARGET) +- endif() +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(BCToolbox +- REQUIRED_VARS ${_BCToolbox_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_BCToolbox_CACHE_VARS}) +diff --git a/linphone-app/cmake/FindBelcard.cmake b/linphone-app/cmake/FindBelcard.cmake +deleted file mode 100644 +index ce89497c..00000000 +--- a/linphone-app/cmake/FindBelcard.cmake ++++ /dev/null +@@ -1,44 +0,0 @@ +-############################################################################ +-# FindBelcard.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# Belcard_FOUND - The liblinphone library has been found +-# Belcard_TARGET - The name of the CMake target +- +-if(NOT TARGET belcard) +- set(EXPORT_PATH ${LINPHONE_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_DATADIR}/Belcard/cmake/BelcardTargets.cmake) +-endif() +- +-set(_Belcard_REQUIRED_VARS Belcard_TARGET) +-set(_Belcard_CACHE_VARS ${_Belcard_REQUIRED_VARS}) +- +-if(TARGET belcard) +- set(Belcard_TARGET belcard) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(Belcard +- REQUIRED_VARS ${_Belcard_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_Belcard_CACHE_VARS}) +diff --git a/linphone-app/cmake/FindISpell.cmake b/linphone-app/cmake/FindISpell.cmake +deleted file mode 100644 +index 7a9269fa..00000000 +--- a/linphone-app/cmake/FindISpell.cmake ++++ /dev/null +@@ -1,47 +0,0 @@ +-############################################################################ +-# FindISpell.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# - Find the ispell include files and library +-# +-# ISpell_FOUND - system has lib ispell +-# ISpell_SOURCE_DIR - the ispell include directory +-# ISpell_BINARY_DIR - the ispell library directory +- +-if(NOT TARGET ${ISPELL_TARGET_NAME}) +- set(EXPORT_PATH ${ISPELL_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_LIBDIR}/cmake/${ISPELL_TARGET_NAME}/${ISPELL_TARGET_NAME}Config.cmake) +-endif() +- +-set(_ISpell_REQUIRED_VARS ISpell_TARGET) +-set(_ISpell_CACHE_VARS ${_ISpell_REQUIRED_VARS}) +- +-if(TARGET ${ISPELL_TARGET_NAME}) +- set(ISpell_TARGET ${ISPELL_TARGET_NAME}) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(ISpell +- REQUIRED_VARS ${_ISpell_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_ISpell_CACHE_VARS}) +diff --git a/linphone-app/cmake/FindLibLinphone.cmake b/linphone-app/cmake/FindLibLinphone.cmake +deleted file mode 100644 +index 826bb0d8..00000000 +--- a/linphone-app/cmake/FindLibLinphone.cmake ++++ /dev/null +@@ -1,46 +0,0 @@ +-############################################################################ +-# FindLinphone.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# LibLinphone_FOUND - The liblinphone library has been found +-# LibLinphone_TARGET - The name of the CMake target for the liblinphone library +-# LibLinphone_PLUGINS_DIR - The directory where to install liblinphone plugins +- +-if(NOT TARGET liblinphone) +- set(EXPORT_PATH ${LINPHONE_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_DATADIR}/linphone/cmake/linphoneTargets.cmake) +-endif() +- +-set(_LibLinphone_REQUIRED_VARS LibLinphone_TARGET LibLinphone_PLUGINS_DIR) +-set(_LibLinphone_CACHE_VARS ${_LibLinphone_REQUIRED_VARS}) +- +-if(TARGET liblinphone) +- set(LibLinphone_TARGET liblinphone) +- get_target_property(LibLinphone_PLUGINS_DIR ${LibLinphone_TARGET} LIBLINPHONE_PLUGINS_DIR) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(LibLinphone +- REQUIRED_VARS ${_LibLinphone_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_LibLinphone_CACHE_VARS}) +diff --git a/linphone-app/cmake/FindLinphoneCxx.cmake b/linphone-app/cmake/FindLinphoneCxx.cmake +deleted file mode 100644 +index 0f81fe20..00000000 +--- a/linphone-app/cmake/FindLinphoneCxx.cmake ++++ /dev/null +@@ -1,45 +0,0 @@ +-############################################################################ +-# FindLinphoneCxx.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# LinphoneCxx_FOUND - The liblinphone library has been found +-# LinphoneCxx_TARGET - The name of the CMake target for the liblinphone library +- +-if(NOT TARGET liblinphone++) +- set(EXPORT_PATH ${LINPHONE_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_DATADIR}/LinphoneCxx/cmake/LinphoneCxxTargets.cmake) +-endif() +- +-set(_LinphoneCxx_REQUIRED_VARS LinphoneCxx_TARGET) +-set(_LinphoneCxx_CACHE_VARS ${_LinphoneCxx_REQUIRED_VARS}) +- +-if(TARGET liblinphone++) +- set(LinphoneCxx_TARGET liblinphone++) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(LinphoneCxx +- REQUIRED_VARS ${_LinphoneCxx_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_LinphoneCxx_CACHE_VARS}) +- +diff --git a/linphone-app/cmake/FindMediastreamer2.cmake b/linphone-app/cmake/FindMediastreamer2.cmake +deleted file mode 100644 +index dc41f187..00000000 +--- a/linphone-app/cmake/FindMediastreamer2.cmake ++++ /dev/null +@@ -1,49 +0,0 @@ +-############################################################################ +-# FindMediastreamer2.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# This module will set the following variables in your project: +-# +-# Mediastreamer2_FOUND - The mediastreamer2 library has been found +-# Mediastreamer2_TARGET - The name of the CMake target for the mediastreamer2 library +-# Mediastreamer2_PLUGINS_DIR - The directory where to install mediastreamer2 plugins +- +-if(NOT TARGET mediastreamer2) +- set(EXPORT_PATH ${LINPHONE_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_DATADIR}/Mediastreamer2/cmake/Mediastreamer2Targets.cmake) +-endif() +- +-set(_Mediastreamer2_REQUIRED_VARS Mediastreamer2_TARGET Mediastreamer2_PLUGINS_DIR) +-set(_Mediastreamer2_CACHE_VARS ${_Mediastreamer2_REQUIRED_VARS}) +- +-if(TARGET mediastreamer2) +- set(Mediastreamer2_TARGET mediastreamer2) +- get_target_property(Mediastreamer2_PLUGINS_DIR ${Mediastreamer2_TARGET} MS2_PLUGINS_DIR) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(Mediastreamer2 +- REQUIRED_VARS ${_Mediastreamer2_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_Mediastreamer2_CACHE_VARS}) +- +diff --git a/linphone-app/cmake/FindQtKeychain.cmake b/linphone-app/cmake/FindQtKeychain.cmake +deleted file mode 100644 +index 9b7911aa..00000000 +--- a/linphone-app/cmake/FindQtKeychain.cmake ++++ /dev/null +@@ -1,48 +0,0 @@ +-############################################################################ +-# FindQtKeychain.cmake +-# Copyright (C) 2023 Belledonne Communications, Grenoble France +-# +-############################################################################ +-# +-# This program is free software; you can redistribute it and/or +-# modify it under the terms of the GNU General Public License +-# as published by the Free Software Foundation; either version 2 +-# of the License, or (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-# +-############################################################################ +-# +-# - Find the linphonecxx include files and library +-# +-# QtKeychain_FOUND - system has lib linphonecxx +-# QtKeychain_INCLUDE_DIRS - the linphonecxx include directory +-# QtKeychain_LIBRARIES - The library needed to use linphonecxx +-if(NOT TARGET ${QTKEYCHAIN_TARGET_NAME}) +- set(EXPORT_PATH ${QTKEYCHAIN_OUTPUT_DIR}) +- include(GNUInstallDirs) +- include(${EXPORT_PATH}/${CMAKE_INSTALL_LIBDIR}/cmake/${QTKEYCHAIN_TARGET_NAME}/${QTKEYCHAIN_TARGET_NAME}Config.cmake) +-endif() +- +-set(_QtKeychain_REQUIRED_VARS QtKeychain_TARGET) +-set(_QtKeychain_CACHE_VARS ${_QtKeychain_REQUIRED_VARS}) +- +-if(TARGET ${QTKEYCHAIN_TARGET_NAME}) +- set(QtKeychain_TARGET ${QTKEYCHAIN_TARGET_NAME}) +- set(QtKeychain_USE_BUILD_INTERFACE TRUE) +-endif() +- +-include(FindPackageHandleStandardArgs) +-find_package_handle_standard_args(QtKeychain +- REQUIRED_VARS ${_QtKeychain_REQUIRED_VARS} +- HANDLE_COMPONENTS +-) +-mark_as_advanced(${_QtKeychain_CACHE_VARS}) +- + +base-commit: d69e033508265f756fb47b39b76b7d589be159c0 +prerequisite-patch-id: 1df5d6e9367036cd8ce918e1f3e3d7b3661f73c2 +-- +2.45.1 + diff --git a/gnu/packages/patches/linphone-desktop-ispell.patch b/gnu/packages/patches/linphone-desktop-ispell.patch new file mode 100644 index 00000000000..679703ec027 --- /dev/null +++ b/gnu/packages/patches/linphone-desktop-ispell.patch @@ -0,0 +1,24 @@ +Retrieved from: https://git.pld-linux.org/?p=packages/linphone.git;a=blob_plain;f=linphone-ispell.patch;h=67bbae61835c7fa813edcc006b5b67901ca42abe;hb=HEAD + +--- linphone-desktop-5.2.2/linphone-app/src/components/other/spell-checker/SpellCheckerLinux.cpp.orig 2024-03-11 18:30:37.000000000 +0100 ++++ linphone-desktop-5.2.2/linphone-app/src/components/other/spell-checker/SpellCheckerLinux.cpp 2024-03-31 18:17:09.041543370 +0200 +@@ -20,7 +20,7 @@ + + + #include "SpellChecker.hpp" +-#include ++#include + #include "app/paths/Paths.hpp" + #include + #include +--- linphone-desktop-5.2.2/linphone-app/cmake_builder/linphone_package/CMakeLists.txt.orig 2024-04-01 08:06:42.275231951 +0200 ++++ linphone-desktop-5.2.2/linphone-app/cmake_builder/linphone_package/CMakeLists.txt 2024-04-01 17:44:16.670826307 +0200 +@@ -338,8 +338,6 @@ else()# Not Windows and Apple + if(ENABLE_APP_WEBVIEW) + install(FILES "${QT_PATH}/plugins/webview/libqtwebview_webengine.so" DESTINATION "plugins/webview") #Workaround : linuxdeploy doesn't deploy it + endif() +-# ISPELL +- install(DIRECTORY "${ISpell_SOURCE_DIR}/ispell_dictionaries" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}" USE_SOURCE_PERMISSIONS) + endif () + + diff --git a/gnu/packages/patches/linphone-desktop-qtkeychain.patch b/gnu/packages/patches/linphone-desktop-qtkeychain.patch new file mode 100644 index 00000000000..b19761672a6 --- /dev/null +++ b/gnu/packages/patches/linphone-desktop-qtkeychain.patch @@ -0,0 +1,36 @@ +Retrieved from https://git.pld-linux.org/?p=packages/linphone.git;a=blob_plain;f=linphone-qtkeychain.patch;hb=HEAD + +--- linphone-desktop-5.2.2/CMakeLists.txt.orig 2024-03-11 18:30:37.000000000 +0100 ++++ linphone-desktop-5.2.2/CMakeLists.txt 2024-03-31 17:21:32.069621299 +0200 +@@ -168,7 +168,7 @@ add_option(OPTION_LIST LIBSECRET_SUPPORT + if(WIN32) + add_cache(OPTION_LIST QTKEYCHAIN_TARGET_NAME "Override Qt5Keychain library name for a workaround with windeployqt" "EQt5Keychain") + else() +- add_cache(OPTION_LIST QTKEYCHAIN_TARGET_NAME "Override Qt5Keychain library name" "Qt5Keychain") ++ add_cache(OPTION_LIST QTKEYCHAIN_TARGET_NAME "Override Qt5Keychain library name" "qt5keychain") + endif() + if(WIN32) + add_option(OPTION_LIST ENABLE_OPENSSL_EXPORT "Enable OpenSSL deployment" YES) +--- linphone-desktop-5.2.2/linphone-app/CMakeLists.txt.orig 2024-03-31 16:15:24.501115462 +0200 ++++ linphone-desktop-5.2.2/linphone-app/CMakeLists.txt 2024-03-31 16:27:54.837050544 +0200 +@@ -118,10 +118,7 @@ set(APP_TARGETS ${LinphoneCxx_TARGET} + #################################### + + if(ENABLE_QT_KEYCHAIN) +- find_package(QtKeychain) +- if(NOT QtKeychain_FOUND) +- find_package(${QTKEYCHAIN_TARGET_NAME} CONFIG REQUIRED) +- endif() ++ find_package(Qt5Keychain) + + add_compile_definitions("ENABLE_QT_KEYCHAIN") + if(QtKeychain_USE_BUILD_INTERFACE) +@@ -197,7 +194,7 @@ if(ENABLE_VIDEO) + endif() + if( ENABLE_QT_KEYCHAIN) + if(NOT QTKEYCHAIN_TARGET_NAME) +- set(QTKEYCHAIN_TARGET_NAME "Qt5Keychain") ++ set(QTKEYCHAIN_TARGET_NAME "qt5keychain") + endif() + list(APPEND APP_TARGETS ${QTKEYCHAIN_TARGET_NAME}) + endif() diff --git a/gnu/packages/patches/linphone-desktop-without-sdk.patch b/gnu/packages/patches/linphone-desktop-without-sdk.patch deleted file mode 100644 index ef61b867075..00000000000 --- a/gnu/packages/patches/linphone-desktop-without-sdk.patch +++ /dev/null @@ -1,214 +0,0 @@ -From cfdf6d1c2051d6a20d0cbb94d81fe398f70dea4d Mon Sep 17 00:00:00 2001 -From: Raghav Gururajan -Date: Sun, 21 Mar 2021 21:13:53 -0400 -Subject: [PATCH] [PATCH]: Fix building from git. - ---- - CMakeLists.txt | 73 +------------------ - linphone-app/CMakeLists.txt | 12 +-- - .../cmake_builder/additional_steps.cmake | 2 +- - .../linphone_package/CMakeLists.txt | 38 ---------- - linphone-app/linphoneqt_version.cmake | 1 + - linphone-app/src/config.h.cmake | 1 + - 6 files changed, 6 insertions(+), 121 deletions(-) - create mode 100644 linphone-app/linphoneqt_version.cmake - -diff -ru a/CMakeLists.txt b/CMakeLists.txt ---- a/CMakeLists.txt 1970-01-01 01:00:01.000000000 +0100 -+++ b/CMakeLists.txt 2023-04-08 16:00:45.487927870 +0200 -@@ -51,23 +51,6 @@ - - set(CMAKE_CXX_STANDARD 11) - --# Prepare gobal CMAKE configuration specific to the current project --set(SDK_BUILD_DIR "${CMAKE_BINARY_DIR}/WORK") # SDK build in WORK. Keep all in it. --set(LINPHONE_OUTPUT_DIR "${CMAKE_BINARY_DIR}/linphone-sdk/desktop") -- --set(APPLICATION_OUTPUT_DIR "${CMAKE_BINARY_DIR}/OUTPUT") -- --set(CMAKE_PREFIX_PATH "${LINPHONE_OUTPUT_DIR};${APPLICATION_OUTPUT_DIR};${APPLICATION_OUTPUT_DIR}/include${PREFIX_PATH}") --if(WIN32) -- set( CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH};${APPLICATION_OUTPUT_DIR}/${CMAKE_INSTALL_BINDIR}") --elseif(APPLE) -- set( CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH};${APPLICATION_NAME}.app/Contents/Frameworks") --else() -- set( CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH};${APPLICATION_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}") --endif() --string(REPLACE ";" "|" PREFIX_PATH "${CMAKE_PREFIX_PATH}") --#set(PREFIX_PATH "${LINPHONE_OUTPUT_DIR}|${APPLICATION_OUTPUT_DIR}${PREFIX_PATH}") -- - # Avoid cmake warning if CMP0071 is not set. - if (POLICY CMP0071) - cmake_policy(SET CMP0071 NEW) -@@ -177,10 +160,8 @@ - endif() - list(APPEND APP_OPTIONS "-DENABLE_RELATIVE_PREFIX=${ENABLE_RELATIVE_PREFIX}") - --list(APPEND APP_OPTIONS "-DLINPHONE_OUTPUT_DIR=${LINPHONE_OUTPUT_DIR}") - list(APPEND APP_OPTIONS "-DENABLE_QT_GL=${ENABLE_VIDEO}")#Activate on video - --include(ExternalProject) - set(PROJECT_BUILD_COMMAND "") - if(CMAKE_BUILD_PARALLEL_LEVEL) - list(APPEND APP_OPTIONS "-DCMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL}") -@@ -195,7 +176,6 @@ - endif() - endif() - if(UNIX AND NOT APPLE) -- set(CMAKE_INSTALL_RPATH "$ORIGIN:$ORIGIN/lib64:$ORIGIN/../lib64:$ORIGIN/lib:$ORIGIN/../lib:${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}") - list(APPEND APP_OPTIONS "-DCMAKE_INSTALL_RPATH=${CMAKE_INSTALL_RPATH}") - elseif(APPLE) - list(APPEND APP_OPTIONS "-DENABLE_FAT_BINARY=ON") #Disable XCFrameworks as it is not supported. -@@ -222,28 +202,9 @@ - - - if(NOT LINPHONE_QT_ONLY) --ExternalProject_Add(sdk PREFIX "${CMAKE_BINARY_DIR}/sdk" -- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-sdk" -- INSTALL_DIR "${LINPHONE_OUTPUT_DIR}" -- STAMP_DIR "${SDK_BUILD_DIR}/stamp" -- BINARY_DIR "${SDK_BUILD_DIR}" -- STEP_TARGETS build -- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} -- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." -- LIST_SEPARATOR | # Use the alternate list separator -- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} -- BUILD_ALWAYS NO #${DO_BUILD} --) --ExternalProject_Add_Step(sdk force_build -- COMMENT "Forcing build for 'desktop'" -- DEPENDEES configure -- DEPENDERS build -- ALWAYS 1 --) - endif() - include(FindPkgConfig) - --set(APP_DEPENDS sdk) - find_package(Qt5 5.10 COMPONENTS Core REQUIRED) - - if ( NOT Qt5_FOUND ) -@@ -257,62 +218,5 @@ - find_package(Mediastreamer2 CONFIG QUIET) - find_package(ortp CONFIG QUIET) - --if(NOT (LinphoneCxx_FOUND) OR NOT (Linphone_FOUND) OR NOT (bctoolbox_FOUND) OR NOT (belcard_FOUND) OR NOT (Mediastreamer2_FOUND) OR NOT (ortp_FOUND) OR FORCE_APP_EXTERNAL_PROJECTS) -- message("Projects are set as External projects. You can start building them by using for example : cmake --build . --target install") -- ExternalProject_Add(linphone-qt PREFIX "${CMAKE_BINARY_DIR}/linphone-app" -- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app" -- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}" -- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app" -- DEPENDS ${APP_DEPENDS} -- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} -- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." -- LIST_SEPARATOR | # Use the alternate list separator -- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} -- # ${APP_OPTIONS} -- BUILD_ALWAYS ON -- ) -- if( ENABLE_BUILD_APP_PLUGINS) -- ExternalProject_Add(app-plugins PREFIX "${CMAKE_BINARY_DIR}/plugins-app" -- SOURCE_DIR "${CMAKE_SOURCE_DIR}/plugins" -- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}" -- BINARY_DIR "${CMAKE_BINARY_DIR}/plugins-app" -- DEPENDS linphone-qt -- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} -- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." -- LIST_SEPARATOR | # Use the alternate list separator -- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} -- ) -- endif() -- install(CODE "message(STATUS Running install)") -- set(AUTO_REGENERATION auto_regeneration) -- if( ENABLE_BUILD_APP_PLUGINS) -- add_custom_target(${AUTO_REGENERATION} ALL -- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} -- DEPENDS app-plugins) -- else() -- add_custom_target(${AUTO_REGENERATION} ALL -- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} -- DEPENDS linphone-qt) -- endif() --else() -- message("Adding Linphone Desktop in an IDE-friendly state") -- set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}") -- add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app) -- if(NOT LINPHONE_QT_ONLY) -- add_dependencies(app-library ${APP_DEPENDS}) -- endif() -- if( ENABLE_BUILD_APP_PLUGINS) -- add_subdirectory(${CMAKE_SOURCE_DIR}/plugins "plugins-app") -- endif() --endif() --ExternalProject_Add(linphone-qt-only PREFIX "${CMAKE_BINARY_DIR}/linphone-app" -- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app" -- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}" -- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app" -- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} --# INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." -- LIST_SEPARATOR | # Use the alternate list separator -- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} -- EXCLUDE_FROM_ALL ON -- #BUILD_ALWAYS ON --) -+message("Adding Linphone Desktop in an IDE-friendly state") -+add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app) -diff -ru a/linphone-app/cmake_builder/additional_steps.cmake ./linphone-app/cmake_builder/additional_steps.cmake ---- a/linphone-app/cmake_builder/additional_steps.cmake 1970-01-01 01:00:01.000000000 +0100 -+++ ./linphone-app/cmake_builder/additional_steps.cmake 2023-04-08 16:02:33.005843116 +0200 -@@ -61,7 +61,7 @@ - SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/linphone_package" - DOWNLOAD_COMMAND "" - CMAKE_GENERATOR ${CMAKE_GENERATOR} -- CMAKE_ARGS ${LINPHONE_BUILDER_EP_ARGS} -DCMAKE_INSTALL_PREFIX=${LINPHONE_BUILDER_WORK_DIR}/PACKAGE -DTOOLS_DIR=${CMAKE_BINARY_DIR}/programs -DLINPHONE_OUTPUT_DIR=${CMAKE_INSTALL_PREFIX} -DLINPHONE_DESKTOP_DIR=${CMAKE_CURRENT_LIST_DIR}/.. -DLINPHONE_SOURCE_DIR=${EP_linphone_SOURCE_DIR} ${ENABLE_VARIABLES} -DLINPHONE_BUILDER_SIGNING_IDENTITY=${LINPHONE_BUILDER_SIGNING_IDENTITY} -+ CMAKE_ARGS ${LINPHONE_BUILDER_EP_ARGS} -DCMAKE_INSTALL_PREFIX=${LINPHONE_BUILDER_WORK_DIR}/PACKAGE -DTOOLS_DIR=${CMAKE_BINARY_DIR}/programs -DLINPHONE_DESKTOP_DIR=${CMAKE_CURRENT_LIST_DIR}/.. -DLINPHONE_SOURCE_DIR=${EP_linphone_SOURCE_DIR} ${ENABLE_VARIABLES} -DLINPHONE_BUILDER_SIGNING_IDENTITY=${LINPHONE_BUILDER_SIGNING_IDENTITY} - ) - endif () - endif () -diff -ru a/linphone-app/CMakeLists.txt ./linphone-app/CMakeLists.txt ---- a/linphone-app/CMakeLists.txt 1970-01-01 01:00:01.000000000 +0100 -+++ ./linphone-app/CMakeLists.txt 2023-04-08 16:01:32.699012115 +0200 -@@ -21,17 +21,8 @@ - ################################################################################ - cmake_minimum_required(VERSION 3.1) - -+include(linphoneqt_version.cmake) - find_package(bctoolbox CONFIG) --set(FULL_VERSION ) --bc_compute_full_version(FULL_VERSION) --set(version_major ) --set(version_minor ) --set(version_patch ) --set(identifiers ) --set(metadata ) --bc_parse_full_version("${FULL_VERSION}" version_major version_minor version_patch identifiers metadata) -- --project(linphoneqt VERSION "${version_major}.${version_minor}.${version_patch}") - - - if(ENABLE_BUILD_VERBOSE) -@@ -51,7 +42,6 @@ - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) - endif() - list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") --list(APPEND CMAKE_MODULE_PATH "${LINPHONE_OUTPUT_DIR}/cmake") - - set(APP_LIBRARY app-library) - set(APP_PLUGIN app-plugin) -diff --git a/linphone-app/linphoneqt_version.cmake b/linphone-app/linphoneqt_version.cmake -new file mode 100644 -index 00000000..a85d3455 ---- /dev/null -+++ b/linphone-app/linphoneqt_version.cmake -@@ -0,0 +1,1 @@ -+project(linphoneqt VERSION ${GUIX-SET-VERSION}) -\ No newline at end of file -diff -ru a/linphone-app/src/config.h.cmake b/linphone-app/src/config.h.cmake ---- a/linphone-app/src/config.h.cmake 1970-01-01 01:00:01.000000000 +0100 -+++ b/linphone-app/src/config.h.cmake 2023-04-08 16:05:33.458349986 +0200 -@@ -32,3 +32,4 @@ - #cmakedefine EXECUTABLE_NAME "${EXECUTABLE_NAME}" - #cmakedefine MSPLUGINS_DIR "${MSPLUGINS_DIR}" - #cmakedefine ENABLE_APP_WEBVIEW "${ENABLE_APP_WEBVIEW}" -+#define LINPHONE_QT_GIT_VERSION "${PROJECT_VERSION}" -\ No newline at end of file