Date: Tuesday, January 21, 2020 @ 21:02:55 Author: svenstaro Revision: 553336
Remove unused patches Deleted: telegram-desktop/trunk/0001-Dynamic-linking-system-libs.patch telegram-desktop/trunk/0002-Dynamic-linking-system-qt.patch telegram-desktop/trunk/0004-gtk3.patch ----------------------------------------+ 0001-Dynamic-linking-system-libs.patch | 340 ------------------------------- 0002-Dynamic-linking-system-qt.patch | 165 --------------- 0004-gtk3.patch | 22 -- 3 files changed, 527 deletions(-) Deleted: 0001-Dynamic-linking-system-libs.patch =================================================================== --- 0001-Dynamic-linking-system-libs.patch 2020-01-21 20:49:30 UTC (rev 553335) +++ 0001-Dynamic-linking-system-libs.patch 2020-01-21 21:02:55 UTC (rev 553336) @@ -1,340 +0,0 @@ -From: John Zimmermann <jo...@posteo.net> ---- a/cmake/external/crash_reports/CMakeLists.txt -+++ b/cmake/external/crash_reports/CMakeLists.txt -@@ -7,6 +7,7 @@ - add_library(external_crash_reports INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_crash_reports ALIAS external_crash_reports) - -+if(NOT DESKTOP_APP_DISABLE_CRASH_REPORTS) - if (WIN32 OR LINUX OR build_macstore) - add_subdirectory(breakpad) - target_link_libraries(external_crash_reports -@@ -20,3 +21,4 @@ - desktop-app::external_crashpad - ) - endif() -+endif() ---- a/cmake/external/ffmpeg/CMakeLists.txt -+++ b/cmake/external/ffmpeg/CMakeLists.txt -@@ -7,6 +7,18 @@ - add_library(external_ffmpeg INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_ffmpeg ALIAS external_ffmpeg) - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_package(PkgConfig REQUIRED) -+ pkg_check_modules(FFMPEG REQUIRED libavcodec libavformat libavutil libswresample libswscale) -+ target_link_libraries(external_ffmpeg -+ INTERFACE -+ ${FFMPEG_LIBRARIES} -+ ) -+ target_include_directories(external_ffmpeg SYSTEM -+ INTERFACE -+ ${FFMPEG_INCLUDE_DIRS} -+ ) -+else() - target_include_directories(external_ffmpeg SYSTEM - INTERFACE - ${libs_loc}/ffmpeg -@@ -36,3 +48,4 @@ - Xrender - ) - endif() -+endif() ---- a/cmake/external/openal/CMakeLists.txt -+++ b/cmake/external/openal/CMakeLists.txt -@@ -7,6 +7,21 @@ - add_library(external_openal INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_openal ALIAS external_openal) - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_package(OpenAL REQUIRED) -+ target_include_directories(external_openal SYSTEM -+ INTERFACE -+ ${OPENAL_INCLUDE_DIR} -+ ) -+ target_link_libraries(external_openal -+ INTERFACE -+ ${OPENAL_LIBRARY} -+ ) -+ target_compile_definitions(external_openal -+ INTERFACE -+ AL_ALEXT_PROTOTYPES -+ ) -+else() - if (WIN32) - target_include_directories(external_openal SYSTEM - INTERFACE -@@ -41,3 +56,4 @@ - AL_LIBTYPE_STATIC - AL_ALEXT_PROTOTYPES - ) -+endif() ---- a/cmake/external/openssl/CMakeLists.txt -+++ b/cmake/external/openssl/CMakeLists.txt -@@ -7,7 +7,13 @@ - add_library(external_openssl INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_openssl ALIAS external_openssl) - --if (LINUX) -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_package(OpenSSL REQUIRED) -+ target_include_directories(external_openssl SYSTEM -+ INTERFACE -+ ${OPENSSL_INCLUDE_DIR} -+ ) -+elseif (LINUX) - target_include_directories(external_openssl SYSTEM - INTERFACE - /usr/local/desktop-app/openssl-1.1.1/include -@@ -24,6 +30,13 @@ - ) - endif() - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ target_link_libraries(external_openssl -+ INTERFACE -+ OpenSSL::Crypto -+ OpenSSL::SSL -+ ) -+else() - if (WIN32) - set(openssl_lib_ext lib) - set(openssl_lib_loc ${libs_loc}/openssl_1_1_1/out32$<$<CONFIG:Debug>:.dbg>) -@@ -45,6 +58,7 @@ - ${openssl_lib_loc}/libssl.${openssl_lib_ext} - ${openssl_lib_loc}/libcrypto.${openssl_lib_ext} - ) -+endif() - - if (LINUX) - if (DESKTOP_APP_USE_GLIBC_WRAPS) ---- a/cmake/external/opus/CMakeLists.txt -+++ b/cmake/external/opus/CMakeLists.txt -@@ -7,6 +7,18 @@ - add_library(external_opus INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_opus ALIAS external_opus) - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_package(PkgConfig REQUIRED) -+ pkg_check_modules(OPUS REQUIRED opus) -+ target_include_directories(external_opus SYSTEM -+ INTERFACE -+ ${OPUS_INCLUDE_DIRS} -+ ) -+ target_link_libraries(external_opus -+ INTERFACE -+ ${OPUS_LIBRARIES} -+ ) -+else() - target_include_directories(external_opus SYSTEM - INTERFACE - ${libs_loc}/opus/include -@@ -43,3 +55,4 @@ - opus - ) - endif() -+endif() ---- a/cmake/external/qt/CMakeLists.txt -+++ b/cmake/external/qt/CMakeLists.txt -@@ -15,6 +15,36 @@ - endif() - endif() - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ get_target_property(QTCORE_INCLUDE_DIRS Qt5::Core INTERFACE_INCLUDE_DIRECTORIES) -+ list(GET QTCORE_INCLUDE_DIRS 0 QT_INCLUDE_DIR) -+ -+ foreach(__qt_module IN ITEMS QtCore QtGui) -+ list(APPEND QT_PRIVATE_INCLUDE_DIRS -+ ${QT_INCLUDE_DIR}/${__qt_module}/${Qt5_VERSION} -+ ${QT_INCLUDE_DIR}/${__qt_module}/${Qt5_VERSION}/${__qt_module} -+ ) -+ endforeach() -+ message(STATUS "Using Qt private include directories: ${QT_PRIVATE_INCLUDE_DIRS}") -+ target_include_directories(external_qt SYSTEM -+ INTERFACE -+ ${QT_PRIVATE_INCLUDE_DIRS} -+ ) -+ target_link_libraries(external_qt -+ INTERFACE -+ Qt5::DBus -+ Qt5::Network -+ Qt5::Widgets -+ desktop-app::external_zlib -+ xcb -+ X11 -+ X11-xcb -+ dbus-1 -+ dl -+ glib-2.0 -+ pthread -+ ) -+else() - target_include_directories(external_qt SYSTEM - INTERFACE - ${qt_loc}/include -@@ -215,3 +245,4 @@ - pthread - ) - endif() -+endif() ---- a/cmake/external/qt/package.cmake -+++ b/cmake/external/qt/package.cmake -@@ -4,6 +4,9 @@ - # For license and copyright information please follow this link: - # https://github.com/desktop-app/legal/blob/master/LEGAL - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ -+else() - if (NOT APPLE OR NOT build_osx) - set(qt_version 5.12.5) - else() -@@ -17,6 +20,7 @@ - endif() - - set(Qt5_DIR ${qt_loc}/lib/cmake/Qt5) -+endif() - - find_package(Qt5 COMPONENTS Core Gui Widgets Network REQUIRED) - ---- a/cmake/external/ranges/CMakeLists.txt -+++ b/cmake/external/ranges/CMakeLists.txt -@@ -9,7 +9,7 @@ - - target_include_directories(external_ranges SYSTEM - INTERFACE -- ${libs_loc}/range-v3/include -+ /usr/include - ) - - if (WIN32) -@@ -18,4 +18,4 @@ - /experimental:preprocessor # need for range-v3 see https://github.com/ericniebler/range-v3#supported-compilers - /wd5105 # needed for `/experimental:preprocessor`, suppressing C5105 "macro expansion producing 'defined' has undefined behavior" - ) --endif() -\ No newline at end of file -+endif() ---- a/cmake/external/zlib/CMakeLists.txt -+++ b/cmake/external/zlib/CMakeLists.txt -@@ -7,6 +7,18 @@ - add_library(external_zlib INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_zlib ALIAS external_zlib) - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_package(ZLIB REQUIRED) -+ find_package(PkgConfig REQUIRED) -+ pkg_check_modules(MINIZIP REQUIRED minizip) -+ find_library(minizip_LIBRARY minizip) -+ target_link_libraries(external_zlib INTERFACE ZLIB::ZLIB ${minizip_LIBRARY}) -+ target_include_directories(external_zlib SYSTEM -+ INTERFACE -+ ${ZLIB_INCLUDE_DIR} -+ ${MINIZIP_INCLUDE_DIRS} -+ ) -+else() - if (NOT WIN32) - add_library(external_minizip STATIC) - init_target(external_minizip "(external)") -@@ -49,3 +61,4 @@ - else() - target_link_static_libraries(external_zlib INTERFACE z) - endif() -+endif() ---- a/cmake/init_target.cmake -+++ b/cmake/init_target.cmake -@@ -27,7 +27,7 @@ - endif() - target_link_libraries(${target_name} PUBLIC desktop-app::common_options) - set_target_properties(${target_name} PROPERTIES -- LINK_SEARCH_START_STATIC 1 -+ LINK_SEARCH_START_STATIC 0 - XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_WEAK YES - XCODE_ATTRIBUTE_GCC_INLINES_ARE_PRIVATE_EXTERN YES - XCODE_ATTRIBUTE_GCC_SYMBOLS_PRIVATE_EXTERN YES ---- a/cmake/options_linux.cmake -+++ b/cmake/options_linux.cmake -@@ -25,6 +25,9 @@ - -Wno-stringop-overflow - -Wno-maybe-uninitialized - -Wno-error=class-memaccess -+ -Wno-error=deprecated-copy -+ -Wno-error=deprecated-declarations -+ -Wno-error=redundant-move - ) - target_link_options(common_options - INTERFACE -@@ -33,8 +36,5 @@ - if (build_linux32) - target_compile_options(common_options INTERFACE -g0) - target_link_options(common_options INTERFACE -g0) --else() -- target_compile_options(common_options INTERFACE $<IF:$<CONFIG:Debug>,,-g -flto>) -- target_link_options(common_options INTERFACE $<IF:$<CONFIG:Debug>,,-g -flto -fuse-linker-plugin>) - endif() - ---- a/cmake/variables.cmake -+++ b/cmake/variables.cmake -@@ -10,6 +10,7 @@ - option(DESKTOP_APP_LOTTIE_USE_CACHE "Use caching in lottie animations." ON) - option(DESKTOP_APP_USE_GLIBC_WRAPS "Use wraps for new GLIBC features." OFF) - option(DESKTOP_APP_USE_PACKAGED "Find libraries using CMake instead of exact paths." ON) -+option(DESKTOP_APP_USE_SYSTEM_LIBS "Use system libs where possible." OFF) - - function(report_bad_special_target) - message(FATAL_ERROR "Bad special target '${DESKTOP_APP_SPECIAL_TARGET}'") -@@ -59,8 +60,7 @@ - set(DESKTOP_APP_USE_GLIBC_WRAPS OFF) - else() - set(LINUX 1) -- execute_process(COMMAND uname -m OUTPUT_VARIABLE machine_uname) -- if (NOT ${machine_uname} MATCHES "x86_64" AND NOT ${machine_uname} MATCHES "aarch64") -+ if (CMAKE_SIZEOF_VOID_P EQUAL 4) - set(build_linux32 1) - endif() - if (DESKTOP_APP_SPECIAL_TARGET STREQUAL "linux") ---- a/cmake/external/lz4/CMakeLists.txt -+++ b/cmake/external/lz4/CMakeLists.txt -@@ -4,8 +4,18 @@ - # For license and copyright information please follow this link: - # https://github.com/desktop-app/legal/blob/master/LEGAL - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ add_library(external_lz4 INTERFACE IMPORTED GLOBAL) -+ add_library(desktop-app::external_lz4 ALIAS external_lz4) -+ -+ find_package(PkgConfig REQUIRED) -+ pkg_check_modules(LZ4 REQUIRED liblz4) -+ target_link_libraries(external_lz4 INTERFACE ${LZ4_LIBRARIES}) -+ target_include_directories(external_lz4 SYSTEM INTERFACE ${LZ4_INCLUDE_DIRS}) -+else() - add_library(external_lz4 OBJECT) - add_library(desktop-app::external_lz4 ALIAS external_lz4) -+ - init_target(external_lz4 "(external)") - - set(lz4_loc ${third_party_loc}/lz4/lib) -@@ -27,3 +37,4 @@ - PUBLIC - ${lz4_loc} - ) -+endif() ---- a/cmake/external/xxhash/CMakeLists.txt -+++ b/cmake/external/xxhash/CMakeLists.txt -@@ -7,6 +7,10 @@ - add_library(external_xxhash INTERFACE IMPORTED GLOBAL) - add_library(desktop-app::external_xxhash ALIAS external_xxhash) - -+if(DESKTOP_APP_USE_SYSTEM_LIBS) -+ find_library(xxhash_LIBRARIES xxhash) -+ target_link_libraries(external_xxhash INTERFACE ${xxhash_LIBRARIES}) -+else() - target_include_directories(external_xxhash SYSTEM - INTERFACE - ${third_party_loc}/xxHash -@@ -16,3 +20,4 @@ - INTERFACE - XXH_INLINE_ALL - ) -+endif() Deleted: 0002-Dynamic-linking-system-qt.patch =================================================================== --- 0002-Dynamic-linking-system-qt.patch 2020-01-21 20:49:30 UTC (rev 553335) +++ 0002-Dynamic-linking-system-qt.patch 2020-01-21 21:02:55 UTC (rev 553336) @@ -1,165 +0,0 @@ -From 85ae791a9ebf5a2603f12d2a6e2d75549a01d701 Mon Sep 17 00:00:00 2001 -From: John Zimmermann <jo...@posteo.net> -Date: Thu, 2 Jan 2020 12:38:39 +0100 -Subject: [PATCH] Dynamic linking - ---- - Telegram/CMakeLists.txt | 7 +- - Telegram/SourceFiles/core/launcher.cpp | 8 +++ - Telegram/SourceFiles/qt_functions.cpp | 96 ++++++++++++++++++++++++++ - 3 files changed, 107 insertions(+), 4 deletions(-) - create mode 100644 Telegram/SourceFiles/qt_functions.cpp - ---- a/Telegram/CMakeLists.txt -+++ b/Telegram/CMakeLists.txt -@@ -934,9 +934,9 @@ - mainwidget.h - mainwindow.cpp - mainwindow.h -+ qt_functions.cpp - observer_peer.cpp - observer_peer.h -- qt_static_plugins.cpp - settings.cpp - settings.h - ) -@@ -1104,13 +1104,12 @@ - PRIVATE - TDESKTOP_API_ID=${TDESKTOP_API_ID} - TDESKTOP_API_HASH=${TDESKTOP_API_HASH} -- AL_LIBTYPE_STATIC - AL_ALEXT_PROTOTYPES - ) - --if (${CMAKE_GENERATOR} MATCHES "(Visual Studio|Xcode|Ninja)") -+if ((${CMAKE_GENERATOR} MATCHES "(Visual Studio|Xcode)") OR ((${CMAKE_GENERATOR} MATCHES "(Ninja)") AND (NOT ${DESKTOP_APP_SPECIAL_TARGET} STREQUAL ""))) - set(output_folder ${CMAKE_BINARY_DIR}) --elseif((${CMAKE_GENERATOR} MATCHES "(Unix Makefiles)") AND DESKTOP_APP_SPECIAL_TARGET STREQUAL "") -+elseif((${CMAKE_GENERATOR} MATCHES "(Unix Makefiles|Ninja)") AND DESKTOP_APP_SPECIAL_TARGET STREQUAL "") - set(output_folder ${CMAKE_BINARY_DIR}/bin) - else() - set(output_folder ${CMAKE_BINARY_DIR}/$<IF:$<CONFIG:Debug>,Debug,Release>) ---- /dev/null -+++ b/Telegram/SourceFiles/qt_functions.cpp -@@ -0,0 +1,96 @@ -+/**************************************************************************** -+** -+** Copyright (C) 2015 The Qt Company Ltd. -+** Contact: http://www.qt.io/licensing/ -+** -+** This file contains some parts of the Qt Toolkit. -+** -+** $QT_BEGIN_LICENSE:LGPL21$ -+** Commercial License Usage -+** Licensees holding valid commercial Qt licenses may use this file in -+** accordance with the commercial license agreement provided with the -+** Software or, alternatively, in accordance with the terms contained in -+** a written agreement between you and The Qt Company. For licensing terms -+** and conditions see http://www.qt.io/terms-conditions. For further -+** information use the contact form at http://www.qt.io/contact-us. -+** -+** GNU Lesser General Public License Usage -+** Alternatively, this file may be used under the terms of the GNU Lesser -+** General Public License version 2.1 or version 3 as published by the Free -+** Software Foundation and appearing in the file LICENSE.LGPLv21 and -+** LICENSE.LGPLv3 included in the packaging of this file. Please review the -+** following information to ensure the GNU Lesser General Public License -+** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -+** -+** As a special exception, The Qt Company gives you certain additional -+** rights. These rights are described in The Qt Company LGPL Exception -+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -+** -+** $QT_END_LICENSE$ -+** -+****************************************************************************/ -+ -+#include <private/qfontengine_p.h> -+ -+/* TODO: find a dynamic library with these symbols. */ -+ -+/* Debian maintainer: this function is taken from qfiledialog.cpp */ -+/* -+ Makes a list of filters from ;;-separated text. -+ Used by the mac and windows implementations -+*/ -+QStringList qt_make_filter_list(const QString &filter) -+{ -+ QString f(filter); -+ -+ if (f.isEmpty()) -+ return QStringList(); -+ -+ QString sep(QLatin1String(";;")); -+ int i = f.indexOf(sep, 0); -+ if (i == -1) { -+ if (f.indexOf(QLatin1Char('\n'), 0) != -1) { -+ sep = QLatin1Char('\n'); -+ i = f.indexOf(sep, 0); -+ } -+ } -+ -+ return f.split(sep); -+} -+ -+/* Debian maintainer: this constructor is taken from qtextengine.cpp for TextPainter::drawLine */ -+QTextItemInt::QTextItemInt(const QGlyphLayout &g, QFont *font, const QChar *chars_, int numChars, QFontEngine *fe, const QTextCharFormat &format) -+ : flags(0), justified(false), underlineStyle(QTextCharFormat::NoUnderline), charFormat(format), -+ num_chars(numChars), chars(chars_), logClusters(0), f(font), glyphs(g), fontEngine(fe) -+{ -+} -+ -+/* Debian maintainer: this method is also taken from qtextengine.cpp */ -+// Fix up flags and underlineStyle with given info -+void QTextItemInt::initWithScriptItem(const QScriptItem &si) -+{ -+ // explicitly initialize flags so that initFontAttributes can be called -+ // multiple times on the same TextItem -+ flags = 0; -+ if (si.analysis.bidiLevel %2) -+ flags |= QTextItem::RightToLeft; -+ ascent = si.ascent; -+ descent = si.descent; -+ -+ if (charFormat.hasProperty(QTextFormat::TextUnderlineStyle)) { -+ underlineStyle = charFormat.underlineStyle(); -+ } else if (charFormat.boolProperty(QTextFormat::FontUnderline) -+ || f->d->underline) { -+ underlineStyle = QTextCharFormat::SingleUnderline; -+ } -+ -+ // compat -+ if (underlineStyle == QTextCharFormat::SingleUnderline) -+ flags |= QTextItem::Underline; -+ -+ if (f->d->overline || charFormat.fontOverline()) -+ flags |= QTextItem::Overline; -+ if (f->d->strikeOut || charFormat.fontStrikeOut()) -+ flags |= QTextItem::StrikeOut; -+} ---- a/Telegram/SourceFiles/main.cpp -+++ b/Telegram/SourceFiles/main.cpp -@@ -8,6 +8,13 @@ - #include "core/launcher.h" - - int main(int argc, char *argv[]) { -+ // Telegram doesn't start when platform theme is set, see launchpad.net/bugs/1680943 -+ unsetenv("QT_QPA_PLATFORMTHEME"); -+ // unset QT screen scale related envvars, see bugs.archlinux.org/task/62594 -+ unsetenv("QT_SCREEN_SCALE_FACTORS"); -+ unsetenv("QT_AUTO_SCREEN_SCALE_FACTOR"); -+ unsetenv("QT_SCALE_FACTOR"); -+ unsetenv("QT_DEVICE_PIXEL_RATIO"); - const auto launcher = Core::Launcher::Create(argc, argv); - return launcher ? launcher->exec() : 1; - } ---- a/Telegram/lib_ui/qt_conf/linux.qrc -+++ b/Telegram/lib_ui/qt_conf/linux.qrc -@@ -1,6 +1,5 @@ - <RCC> - <qresource prefix="/qt/etc"> -- <file alias="qt.conf">qt_linux.conf</file> - </qresource> - <qresource prefix="/fc"> - <file>fc-custom.conf</file> Deleted: 0004-gtk3.patch =================================================================== --- 0004-gtk3.patch 2020-01-21 20:49:30 UTC (rev 553335) +++ 0004-gtk3.patch 2020-01-21 21:02:55 UTC (rev 553336) @@ -1,22 +0,0 @@ -From ef30081973681f4f8d261917fa763b00adfbe6e9 Mon Sep 17 00:00:00 2001 -From: John Zimmermann <jo...@posteo.net> -Date: Thu, 2 Jan 2020 13:10:31 +0100 -Subject: [PATCH] gtk3 - ---- - Telegram/CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - ---- a/Telegram/CMakeLists.txt -+++ b/Telegram/CMakeLists.txt -@@ -1018,8 +1018,8 @@ - if (NOT TDESKTOP_DISABLE_GTK_INTEGRATION) - find_package(PkgConfig REQUIRED) - -- pkg_check_modules(GTK2 REQUIRED gtk+-2.0) -- target_include_directories(Telegram PRIVATE ${GTK2_INCLUDE_DIRS}) -+ pkg_check_modules(GTK3 REQUIRED gtk+-3.0) -+ target_include_directories(Telegram PRIVATE ${GTK3_INCLUDE_DIRS}) - target_compile_options(Telegram PRIVATE -Wno-register) - - set(appindicator_packages