Telegram: bump version

This commit is contained in:
Gerasim Troeglazov
2018-05-23 23:50:59 +10:00
parent 0d9611ffc3
commit e441560826
4 changed files with 1547 additions and 1612 deletions

View File

@@ -1,13 +1,13 @@
From ec7bde5fd17969a08b8149785445ecb69b09c729 Mon Sep 17 00:00:00 2001
From 5eb650e32842dd21d764aad9ea8f9977b4b11477 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 15 Sep 2017 22:18:56 +1000
Date: Mon, 21 May 2018 20:18:03 +1000
Subject: Fix opus header path
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusDecoder.h b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusDecoder.h
index 51bbbac..31c8b29 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusDecoder.h
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusDecoder.h
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusDecoder.h b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusDecoder.h
index 1a88ce5..e8389f5 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusDecoder.h
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusDecoder.h
@@ -9,7 +9,11 @@
@@ -20,10 +20,10 @@ index 51bbbac..31c8b29 100644
#include "threading.h"
#include "BlockingQueue.h"
#include "BufferPool.h"
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusEncoder.h b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusEncoder.h
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusEncoder.h b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusEncoder.h
index 9329f89..b2a9305 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusEncoder.h
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/OpusEncoder.h
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusEncoder.h
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/OpusEncoder.h
@@ -9,7 +9,11 @@
@@ -37,20 +37,20 @@ index 9329f89..b2a9305 100644
#include "BlockingQueue.h"
#include "BufferPool.h"
--
2.13.1
2.16.2
From 11ec9121c35bcf4127ff2e982329ba2c354d0259 Mon Sep 17 00:00:00 2001
From 19836869446c2ef6c5883caab8e748801963c952 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 15 Sep 2017 22:22:31 +1000
Date: Mon, 21 May 2018 20:19:19 +1000
Subject: Add haiku
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioInput.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioInput.cpp
index 674b955..6021425 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioInput.cpp
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioInput.cpp
@@ -23,6 +23,8 @@
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioInput.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioInput.cpp
index cc552ab..5b7b8eb 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioInput.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioInput.cpp
@@ -22,6 +22,8 @@
#elif defined(__linux__)
#include "../os/linux/AudioInputALSA.h"
#include "../os/linux/AudioInputPulse.h"
@@ -59,11 +59,11 @@ index 674b955..6021425 100644
#else
#error "Unsupported operating system"
#endif
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioOutput.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioOutput.cpp
index 4f5fdfa..a0409e6 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioOutput.cpp
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/audio/AudioOutput.cpp
@@ -24,6 +24,8 @@
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioOutput.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioOutput.cpp
index a6364bc..0e5516a 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioOutput.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/audio/AudioOutput.cpp
@@ -23,6 +23,8 @@
#elif defined(__linux__)
#include "../os/linux/AudioOutputALSA.h"
#include "../os/linux/AudioOutputPulse.h"
@@ -72,12 +72,12 @@ index 4f5fdfa..a0409e6 100644
#else
#error "Unsupported operating system"
#endif
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/libtgvoip.gyp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/libtgvoip.gyp
index 52fbea1..6a44ab3 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/libtgvoip.gyp
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/libtgvoip.gyp
@@ -81,18 +81,12 @@
'<(tgvoip_src_loc)/os/darwin/AudioOutputAudioUnitOSX.h',
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/libtgvoip.gyp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/libtgvoip.gyp
index 5ff19f6..9523ea3 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/libtgvoip.gyp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/libtgvoip.gyp
@@ -87,18 +87,12 @@
'<(tgvoip_src_loc)/os/darwin/AudioUnitIO.h',
'<(tgvoip_src_loc)/os/darwin/DarwinSpecific.mm',
'<(tgvoip_src_loc)/os/darwin/DarwinSpecific.h',
-
@@ -101,22 +101,23 @@ index 52fbea1..6a44ab3 100644
# POSIX
'<(tgvoip_src_loc)/os/posix/NetworkSocketPosix.cpp',
@@ -253,6 +247,11 @@
@@ -258,6 +252,11 @@
'sources/': [['exclude', '<(tgvoip_src_loc)/os/darwin/']],
},
],
[
+ [
+ '"<(OS)" != "haiku"', {
+ 'sources/': [['exclude', '<(tgvoip_src_loc)/os/haiku/']],
+ },
+ ],
+ [
[
'"<(OS)" != "linux"', {
'sources/': [['exclude', '<(tgvoip_src_loc)/os/linux/']],
},
@@ -371,6 +370,22 @@
@@ -377,6 +376,22 @@
},
},
],
[
+ [
+ '"<(OS)" == "haiku"', {
+ 'defines': [
+ 'WEBRTC_POSIX',
@@ -132,15 +133,103 @@ index 52fbea1..6a44ab3 100644
+ },
+ },
+ ],
+ [
[
'"<(OS)" == "linux"', {
'defines': [
'WEBRTC_POSIX',
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.cpp
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/posix/NetworkSocketPosix.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/posix/NetworkSocketPosix.cpp
index a0ddd5f..f55f054 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/posix/NetworkSocketPosix.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/posix/NetworkSocketPosix.cpp
@@ -40,6 +40,7 @@ NetworkSocketPosix::~NetworkSocketPosix(){
}
void NetworkSocketPosix::SetMaxPriority(){
+#ifndef __HAIKU__
#ifdef __APPLE__
int prio=NET_SERVICE_TYPE_VO;
int res=setsockopt(fd, SOL_SOCKET, SO_NET_SERVICE_TYPE, &prio, sizeof(prio));
@@ -58,6 +59,7 @@ void NetworkSocketPosix::SetMaxPriority(){
LOGE("error setting ip tos: %d / %s", errno, strerror(errno));
}
#endif
+#endif
}
void NetworkSocketPosix::Send(NetworkPacket *packet){
@@ -299,6 +301,10 @@ void NetworkSocketPosix::OnActiveInterfaceChanged(){
}
std::string NetworkSocketPosix::GetLocalInterfaceInfo(IPv4Address *v4addr, IPv6Address *v6addr){
+#ifdef __HAIKU__
+ std::string name="";
+ return name;
+#else
struct ifconf ifc;
struct ifreq* ifr;
char buf[16384];
@@ -348,6 +354,7 @@ std::string NetworkSocketPosix::GetLocalInterfaceInfo(IPv4Address *v4addr, IPv6A
}
close(sd);
return name;
+#endif
}
uint16_t NetworkSocketPosix::GetLocalPort(){
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/threading.h b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/threading.h
index 8a6f438..c45d3fb 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/threading.h
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/threading.h
@@ -7,7 +7,7 @@
#ifndef __THREADING_H
#define __THREADING_H
-#if defined(_POSIX_THREADS) || defined(_POSIX_VERSION) || defined(__unix__) || defined(__unix) || (defined(__APPLE__) && defined(__MACH__))
+#if defined(_POSIX_THREADS) || defined(_POSIX_VERSION) || defined(__unix__) || defined(__unix) || (defined(__APPLE__) && defined(__MACH__)) || defined(__HAIKU__)
#include <pthread.h>
#include <semaphore.h>
@@ -19,7 +19,7 @@ typedef pthread_cond_t tgvoip_lock_t;
#define start_thread(ref, entry, arg) pthread_create(&ref, NULL, entry, arg)
#define join_thread(thread) pthread_join(thread, NULL)
-#ifndef __APPLE__
+#if !defined(__APPLE__) && !defined(__HAIKU__)
#define set_thread_name(thread, name) pthread_setname_np(thread, name)
#else
#define set_thread_name(thread, name)
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
index c9c4e65..9d93596 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
@@ -99,7 +99,12 @@ static void once(void (*func)(void)) {
static pthread_once_t lock = PTHREAD_ONCE_INIT;
pthread_once(&lock, func);
}
-
+#elif defined(__HAIKU__)
+#include <pthread.h>
+static void once(void (*func)(void)) {
+ static pthread_once_t lock = PTHREAD_ONCE_INIT;
+ pthread_once(&lock, func);
+}
#elif defined(_WIN32)
#include <windows.h>
--
2.16.2
From 8a0e51e26e7f6452f5b1d047703dd0acdeb9958c Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 21 May 2018 20:20:19 +1000
Subject: Add haiku audio input/output module
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.cpp
new file mode 100644
index 0000000..0bf2433
--- /dev/null
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.cpp
@@ -0,0 +1,52 @@
+//
+// libtgvoip is free and unencumbered public domain software.
@@ -194,11 +283,11 @@ index 0000000..0bf2433
+
+void AudioInputHaiku::EnumerateDevices(std::vector<AudioInputDevice>& devs){
+}
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.h b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.h
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.h b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.h
new file mode 100644
index 0000000..e268ee5
--- /dev/null
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioInputHaiku.h
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioInputHaiku.h
@@ -0,0 +1,36 @@
+//
+// libtgvoip is free and unencumbered public domain software.
@@ -236,11 +325,11 @@ index 0000000..e268ee5
+}
+
+#endif //LIBTGVOIP_AUDIOINPUTALSA_H
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.cpp
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.cpp
new file mode 100644
index 0000000..c5d88b4
--- /dev/null
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.cpp
@@ -0,0 +1,54 @@
+//
+// libtgvoip is free and unencumbered public domain software.
@@ -296,11 +385,11 @@ index 0000000..c5d88b4
+
+void AudioOutputHaiku::EnumerateDevices(std::vector<AudioOutputDevice>& devs){
+}
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.h b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.h
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.h b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.h
new file mode 100644
index 0000000..759e867
--- /dev/null
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/haiku/AudioOutputHaiku.h
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/os/haiku/AudioOutputHaiku.h
@@ -0,0 +1,36 @@
+//
+// libtgvoip is free and unencumbered public domain software.
@@ -338,100 +427,21 @@ index 0000000..759e867
+}
+
+#endif //LIBTGVOIP_AudioOutputHaiku_H
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/posix/NetworkSocketPosix.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/posix/NetworkSocketPosix.cpp
index 7fa7063..0b90f8a 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/posix/NetworkSocketPosix.cpp
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/os/posix/NetworkSocketPosix.cpp
@@ -39,6 +39,7 @@ NetworkSocketPosix::~NetworkSocketPosix(){
}
void NetworkSocketPosix::SetMaxPriority(){
+#ifndef __HAIKU__
#ifdef __APPLE__
int prio=NET_SERVICE_TYPE_VO;
int res=setsockopt(fd, SOL_SOCKET, SO_NET_SERVICE_TYPE, &prio, sizeof(prio));
@@ -57,6 +58,7 @@ void NetworkSocketPosix::SetMaxPriority(){
LOGE("error setting ip tos: %d / %s", errno, strerror(errno));
}
#endif
+#endif
}
void NetworkSocketPosix::Send(NetworkPacket *packet){
@@ -295,6 +297,10 @@ void NetworkSocketPosix::OnActiveInterfaceChanged(){
}
std::string NetworkSocketPosix::GetLocalInterfaceInfo(IPv4Address *v4addr, IPv6Address *v6addr){
+#ifdef __HAIKU__
+ std::string name="";
+ return name;
+#else
struct ifconf ifc;
struct ifreq* ifr;
char buf[16384];
@@ -344,6 +350,7 @@ std::string NetworkSocketPosix::GetLocalInterfaceInfo(IPv4Address *v4addr, IPv6A
}
close(sd);
return name;
+#endif
}
uint16_t NetworkSocketPosix::GetLocalPort(){
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/threading.h b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/threading.h
index 8a6f438..c45d3fb 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/threading.h
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/threading.h
@@ -7,7 +7,7 @@
#ifndef __THREADING_H
#define __THREADING_H
-#if defined(_POSIX_THREADS) || defined(_POSIX_VERSION) || defined(__unix__) || defined(__unix) || (defined(__APPLE__) && defined(__MACH__))
+#if defined(_POSIX_THREADS) || defined(_POSIX_VERSION) || defined(__unix__) || defined(__unix) || (defined(__APPLE__) && defined(__MACH__)) || defined(__HAIKU__)
#include <pthread.h>
#include <semaphore.h>
@@ -19,7 +19,7 @@ typedef pthread_cond_t tgvoip_lock_t;
#define start_thread(ref, entry, arg) pthread_create(&ref, NULL, entry, arg)
#define join_thread(thread) pthread_join(thread, NULL)
-#ifndef __APPLE__
+#if !defined(__APPLE__) && !defined(__HAIKU__)
#define set_thread_name(thread, name) pthread_setname_np(thread, name)
#else
#define set_thread_name(thread, name)
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
index c9c4e65..9d93596 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/webrtc_dsp/webrtc/common_audio/signal_processing/spl_init.c
@@ -99,7 +99,12 @@ static void once(void (*func)(void)) {
static pthread_once_t lock = PTHREAD_ONCE_INIT;
pthread_once(&lock, func);
}
-
+#elif defined(__HAIKU__)
+#include <pthread.h>
+static void once(void (*func)(void)) {
+ static pthread_once_t lock = PTHREAD_ONCE_INIT;
+ pthread_once(&lock, func);
+}
#elif defined(_WIN32)
#include <windows.h>
--
2.13.1
2.16.2
From 7e861e2b3c0d02e0fabdab46b9e5f88b56585716 Mon Sep 17 00:00:00 2001
From 6eccbdda41ac648e2dcb6efc851e35a78cb86e5f Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 18 Sep 2017 22:05:53 +1000
Date: Mon, 21 May 2018 20:20:37 +1000
Subject: Fix for crash when calls
diff --git a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/VoIPController.cpp b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/VoIPController.cpp
index 78e9e4b..a9c34b7 100644
--- a/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/VoIPController.cpp
+++ b/libtgvoip-757a5d8ec31aadcf387ac3cb135256152c18de1c/VoIPController.cpp
@@ -276,6 +276,7 @@ VoIPController::~VoIPController(){
diff --git a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/VoIPController.cpp b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/VoIPController.cpp
index 2f793f3..7c2b523 100644
--- a/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/VoIPController.cpp
+++ b/libtgvoip-ed3a899bbe26c56dc25e40730ca6d0e95f59717d/VoIPController.cpp
@@ -291,6 +291,7 @@ VoIPController::~VoIPController(){
sendQueue->Put(PendingOutgoingPacket{0});
if(openingTcpSocket)
openingTcpSocket->Close();
@@ -439,7 +449,7 @@ index 78e9e4b..a9c34b7 100644
LOGD("before join sendThread");
join_thread(sendThread);
LOGD("before join recvThread");
@@ -284,6 +285,7 @@ VoIPController::~VoIPController(){
@@ -299,6 +300,7 @@ VoIPController::~VoIPController(){
join_thread(tickThread);
free_mutex(sendBufferMutex);
LOGD("before close socket");
@@ -448,5 +458,5 @@ index 78e9e4b..a9c34b7 100644
delete udpSocket;
if(udpSocket!=realUdpSocket)
--
2.13.1
2.16.2

View File

@@ -0,0 +1,556 @@
diff --git a/Telegram/Resources/qrc/telegram_linux.qrc b/Telegram/Resources/qrc/telegram_linux.qrc
index 0554fa17..3ea02740 100644
--- a/Telegram/Resources/qrc/telegram_linux.qrc
+++ b/Telegram/Resources/qrc/telegram_linux.qrc
@@ -1,5 +1,4 @@
<RCC>
<qresource prefix="/qt">
- <file alias="etc/qt.conf">../etc/qt_linux.conf</file>
</qresource>
</RCC>
diff --git a/Telegram/SourceFiles/core/launcher.cpp b/Telegram/SourceFiles/core/launcher.cpp
index bf21d14d..6b63016e 100644
--- a/Telegram/SourceFiles/core/launcher.cpp
+++ b/Telegram/SourceFiles/core/launcher.cpp
@@ -44,9 +44,10 @@ void Launcher::init() {
QCoreApplication::setApplicationName(qsl("TelegramDesktop"));
-#ifndef OS_MAC_OLD
+#if !defined(Q_OS_MAC) && QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)
+ // Retina display support is working fine, others are not.
QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling, true);
-#endif // OS_MAC_OLD
+#endif // not defined Q_OS_MAC and QT_VERSION >= 5.6.0
initHook();
}
@@ -64,6 +65,13 @@ int Launcher::exec() {
Logs::start(this); // must be started before Platform is started
Platform::start(); // must be started before QApplication is created
+ // I don't know why path is not in QT_PLUGIN_PATH by default
+ QCoreApplication::addLibraryPath("/usr/lib/qt/plugins");
+ // without this Telegram doesn't start on Ubuntu 17.04 due GTK errors
+ setenv("QT_STYLE_OVERRIDE", "qwerty", false);
+ // Telegram doesn't start when extraordinary theme is set, see launchpad.net/bugs/1680943
+ unsetenv("QT_QPA_PLATFORMTHEME");
+
auto result = executeApplication();
DEBUG_LOG(("Telegram finished, result: %1").arg(result));
diff --git a/Telegram/SourceFiles/platform/linux/linux_libs.h b/Telegram/SourceFiles/platform/linux/linux_libs.h
index e9e349be..d82963fa 100644
--- a/Telegram/SourceFiles/platform/linux/linux_libs.h
+++ b/Telegram/SourceFiles/platform/linux/linux_libs.h
@@ -30,7 +30,7 @@ extern "C" {
} // extern "C"
#ifndef TDESKTOP_DISABLE_UNITY_INTEGRATION
-#include <unity/unity/unity.h>
+typedef void UnityLauncherEntry;
#endif // !TDESKTOP_DISABLE_UNITY_INTEGRATION
#endif // !TDESKTOP_DISABLE_GTK_INTEGRATION
diff --git a/Telegram/SourceFiles/qt_functions.cpp b/Telegram/SourceFiles/qt_functions.cpp
new file mode 100644
index 00000000..4a722b8d
--- /dev/null
+++ b/Telegram/SourceFiles/qt_functions.cpp
@@ -0,0 +1,94 @@
+/****************************************************************************
+**
+** 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$
+**
+****************************************************************************/
+
+/* 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;
+}
diff --git a/Telegram/SourceFiles/qt_static_plugins.cpp b/Telegram/SourceFiles/qt_static_plugins.cpp
index b975c7a8..f2f876b3 100644
--- a/Telegram/SourceFiles/qt_static_plugins.cpp
+++ b/Telegram/SourceFiles/qt_static_plugins.cpp
@@ -28,13 +28,4 @@ Q_IMPORT_PLUGIN(QWebpPlugin)
Q_IMPORT_PLUGIN(QCocoaIntegrationPlugin)
Q_IMPORT_PLUGIN(QGenericEnginePlugin)
#elif defined Q_OS_LINUX // Q_OS_WIN | Q_OS_MAC
-Q_IMPORT_PLUGIN(QWebpPlugin)
-Q_IMPORT_PLUGIN(QXcbIntegrationPlugin)
-Q_IMPORT_PLUGIN(QConnmanEnginePlugin)
-Q_IMPORT_PLUGIN(QGenericEnginePlugin)
-Q_IMPORT_PLUGIN(QNetworkManagerEnginePlugin)
-Q_IMPORT_PLUGIN(QComposePlatformInputContextPlugin)
-Q_IMPORT_PLUGIN(QIbusPlatformInputContextPlugin)
-Q_IMPORT_PLUGIN(QFcitxPlatformInputContextPlugin)
-Q_IMPORT_PLUGIN(QHimePlatformInputContextPlugin)
#endif // Q_OS_WIN | Q_OS_MAC | Q_OS_LINUX
diff --git a/Telegram/SourceFiles/ui/text/text.cpp b/Telegram/SourceFiles/ui/text/text.cpp
index 7d34a19b..a4b3d31a 100644
--- a/Telegram/SourceFiles/ui/text/text.cpp
+++ b/Telegram/SourceFiles/ui/text/text.cpp
@@ -1707,11 +1707,11 @@ private:
if (item == -1)
return;
-#ifdef OS_MAC_OLD
+#if defined(OS_MAC_OLD) || QT_VERSION < QT_VERSION_CHECK(5, 6, 0)
auto end = _e->findItem(line.from + line.length - 1);
-#else // OS_MAC_OLD
+#else
auto end = _e->findItem(line.from + line.length - 1, item);
-#endif // OS_MAC_OLD
+#endif
auto blockIndex = _lineStartBlock;
auto currentBlock = _t->_blocks[blockIndex].get();
diff --git a/Telegram/SourceFiles/ui/text/text_block.cpp b/Telegram/SourceFiles/ui/text/text_block.cpp
index a10b5393..4e1eb62d 100644
--- a/Telegram/SourceFiles/ui/text/text_block.cpp
+++ b/Telegram/SourceFiles/ui/text/text_block.cpp
@@ -333,6 +333,9 @@ TextBlock::TextBlock(const style::font &font, const QString &str, QFixed minResi
QStackTextEngine engine(part, blockFont->f);
BlockParser parser(&engine, this, minResizeWidth, _from, part);
+ QTextLayout layout(part, blockFont->f);
+ layout.beginLayout();
+ layout.createLine();
CrashReports::ClearAnnotationRef("CrashString");
}
diff --git a/Telegram/SourceFiles/ui/twidget.cpp b/Telegram/SourceFiles/ui/twidget.cpp
index dacb848a..f64c9b66 100644
--- a/Telegram/SourceFiles/ui/twidget.cpp
+++ b/Telegram/SourceFiles/ui/twidget.cpp
@@ -248,9 +248,9 @@ void sendSynteticMouseEvent(QWidget *widget, QEvent::Type type, Qt::MouseButton
, button
, QGuiApplication::mouseButtons() | button
, QGuiApplication::keyboardModifiers()
-#ifndef OS_MAC_OLD
+#if !defined(OS_MAC_OLD) && QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)
, Qt::MouseEventSynthesizedByApplication
-#endif // OS_MAC_OLD
+#endif
);
ev.setTimestamp(getms());
QGuiApplication::sendEvent(windowHandle, &ev);
diff --git a/Telegram/gyp/PrecompiledHeader.cmake b/Telegram/gyp/PrecompiledHeader.cmake
index 5d6830e9..c3f08d3f 100644
--- a/Telegram/gyp/PrecompiledHeader.cmake
+++ b/Telegram/gyp/PrecompiledHeader.cmake
@@ -112,7 +112,7 @@ function(add_precompiled_header _target _input)
set(_compiler_FLAGS "@${_pch_c_flags_file}")
add_custom_command(
OUTPUT "${_output_c}"
- COMMAND "${CMAKE_C_COMPILER}" ${_compiler_FLAGS} -x c-header -o "${_output_c}" -c "${_pchfile}"
+ COMMAND "${CMAKE_C_COMPILER}" "$(C_DEFINES)" "$(C_INCLUDES)" "$(C_FLAGS)" -x c-header -o "${_output_c}" -c "${_pchfile}"
DEPENDS "${_pchfile}" "${_pch_c_flags_file}"
IMPLICIT_DEPENDS C "${_pch_header}"
COMMENT "Precompiling ${_name} for ${_target} (C)")
@@ -123,7 +123,7 @@ function(add_precompiled_header _target _input)
set(_compiler_FLAGS "@${_pch_cpp_flags_file}")
add_custom_command(
OUTPUT "${_output_cxx}"
- COMMAND "${CMAKE_CXX_COMPILER}" ${_compiler_FLAGS} -x c++-header -o "${_output_cxx}" -c "${_pchfile}"
+ COMMAND "${CMAKE_CXX_COMPILER}" "$(CXX_DEFINES)" "$(CXX_INCLUDES)" "$(CXX_FLAGS)" -x c++-header -o "${_output_cxx}" -c "${_pchfile}"
DEPENDS "${_pchfile}" "${_pch_cpp_flags_file}"
IMPLICIT_DEPENDS CXX "${_pch_header}"
COMMENT "Precompiling ${_name} for ${_target} (C++)")
diff --git a/Telegram/gyp/Telegram.gyp b/Telegram/gyp/Telegram.gyp
index 84a06153..fd7ca47f 100644
--- a/Telegram/gyp/Telegram.gyp
+++ b/Telegram/gyp/Telegram.gyp
@@ -82,13 +82,11 @@
'codegen.gyp:codegen_numbers',
'codegen.gyp:codegen_style',
'tests/tests.gyp:tests',
- 'utils.gyp:Updater',
'../ThirdParty/libtgvoip/libtgvoip.gyp:libtgvoip',
'crl.gyp:crl',
],
'defines': [
- 'AL_LIBTYPE_STATIC',
'AL_ALEXT_PROTOTYPES',
'TGVOIP_USE_CXX11_LIB',
'<!@(python -c "for s in \'<(build_defines)\'.split(\',\'): print(s)")',
@@ -97,15 +95,7 @@
'include_dirs': [
'<(src_loc)',
'<(SHARED_INTERMEDIATE_DIR)',
- '<(libs_loc)/breakpad/src',
- '<(libs_loc)/lzma/C',
- '<(libs_loc)/zlib',
- '<(libs_loc)/ffmpeg',
- '<(libs_loc)/openal-soft/include',
- '<(libs_loc)/opus/include',
- '<(libs_loc)/range-v3/include',
- '<(minizip_loc)',
- '<(sp_media_key_tap_loc)',
+ '/usr/include/minizip',
'<(emoji_suggestions_loc)',
'<(submodules_loc)/GSL/include',
'<(submodules_loc)/variant/include',
diff --git a/Telegram/gyp/qt.gypi b/Telegram/gyp/qt.gypi
index dea127a3..62c95e68 100644
--- a/Telegram/gyp/qt.gypi
+++ b/Telegram/gyp/qt.gypi
@@ -27,25 +27,21 @@
[ 'build_macold', {
'qt_version%': '5.3.2',
}, {
- 'qt_version%': '5.6.2',
+ 'qt_version%': '<!(echo /usr/include/qt/QtCore/*/ | grep -Po "\d+\.\d+\.\d+")',
}]
],
},
'qt_libs': [
- 'qwebp',
- 'Qt5PrintSupport',
- 'Qt5PlatformSupport',
'Qt5Network',
'Qt5Widgets',
'Qt5Gui',
- 'qtharfbuzzng',
],
'qt_version%': '<(qt_version)',
'conditions': [
[ 'build_macold', {
'linux_path_qt%': '/usr/local/macold/Qt-<(qt_version)',
}, {
- 'linux_path_qt%': '/usr/local/tdesktop/Qt-<(qt_version)',
+ 'linux_path_qt%': '/usr/lib/qt',
}]
]
},
@@ -85,32 +81,13 @@
],
}],
[ 'build_linux', {
- 'qt_lib_prefix': 'lib',
- 'qt_lib_debug_postfix': '.a',
- 'qt_lib_release_postfix': '.a',
+ 'qt_lib_prefix': '',
+ 'qt_lib_debug_postfix': '',
+ 'qt_lib_release_postfix': '',
'qt_libs': [
- 'qxcb',
- 'Qt5XcbQpa',
- 'qconnmanbearer',
- 'qgenericbearer',
- 'qnmbearer',
'<@(qt_libs)',
'Qt5DBus',
'Qt5Core',
- 'qtpcre',
- 'Xi',
- 'Xext',
- 'Xfixes',
- 'SM',
- 'ICE',
- 'fontconfig',
- 'expat',
- 'freetype',
- 'z',
- 'xcb-shm',
- 'xcb-xfixes',
- 'xcb-render',
- 'xcb-static',
],
}],
],
@@ -140,11 +117,6 @@
# '<!@(python <(DEPTH)/list_sources.py [sources] <(qt_moc_list_sources_arg))'
# where [sources] contains all your source files
'qt_moc_list_sources_arg': '--moc-prefix SHARED_INTERMEDIATE_DIR/<(_target_name)/moc/moc_',
-
- 'linux_path_xkbcommon%': '/usr/local',
- 'linux_lib_ssl%': '/usr/local/ssl/lib/libssl.a',
- 'linux_lib_crypto%': '/usr/local/ssl/lib/libcrypto.a',
- 'linux_lib_icu%': 'libicutu.a libicui18n.a libicuuc.a libicudata.a',
},
'configurations': {
@@ -193,14 +165,14 @@
},
'include_dirs': [
- '<(qt_loc)/include',
- '<(qt_loc)/include/QtCore',
- '<(qt_loc)/include/QtGui',
- '<(qt_loc)/include/QtDBus',
- '<(qt_loc)/include/QtCore/<(qt_version)',
- '<(qt_loc)/include/QtGui/<(qt_version)',
- '<(qt_loc)/include/QtCore/<(qt_version)/QtCore',
- '<(qt_loc)/include/QtGui/<(qt_version)/QtGui',
+ '/usr/include/qt',
+ '/usr/include/qt/QtCore',
+ '/usr/include/qt/QtGui',
+ '/usr/include/qt/QtDBus',
+ '/usr/include/qt/QtCore/<(qt_version)',
+ '/usr/include/qt/QtGui/<(qt_version)',
+ '/usr/include/qt/QtCore/<(qt_version)/QtCore',
+ '/usr/include/qt/QtGui/<(qt_version)/QtGui',
],
'library_dirs': [
'<(qt_loc)/lib',
@@ -225,17 +197,10 @@
],
'libraries': [
'<(PRODUCT_DIR)/obj.target/liblinux_glibc_wraps.a',
- '<(linux_path_xkbcommon)/lib/libxkbcommon.a',
'<@(qt_libs_release)',
- '<(linux_lib_ssl)',
- '<(linux_lib_crypto)',
- '<!@(python -c "for s in \'<(linux_lib_icu)\'.split(\' \'): print(s)")',
- '-lxcb',
+ '-lcrypto',
'-lX11',
- '-lX11-xcb',
- '-ldbus-1',
'-ldl',
- '-lgthread-2.0',
'-lglib-2.0',
'-lpthread',
],
@@ -243,7 +208,6 @@
'<(qt_loc)/mkspecs/linux-g++',
],
'ldflags': [
- '-static-libstdc++',
'-pthread',
'-rdynamic',
],
diff --git a/Telegram/gyp/qt_moc.gypi b/Telegram/gyp/qt_moc.gypi
index fae668dc..99e184a3 100644
--- a/Telegram/gyp/qt_moc.gypi
+++ b/Telegram/gyp/qt_moc.gypi
@@ -25,7 +25,7 @@
'<(SHARED_INTERMEDIATE_DIR)/<(_target_name)/moc/moc_<(RULE_INPUT_ROOT).cpp',
],
'action': [
- '<(qt_loc)/bin/moc<(exe_ext)',
+ '/usr/bin/moc',
# Silence "Note: No relevant classes found. No output generated."
'--no-notes',
diff --git a/Telegram/gyp/qt_rcc.gypi b/Telegram/gyp/qt_rcc.gypi
index eebc6967..19a346fe 100644
--- a/Telegram/gyp/qt_rcc.gypi
+++ b/Telegram/gyp/qt_rcc.gypi
@@ -28,7 +28,7 @@
'<(SHARED_INTERMEDIATE_DIR)/<(_target_name)/qrc/qrc_<(RULE_INPUT_ROOT).cpp',
],
'action': [
- '<(qt_loc)/bin/rcc<(exe_ext)',
+ '/usr/bin/rcc',
'-name', '<(RULE_INPUT_ROOT)',
'-no-compress',
'<(RULE_INPUT_PATH)',
diff --git a/Telegram/gyp/settings_linux.gypi b/Telegram/gyp/settings_linux.gypi
index b93bace4..0fcdfd56 100644
--- a/Telegram/gyp/settings_linux.gypi
+++ b/Telegram/gyp/settings_linux.gypi
@@ -24,7 +24,6 @@
'linux_common_flags': [
'-pipe',
'-Wall',
- '-Werror',
'-W',
'-fPIC',
'-Wno-unused-variable',
@@ -60,7 +59,6 @@
],
'defines': [
'_REENTRANT',
- 'QT_STATICPLUGIN',
'QT_PLUGIN',
],
'cflags_c': [
diff --git a/Telegram/gyp/telegram_linux.gypi b/Telegram/gyp/telegram_linux.gypi
index f6918c22..50f0d8c7 100644
--- a/Telegram/gyp/telegram_linux.gypi
+++ b/Telegram/gyp/telegram_linux.gypi
@@ -33,10 +33,11 @@
'linux_path_va%': '/usr/local',
'linux_path_vdpau%': '/usr/local',
'linux_path_breakpad%': '/usr/local',
- 'linux_path_opus_include%': '<(libs_loc)/opus/include',
+ 'linux_path_opus_include%': '/usr/include/opus',
'linux_path_range%': '/usr/local',
},
'include_dirs': [
+ '/usr/include/openssl',
'/usr/local/include',
'<(linux_path_ffmpeg)/include',
'<(linux_path_openal)/include',
@@ -45,6 +46,7 @@
'<(linux_path_range)/include',
],
'library_dirs': [
+ '/usr/lib/openssl',
'/usr/local/lib',
'<(linux_path_ffmpeg)/lib',
'<(linux_path_openal)/lib',
@@ -53,25 +55,15 @@
'<(linux_path_breakpad)/lib',
],
'libraries': [
- 'breakpad_client',
- 'composeplatforminputcontextplugin',
- 'ibusplatforminputcontextplugin',
- 'fcitxplatforminputcontextplugin',
- 'himeplatforminputcontextplugin',
- 'liblzma.a',
- 'libopenal.a',
- 'libavformat.a',
- 'libavcodec.a',
- 'libswresample.a',
- 'libswscale.a',
- 'libavutil.a',
- 'libopus.a',
- 'libva-x11.a',
- 'libva-drm.a',
- 'libva.a',
- 'libvdpau.a',
- 'libdrm.a',
- 'libz.a',
+ 'openal',
+ 'avformat',
+ 'avcodec',
+ 'swresample',
+ 'swscale',
+ 'avutil',
+ 'minizip',
+ 'opus',
+ 'z',
# '<!(pkg-config 2> /dev/null --libs <@(pkgconfig_libs))',
],
'cflags_cc': [
@@ -99,7 +91,7 @@
},
},
'conditions': [
- [ '"<!(uname -p)" == "x86_64"', {
+ [ '"<!(uname -m)" == "x86_64"', {
# 32 bit version can't be linked with debug info or LTO,
# virtual memory exhausted :(
'cflags_c': [ '-g' ],
@@ -118,10 +110,8 @@
],
}], ['not_need_gtk!="True"', {
'cflags_cc': [
- '<!(pkg-config 2> /dev/null --cflags appindicator-0.1)',
- '<!(pkg-config 2> /dev/null --cflags gtk+-2.0)',
- '<!(pkg-config 2> /dev/null --cflags glib-2.0)',
- '<!(pkg-config 2> /dev/null --cflags dee-1.0)',
+ '<!(pkg-config 2> /dev/null --cflags appindicator3-0.1)',
+ '<!(pkg-config 2> /dev/null --cflags gtk+-3.0)',
],
}]
],
diff --git a/Telegram/gyp/telegram_sources.txt b/Telegram/gyp/telegram_sources.txt
index 5d2f627e..defd475d 100644
--- a/Telegram/gyp/telegram_sources.txt
+++ b/Telegram/gyp/telegram_sources.txt
@@ -713,14 +713,7 @@
<(emoji_suggestions_loc)/emoji_suggestions.cpp
<(emoji_suggestions_loc)/emoji_suggestions.h
-platforms: !win
-<(minizip_loc)/crypt.h
-<(minizip_loc)/ioapi.c
-<(minizip_loc)/ioapi.h
-<(minizip_loc)/zip.c
-<(minizip_loc)/zip.h
-<(minizip_loc)/unzip.c
-<(minizip_loc)/unzip.h
+<(src_loc)/qt_functions.cpp
platforms: mac
<(sp_media_key_tap_loc)/SPMediaKeyTap.m

View File

@@ -1,28 +1,47 @@
SUMMARY="Telegram Desktop Messenger"
DESCRIPTION="Official desktop version of Telegram messaging app."
HOMEPAGE="https://www.telegram.org/"
COPYRIGHT="2013-2017 Telegram"
COPYRIGHT="2013-2018 Telegram"
LICENSE="GNU GPL v3"
REVISION="14"
REVISION="1"
SOURCE_URI="https://github.com/telegramdesktop/tdesktop/archive/v$portVersion.tar.gz"
SOURCE_DIR="tdesktop-$portVersion"
CHECKSUM_SHA256="56b7fce84adf85a4af1c3174353169f32d0b0c052a4e7a284fc741fa96b04030"
COMMIT_2="757a5d8ec31aadcf387ac3cb135256152c18de1c"
CHECKSUM_SHA256="8baf4287f4f86acb83f199a69ff417c18d18ac56371f5bf8f6c0c27fdcf4e05e"
COMMIT_2="ed3a899bbe26c56dc25e40730ca6d0e95f59717d"
SOURCE_URI_2="https://github.com/telegramdesktop/libtgvoip/archive/$COMMIT_2.zip"
CHECKSUM_SHA256_2="afd82dde02fb43c0e66e462a3da1d9e84ae76aa3e71d37e696c261aa151d3cdd"
CHECKSUM_SHA256_2="d9f5a2b462c0d3a6ae25004cbedf363df0d105b17c54f8e00351c034d027156b"
COMMIT_3="550ac2f159ca883d360c196149b466955c77a573"
SOURCE_URI_3="https://github.com/mapbox/variant/archive/$COMMIT_3.zip"
CHECKSUM_SHA256_3="3676117c49db1ef1ff2818f6f70713c3a4469f0da8ecb5c98c157499322501fc"
COMMIT_4="c5851a8161938798c5594a66420cb814fea92711"
COMMIT_4="9d65e74400976b3509833f49b16d401600c7317d"
SOURCE_URI_4="https://github.com/Microsoft/GSL/archive/$COMMIT_4.zip"
CHECKSUM_SHA256_4="2fe4befdd1cd69de435797c8c50cd7ce749d140982f2260eead90f31721d2c95"
CHECKSUM_SHA256_4="210a39a9d1f9636843dc8b2b8fac2cfcac7226c79d6748a956f7a27c686202d2"
COMMIT_5="5ca44b68721833ae3731802ed99af67c6f38a53a"
SOURCE_URI_5="https://github.com/philsquared/Catch/archive/$COMMIT_5.zip"
CHECKSUM_SHA256_5="bec93e64dea2dd0c6662a75a81cdd1747a753ccd86025ef436b7d2fac3b408d2"
COMMIT_6="344cbde9ae8d89a6530408d3176d2754ae0ff0e2"
SOURCE_URI_6="https://github.com/telegramdesktop/crl/archive/$COMMIT_6.zip"
CHECKSUM_SHA256_6="3709a6707cfbe2654c2c5ea3edc5c338391d678b0bd44221997b32f19f848140"
COMMIT_7="b10e6803c6fb3ebb1fa5bdc48e6724e0f7476ac9"
SOURCE_URI_7="https://github.com/ericniebler/range-v3/archive/$COMMIT_7.zip"
CHECKSUM_SHA256_7="3b5faa6833eb501a98c8dc9d87f7cc41cf00f116b7faf28e7ce6bbbbc9375a46"
PATCHES="
telegram_desktop-$portVersion-systemqt.patch
telegram_desktop-$portVersion.patchset
"
PATCHES_2="
telegram_desktop-$portVersion-libtgvoip.patchset
"
ADDITIONAL_FILES="telegram_desktop.rdef.in"
PATCHES="telegram_desktop-$portVersion.patchset"
PATCHES_2="telegram_desktop-$portVersion-libtgvoip.patchset"
ARCHITECTURES="!x86_gcc2 x86_64"
SECONDARY_ARCHITECTURES="x86"
@@ -79,27 +98,16 @@ BUILD_PREREQUIRES="
cmd:pkg_config$secondaryArchSuffix
"
PATCH()
{
if [ -n "$secondaryArchSuffix" ]; then
sed -i "s|@HAIKU_HEADERS@|/system/develop/headers/x86|" Telegram/gyp/telegram_haiku.gypi
sed -i "s|@HAIKU_HEADERS@|/system/develop/headers/x86|" Telegram/gyp/qt.gypi
sed -i "s|@HAIKU_LIBS@|/system/develop/lib/x86|" Telegram/gyp/telegram_haiku.gypi
else
sed -i "s|@HAIKU_HEADERS@|/system/develop/headers|" Telegram/gyp/telegram_haiku.gypi
sed -i "s|@HAIKU_HEADERS@|/system/develop/headers|" Telegram/gyp/qt.gypi
sed -i "s|@HAIKU_LIBS@|/system/develop/lib|" Telegram/gyp/telegram_haiku.gypi
fi
}
BUILD()
{
# link submodules
rm -rf Telegram/ThirdParty/{libtgvoip,variant,GSL,Catch}
rm -rf Telegram/ThirdParty/{libtgvoip,variant,GSL,Catch,crl,range}
ln -sfn $sourceDir2/libtgvoip-$COMMIT_2 Telegram/ThirdParty/libtgvoip
ln -sfn $sourceDir3/variant-$COMMIT_3 Telegram/ThirdParty/variant
ln -sfn $sourceDir4/GSL-$COMMIT_4 Telegram/ThirdParty/GSL
ln -sfn $sourceDir5/Catch-$COMMIT_5 Telegram/ThirdParty/Catch
ln -sfn $sourceDir5/Catch2-$COMMIT_5 Telegram/ThirdParty/Catch
ln -sfn $sourceDir6/crl-$COMMIT_6 Telegram/ThirdParty/crl
ln -sfn $sourceDir7/range-v3-$COMMIT_7 Telegram/ThirdParty/range
Telegram/gyp/refresh.sh ; cd out/Release
# multi-job takes too much memory