summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch
diff options
context:
space:
mode:
authorHilton Chain <hako@ultrarare.space>2022-09-26 21:33:06 +0800
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2022-09-28 20:22:38 +0200
commit08abd3e56b5787290a914aa86a6023a69a8fca90 (patch)
treee5357adab136f51aebe87e3099f343bf6a8d22fc /gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch
parentc59d3d67fd1c26a19ecc27bc5ed9d15d77575525 (diff)
gnu: telegram-desktop: Update to 4.2.2.
* gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch: New file. * gnu/local.mk (dist_patch_DATA): Add patch. * gnu/packages/telegram.scm (tgcalls-for-telegram-desktop) (codegen-for-telegram-desktop,lib-base-for-telegram-desktop) (lib-crl-for-telegram-desktop,lib-lottie-for-telegram-desktop) (lib-qr-for-telegram-desktop,lib-rpl-for-telegram-desktop) (lib-spellcheck-for-telegram-desktop,lib-storage-for-telegram-desktop) (lib-tl-for-telegram-desktop,lib-ui-for-telegram-desktop) (lib-webrtc-for-telegram-desktop,lib-webview-for-telegram-desktop) (cmake-helpers-for-telegram-desktop): Bump to submodule checkout. (rlottie-for-telegram-desktop): Bump to submodule checkout. [snippet]: Switch off werror. [arguments]: Inherit from rlottie. (telegram-desktop): Update to 4.2.2. [patches]: Add telegram-desktop-allow-disable-libtgvoip.patch. [arguments]<#:configure-flags>: Unbundle rlottie. <#:phases>: Adjusted accordingly. [native-inputs]: Add clang-toolchain. Remove cmake-shared, extra-cmake-modules and qttools-5. [inputs]: Add abseil-cpp-cxxstd17, kcoreaddons, libdispatch, libvpx, wayland, webkitgtk. Remove catch2, kwayland, libdbusmenu-qt, libtgvoip-for-telegram-desktop, libx11, materialdecoration and qt5ct. [propagated-inputs]: Remove dconf. [license]: Adjust accordingly. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch')
-rw-r--r--gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch125
1 files changed, 125 insertions, 0 deletions
diff --git a/gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch b/gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch
new file mode 100644
index 0000000000..3c062cbd9a
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch
@@ -0,0 +1,125 @@
+From 4d1a8351ee82728912fcf7ad0070049b2910c393 Mon Sep 17 00:00:00 2001
+From: Klemens Nanni <klemens@posteo.de>
+Date: Wed, 2 Mar 2022 01:07:48 +0100
+Subject: [PATCH] Introduce TDESKTOP_DISABLE_LEGACY_TGVOIP
+
+Originally from Alt Linux[0], OpenBSD has so far adapted the removal of
+tgvoip in the official net/tdesktop build.
+
+tgcalls provides everything needed for calls; audio/video/desktop
+sharing calls have been working fine across different operating systems
+and telegram desktop/mobile versions without problems.
+
+0: http://www.sisyphus.ru/cgi-bin/srpm.pl/Sisyphus/telegram-desktop/getpatch/1
+---
+ Telegram/CMakeLists.txt | 6 +++---
+ Telegram/SourceFiles/calls/calls_call.cpp | 6 ++++++
+ Telegram/cmake/lib_tgcalls.cmake | 4 ++++
+ Telegram/cmake/telegram_options.cmake | 8 ++++++++
+ 4 files changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt
+index fb2bf370f..5d9578f2d 100644
+--- a/Telegram/CMakeLists.txt
++++ b/Telegram/CMakeLists.txt
+@@ -28,7 +28,9 @@ get_filename_component(res_loc Resources REALPATH)
+ include(cmake/telegram_options.cmake)
+ include(cmake/lib_ffmpeg.cmake)
+ include(cmake/lib_stripe.cmake)
+-include(cmake/lib_tgvoip.cmake)
++if (NOT TDESKTOP_DISABLE_LEGACY_TGVOIP)
++ include(cmake/lib_tgvoip.cmake)
++endif()
+ include(cmake/lib_tgcalls.cmake)
+ include(cmake/td_export.cmake)
+ include(cmake/td_mtproto.cmake)
+@@ -52,9 +54,7 @@ target_prepare_qrc(Telegram)
+
+ target_link_libraries(Telegram
+ PRIVATE
+- tdesktop::lib_tgcalls_legacy
+ tdesktop::lib_tgcalls
+- tdesktop::lib_tgvoip
+
+ # Order in this list defines the order of include paths in command line.
+ # We need to place desktop-app::external_minizip this early to have its
+diff --git a/Telegram/SourceFiles/calls/calls_call.cpp b/Telegram/SourceFiles/calls/calls_call.cpp
+index 6894d5d90..cd03620e7 100644
+--- a/Telegram/SourceFiles/calls/calls_call.cpp
++++ b/Telegram/SourceFiles/calls/calls_call.cpp
+@@ -39,8 +39,10 @@ class InstanceImpl;
+ class InstanceV2Impl;
+ class InstanceV2ReferenceImpl;
+ class InstanceV2_4_0_0Impl;
++#ifndef TDESKTOP_DISABLE_LEGACY_TGVOIP
+ class InstanceImplLegacy;
+ void SetLegacyGlobalServerConfig(const std::string &serverConfig);
++#endif
+ } // namespace tgcalls
+
+ namespace Calls {
+@@ -56,7 +58,9 @@ const auto Register = tgcalls::Register<tgcalls::InstanceImpl>();
+ const auto RegisterV2 = tgcalls::Register<tgcalls::InstanceV2Impl>();
+ const auto RegV2Ref = tgcalls::Register<tgcalls::InstanceV2ReferenceImpl>();
+ const auto RegisterV240 = tgcalls::Register<tgcalls::InstanceV2_4_0_0Impl>();
++#ifndef TDESKTOP_DISABLE_LEGACY_TGVOIP
+ const auto RegisterLegacy = tgcalls::Register<tgcalls::InstanceImplLegacy>();
++#endif
+
+ [[nodiscard]] base::flat_set<int64> CollectEndpointIds(
+ const QVector<MTPPhoneConnection> &list) {
+@@ -1322,7 +1326,9 @@ Call::~Call() {
+ }
+
+ void UpdateConfig(const std::string &data) {
++#ifndef TDESKTOP_DISABLE_LEGACY_TGVOIP
+ tgcalls::SetLegacyGlobalServerConfig(data);
++#endif
+ }
+
+ } // namespace Calls
+diff --git a/Telegram/cmake/lib_tgcalls.cmake b/Telegram/cmake/lib_tgcalls.cmake
+index 34a5ba418..8a784be2c 100644
+--- a/Telegram/cmake/lib_tgcalls.cmake
++++ b/Telegram/cmake/lib_tgcalls.cmake
+@@ -267,6 +267,10 @@ PRIVATE
+ ${tgcalls_loc}
+ )
+
++if (TDESKTOP_DISABLE_LEGACY_TGVOIP)
++ return()
++endif()
++
+ add_library(lib_tgcalls_legacy STATIC)
+ init_target(lib_tgcalls_legacy)
+
+diff --git a/Telegram/cmake/telegram_options.cmake b/Telegram/cmake/telegram_options.cmake
+index 1c3c25431..033f2bc95 100644
+--- a/Telegram/cmake/telegram_options.cmake
++++ b/Telegram/cmake/telegram_options.cmake
+@@ -4,7 +4,9 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+
++option(TDESKTOP_DISABLE_LEGACY_TGVOIP "Disable legacy tgvoip support." OFF)
+ option(TDESKTOP_API_TEST "Use test API credentials." OFF)
++
+ set(TDESKTOP_API_ID "0" CACHE STRING "Provide 'api_id' for the Telegram API access.")
+ set(TDESKTOP_API_HASH "" CACHE STRING "Provide 'api_hash' for the Telegram API access.")
+
+@@ -40,6 +42,12 @@ if (TDESKTOP_API_ID STREQUAL "0" OR TDESKTOP_API_HASH STREQUAL "")
+ " ")
+ endif()
+
++if (TDESKTOP_DISABLE_LEGACY_TGVOIP)
++ target_compile_definitions(Telegram PRIVATE TDESKTOP_DISABLE_LEGACY_TGVOIP)
++else()
++ target_link_libraries(Telegram PRIVATE tdesktop::lib_tgcalls_legacy tdesktop::lib_tgvoip)
++endif()
++
+ if (DESKTOP_APP_DISABLE_SPELLCHECK)
+ target_compile_definitions(Telegram PRIVATE TDESKTOP_DISABLE_SPELLCHECK)
+ else()
+--
+2.37.3
+