diff options
Diffstat (limited to 'user')
-rw-r--r-- | user/telegram/APKBUILD | 63 | ||||
-rw-r--r-- | user/telegram/endian.patch | 25 | ||||
-rw-r--r-- | user/telegram/headers.patch | 12 | ||||
-rw-r--r-- | user/telegram/ppc.patch | 28 | ||||
-rw-r--r-- | user/telegram/rlottie.patch | 16 |
5 files changed, 144 insertions, 0 deletions
diff --git a/user/telegram/APKBUILD b/user/telegram/APKBUILD new file mode 100644 index 000000000..1f36cb942 --- /dev/null +++ b/user/telegram/APKBUILD @@ -0,0 +1,63 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=telegram +pkgver=1.9.6 +pkgrel=0 +pkgdesc="Telegram messaging app" +url="https://telegram.org/" +arch="all" +options="!check" # No test suite. +license="GPL-3.0-only WITH OpenSSL-exception" +depends="" +makedepends="cmake enchant-dev ffmpeg-dev lz4-dev minizip-dev openal-soft-dev openssl-dev opus-dev pulseaudio-dev python3 qt5-qtbase-dev range-v3 xxhash-dev xz-dev zlib-dev" +subpackages="" +source="https://github.com/telegramdesktop/tdesktop/releases/download/v1.9.6/tdesktop-$pkgver-full.tar.gz + endian.patch + headers.patch + ppc.patch + " +builddir="$srcdir/tdesktop-$pkgver-full" + +build() { + [ -f "$HOME/telegram_credentials.sh" ] || die "You need to have a Telegram API ID." + + . $HOME/telegram_credentials.sh + + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + # Can't use packaged rlottie, API mismatch. + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON \ + -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF \ + -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF \ + -DTDESKTOP_API_ID="${TELEGRAM_API_ID}" \ + -DTDESKTOP_API_HASH="${TELEGRAM_API_HASH}" \ + -DTDESKTOP_DISABLE_GTK_INTEGRATION=ON \ + -DTDESKTOP_LAUNCHER_BASENAME=telegramdesktop \ + -DTDESKTOP_USE_PACKAGED_TGVOIP=OFF \ + -Ddisable_autoupdate=1 \ + ${CMAKE_CROSSOPTS} \ + . + make +} + +package() { + install -D -m755 "$builddir"/bin/Telegram "$pkgdir"/usr/bin/telegram-desktop + install -D -m644 "$builddir"/lib/xdg/telegramdesktop.desktop "$pkgdir"/usr/share/applications/telegramdesktop.desktop + install -D -m644 "$builddir"/lib/xdg/tg.protocol "$pkgdir"/usr/share/kservices5/tg.protocol + for _icon in 16 32 48 64 128 256 512; do + install -D -m644 "$builddir"/Telegram/Resources/art/icon$_icon.png \ + "$pkgdir"/usr/share/icons/hicolor/${_icon}x${_icon}/apps/telegram.png + done +} + +sha512sums="12446b8c467226b7ebfb96d3e8cdc77fbaeb9de6065e43e2de727564735f3047f2810d20bb12649eaffb41c09d2295a7918d041058ab1f96ba3dcdcf019d857e tdesktop-1.9.6-full.tar.gz +f39b541c915830adf359d864e197f773822f9925817664a596b595ef31b0c2d0d7f073284c45fb1236b61565e2d7959e030783b7a8350399513ff13f9c27aa2a endian.patch +9b9a9b623edcce37339e52e3e306a7106b6289749fca1b2dc7450c299da1a6f8d3f3f12b4973ecfbf3797f75ba88cf7f644adee896b053a683df4e4754d5d057 headers.patch +685142055710f5a499d1f7c72a57c9c979dedce91c078204a6880080473db989e690d1bd1cce916e0a2cebb285741570665b4940ca7a5a36eecdd54eb39e8003 ppc.patch" diff --git a/user/telegram/endian.patch b/user/telegram/endian.patch new file mode 100644 index 000000000..81cfd8859 --- /dev/null +++ b/user/telegram/endian.patch @@ -0,0 +1,25 @@ +From d4c11502175e2a7821dbd92e029a90d54498e3e8 Mon Sep 17 00:00:00 2001 +From: John Zimmermann <johnz@posteo.net> +Date: Thu, 2 Jan 2020 12:57:33 +0100 +Subject: [PATCH] Build on big endian + +--- + Telegram/SourceFiles/config.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git Telegram/SourceFiles/config.h Telegram/SourceFiles/config.h +index fb7b54e4d..6a873fbd7 100644 +--- a/Telegram/SourceFiles/config.h ++++ b/Telegram/SourceFiles/config.h +@@ -177,7 +177,7 @@ constexpr auto ApiHash = "344583e45741c457fe1862106095a5eb"; + #endif // TDESKTOP_API_ID && TDESKTOP_API_HASH + + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +-#error "Only little endian is supported!" ++#warning "Only little endian is supported!" + #endif // Q_BYTE_ORDER == Q_BIG_ENDIAN + + #if (TDESKTOP_ALPHA_VERSION != 0) +-- +2.24.1 + diff --git a/user/telegram/headers.patch b/user/telegram/headers.patch new file mode 100644 index 000000000..dece8ec21 --- /dev/null +++ b/user/telegram/headers.patch @@ -0,0 +1,12 @@ +Should send this one upstream; it would work with glibc as well. + +--- tdesktop-1.9.6-full/Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp.old 2020-01-21 12:16:27.000000000 +0000 ++++ tdesktop-1.9.6-full/Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp 2020-01-22 17:44:42.185530350 +0000 +@@ -6,6 +6,7 @@ + + #include "AudioPulse.h" + #include <dlfcn.h> ++#include <libgen.h> + #include "../../logging.h" + + #define DECLARE_DL_FUNCTION(name) typeof(name)* AudioPulse::_import_##name=NULL diff --git a/user/telegram/ppc.patch b/user/telegram/ppc.patch new file mode 100644 index 000000000..0a09150eb --- /dev/null +++ b/user/telegram/ppc.patch @@ -0,0 +1,28 @@ +From af5f8d19f0fdded987beee4568f02cc8dcbd20f4 Mon Sep 17 00:00:00 2001 +From: John Zimmermann <johnz@posteo.net> +Date: Thu, 2 Jan 2020 12:58:45 +0100 +Subject: [PATCH] PowerPC support + +--- + base/build_config.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git Telegram/lib_base/base/build_config.h Telegram/lib_base/base/build_config.h +index a02c9b0..b3f4860 100644 +--- a/Telegram/lib_base/base/build_config.h ++++ b/Telegram/lib_base/base/build_config.h +@@ -46,9 +46,9 @@ + #define ARCH_CPU_X86_FAMILY 1 + #define ARCH_CPU_X86 1 + #define ARCH_CPU_32_BITS 1 +-#elif defined(__aarch64__) ++#elif defined(__aarch64__) || defined(__powerpc64__) + #define ARCH_CPU_64_BITS 1 +-#elif defined(_M_ARM) || defined(__arm__) ++#elif defined(_M_ARM) || defined(__arm__) || defined(__powerpc__) + #define ARCH_CPU_32_BITS 1 + #else + #error Please add support for your architecture in base/build_config.h +-- +2.24.1 + diff --git a/user/telegram/rlottie.patch b/user/telegram/rlottie.patch new file mode 100644 index 000000000..6bd2ff6c3 --- /dev/null +++ b/user/telegram/rlottie.patch @@ -0,0 +1,16 @@ +No CMake config exists for rlottie; use pkgconf instead. + +--- a/cmake/external/rlottie/CMakeLists.txt 2020-01-17 18:21:17.000000000 +0100 ++++ b/cmake/external/rlottie/CMakeLists.txt 2020-01-18 00:37:40.280438388 +0100 +@@ -8,8 +8,9 @@ + add_library(external_rlottie INTERFACE IMPORTED GLOBAL) + add_library(desktop-app::external_rlottie ALIAS external_rlottie) + +- find_package(rlottie REQUIRED) +- target_link_libraries(external_rlottie INTERFACE rlottie::rlottie) ++ find_package(PkgConfig REQUIRED) ++ pkg_check_modules(RLOTTIE REQUIRED rlottie) ++ target_link_libraries(external_rlottie INTERFACE ${RLOTTIE_LIBRARIES}) + else() + add_library(external_rlottie OBJECT) + add_library(desktop-app::external_rlottie ALIAS external_rlottie) |