tdesktop: 1.7.0 -> 1.7.3

GCC 8.x is required to avoid the following error:

cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess

If we build without "-Wno-error=class-memaccess" the build should fail
and the upstream requirements were raised from GCC 7 to GCC 8 anyway:
b2f821d3de

The two additional patches are required to avoid build errors like this:

/build/source/Telegram/ThirdParty/qtlottie/src/bodymovin/bmbase.cpp:123:12:
error: invalid use of incomplete type 'class QDebug'
   qWarning()
            ^
In file included from
/nix/store/1qk60bhxcf95iicms7mkyjq3h7lz136p-qtbase-5.12.0-dev/include/QtCore/qglobal.h:1200,
                 from
/nix/store/1qk60bhxcf95iicms7mkyjq3h7lz136p-qtbase-5.12.0-dev/include/QtCore/qalgorithms.h:43,
                 from
/nix/store/1qk60bhxcf95iicms7mkyjq3h7lz136p-qtbase-5.12.0-dev/include/QtCore/qlist.h:43,
                 from
/nix/store/1qk60bhxcf95iicms7mkyjq3h7lz136p-qtbase-5.12.0-dev/include/QtCore/QList:1,
                 from
/build/source/Telegram/ThirdParty/qtlottie/src/bodymovin/bmbase.h:31,
                 from
/build/source/Telegram/ThirdParty/qtlottie/src/bodymovin/bmbase.cpp:29:
/nix/store/1qk60bhxcf95iicms7mkyjq3h7lz136p-qtbase-5.12.0-dev/include/QtCore/qlogging.h:57:7:
note: forward declaration of 'class QDebug'
 class QDebug;
       ^~~~~~
This commit is contained in:
Michael Weiss 2019-06-01 14:35:49 +02:00
parent f8d26961de
commit 28556f054f
No known key found for this signature in database
GPG Key ID: 5BE487C4D4771D83
2 changed files with 11 additions and 7 deletions

View File

@ -4,11 +4,11 @@ let
mkTelegram = args: qt5.callPackage (import ./generic.nix args) { };
stableVersion = {
stable = true;
version = "1.7.0";
sha256Hash = "1plfby243hf65wjmppq1qnqmp25pgi4x3awqd4h83ly9hn8qdwfk";
version = "1.7.3";
sha256Hash = "0y0chdfxq75ydx8lz40yfpbx8ycm8vdkl5dvll6glxjq5m21kxf9";
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
archPatchesRevision = "464796";
archPatchesHash = "1bq7r69k3i9p1csdsca0w41jyz6fbyn4qriv3lg7s28j9s803kw8";
archPatchesRevision = "476826";
archPatchesHash = "1vnlvba60hxd5jlh0fvsa50xmb9xgcphdsx6j1ld7f12m7ik68zr";
};
in {
stable = mkTelegram stableVersion;

View File

@ -1,7 +1,7 @@
{ stable, version, sha256Hash, archPatchesRevision, archPatchesHash }:
{ mkDerivation, lib, fetchFromGitHub, fetchsvn
, pkgconfig, pythonPackages, cmake, wrapGAppsHook
, pkgconfig, pythonPackages, cmake, wrapGAppsHook, gcc8
, qtbase, qtimageformats, gtk3, libappindicator-gtk3, libnotify, xdg_utils
, dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
}:
@ -29,7 +29,8 @@ mkDerivation rec {
};
# TODO: libtgvoip.patch no-gtk2.patch
patches = [ "${archPatches}/tdesktop.patch" ];
# TODO: Avoid tdesktop_lottie_animation_qtdebug.patch and tdesktop_qtlottie_qtdebug.patch
patches = [ "${archPatches}/tdesktop.patch" "${archPatches}/tdesktop_lottie_animation_qtdebug.patch" ];
postPatch = ''
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp \
@ -38,7 +39,7 @@ mkDerivation rec {
--replace '"notify"' '"${libnotify}/lib/libnotify.so"'
'';
nativeBuildInputs = [ pkgconfig pythonPackages.gyp cmake wrapGAppsHook ];
nativeBuildInputs = [ pkgconfig pythonPackages.gyp cmake wrapGAppsHook gcc8 ];
# We want to run wrapProgram manually (with additional parameters)
dontWrapGApps = true;
@ -77,6 +78,9 @@ mkDerivation rec {
pushd "Telegram/ThirdParty/libtgvoip"
patch -Np1 -i "${archPatches}/libtgvoip.patch"
popd
pushd "Telegram/ThirdParty/qtlottie"
patch -Np1 -i "${archPatches}/tdesktop_qtlottie_qtdebug.patch"
popd
sed -i Telegram/gyp/telegram_linux.gypi \
-e 's,/usr,/does-not-exist,g' \