summaryrefslogtreecommitdiff
path: root/net-im/telegram-desktop/files
diff options
context:
space:
mode:
Diffstat (limited to 'net-im/telegram-desktop/files')
-rw-r--r--net-im/telegram-desktop/files/tdesktop-2.8.11-fix-build-without-pipewire.patch26
-rw-r--r--net-im/telegram-desktop/files/tdesktop-2.9.0-fix-disable-wayland-integration.patch11
-rw-r--r--net-im/telegram-desktop/files/tdesktop-2.9.3-jemalloc-only-telegram.patch31
3 files changed, 57 insertions, 11 deletions
diff --git a/net-im/telegram-desktop/files/tdesktop-2.8.11-fix-build-without-pipewire.patch b/net-im/telegram-desktop/files/tdesktop-2.8.11-fix-build-without-pipewire.patch
new file mode 100644
index 000000000000..ecfc63abeb58
--- /dev/null
+++ b/net-im/telegram-desktop/files/tdesktop-2.8.11-fix-build-without-pipewire.patch
@@ -0,0 +1,26 @@
+Fix build without pipewire
+
+set_allow_pipewire isn't available if WEBRTC_USE_PIPEWIRE isn't set
+
+--- tdesktop-2.8.11-full.orig/Telegram/ThirdParty/tgcalls/tgcalls/desktop_capturer/DesktopCaptureSourceHelper.cpp
++++ tdesktop-2.8.11-full/Telegram/ThirdParty/tgcalls/tgcalls/desktop_capturer/DesktopCaptureSourceHelper.cpp
+@@ -286,7 +286,7 @@
+ options.set_allow_use_magnification_api(false);
+ #elif defined WEBRTC_MAC
+ options.set_allow_iosurface(true);
+-#elif defined WEBRTC_LINUX
++#elif defined WEBRTC_USE_PIPEWIRE
+ options.set_allow_pipewire(true);
+ #endif // WEBRTC_WIN || WEBRTC_MAC
+
+--- tdesktop-2.8.11-full.orig/Telegram/ThirdParty/tgcalls/tgcalls/desktop_capturer/DesktopCaptureSourceManager.cpp
++++ tdesktop-2.8.11-full/Telegram/ThirdParty/tgcalls/tgcalls/desktop_capturer/DesktopCaptureSourceManager.cpp
+@@ -33,7 +33,7 @@
+ result.set_allow_use_magnification_api(false);
+ #elif defined WEBRTC_MAC
+ result.set_allow_iosurface(type == DesktopCaptureType::Screen);
+-#elif defined WEBRTC_LINUX
++#elif defined WEBRTC_USE_PIPEWIRE
+ result.set_allow_pipewire(true);
+ #endif // WEBRTC_WIN || WEBRTC_MAC
+ result.set_detect_updated_region(true);
diff --git a/net-im/telegram-desktop/files/tdesktop-2.9.0-fix-disable-wayland-integration.patch b/net-im/telegram-desktop/files/tdesktop-2.9.0-fix-disable-wayland-integration.patch
deleted file mode 100644
index c76bcc06dfdb..000000000000
--- a/net-im/telegram-desktop/files/tdesktop-2.9.0-fix-disable-wayland-integration.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- tdesktop-2.9.0-full.orig/Telegram/lib_ui/ui/platform/linux/ui_linux_wayland_integration_dummy.cpp
-+++ tdesktop-2.9.0-full/Telegram/lib_ui/ui/platform/linux/ui_linux_wayland_integration_dummy.cpp
-@@ -18,6 +18,8 @@
- WaylandIntegration::WaylandIntegration() {
- }
-
-+WaylandIntegration::~WaylandIntegration() = default;
-+
- WaylandIntegration *WaylandIntegration::Instance() {
- if (!::Platform::IsWayland()) return nullptr;
- static WaylandIntegration instance;
diff --git a/net-im/telegram-desktop/files/tdesktop-2.9.3-jemalloc-only-telegram.patch b/net-im/telegram-desktop/files/tdesktop-2.9.3-jemalloc-only-telegram.patch
new file mode 100644
index 000000000000..f90270fccee3
--- /dev/null
+++ b/net-im/telegram-desktop/files/tdesktop-2.9.3-jemalloc-only-telegram.patch
@@ -0,0 +1,31 @@
+Only link jemalloc for the Telegram binary
+
+Some combination of factors is making the different codegen tools hang when
+jemalloc is linked for those, and they're ran under portage's sandbox. Since
+this is only used during build-time, and jemalloc is merely necessary to
+improve runtime memory use, it's unnecessary to use it for anything else.
+
+--- tdesktop-2.9.3-full.orig/Telegram/CMakeLists.txt
++++ tdesktop-2.9.3-full/Telegram/CMakeLists.txt
+@@ -1264,6 +1264,7 @@
+ PRIVATE
+ desktop-app::external_glibmm
+ desktop-app::external_glib
++ desktop-app::external_jemalloc
+ )
+
+ if (NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
+--- tdesktop-2.9.3-full.orig/cmake/options_linux.cmake
++++ tdesktop-2.9.3-full/cmake/options_linux.cmake
+@@ -45,11 +45,6 @@
+ endif()
+ endif()
+
+-target_link_libraries(common_options
+-INTERFACE
+- desktop-app::external_jemalloc
+-)
+-
+ if (DESKTOP_APP_USE_ALLOCATION_TRACER)
+ target_link_options(common_options
+ INTERFACE