tg_owt: bump version

This commit is contained in:
Gerasim Troeglazov
2022-02-02 15:24:14 +10:00
parent 827b025871
commit d4b7d4c962
2 changed files with 97 additions and 80 deletions

View File

@@ -1,14 +1,14 @@
From 86ed5dfae88d6177f8e2b139f06b58f0f43553ec Mon Sep 17 00:00:00 2001
From 97b3ce61414ded808893838668ba30b6d84010a8 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 30 Oct 2021 12:59:21 +1000
Date: Wed, 2 Feb 2022 08:32:54 +1000
Subject: Add Haiku support
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f72b191..2bca8df 100644
index a9246d4..fdd079b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -160,7 +160,7 @@ endif()
@@ -186,7 +186,7 @@ endif()
include(cmake/libwebrtcbuild.cmake)
target_link_libraries(tg_owt PUBLIC tg_owt::libwebrtcbuild)
@@ -17,7 +17,7 @@ index f72b191..2bca8df 100644
link_x11(tg_owt)
link_glib(tg_owt)
endif()
@@ -1495,6 +1495,9 @@ PRIVATE
@@ -1527,6 +1527,9 @@ PRIVATE
modules/video_capture/device_info_impl.cc
modules/video_capture/linux/device_info_linux.cc
modules/video_capture/linux/video_capture_linux.cc
@@ -27,7 +27,7 @@ index f72b191..2bca8df 100644
modules/video_capture/windows/device_info_ds.cc
modules/video_capture/windows/device_info_ds.h
modules/video_capture/windows/help_functions_ds.cc
@@ -2049,6 +2052,7 @@ PRIVATE
@@ -2100,6 +2103,7 @@ PRIVATE
modules/desktop_capture/mouse_cursor.h
modules/desktop_capture/mouse_cursor_monitor.h
modules/desktop_capture/mouse_cursor_monitor_linux.cc
@@ -35,7 +35,7 @@ index f72b191..2bca8df 100644
modules/desktop_capture/mouse_cursor_monitor_mac.mm
modules/desktop_capture/mouse_cursor_monitor_win.cc
modules/desktop_capture/resolution_tracker.cc
@@ -2060,8 +2064,10 @@ PRIVATE
@@ -2111,8 +2115,10 @@ PRIVATE
modules/desktop_capture/screen_capturer_helper.h
modules/desktop_capture/screen_capturer_darwin.mm
modules/desktop_capture/screen_capturer_linux.cc
@@ -46,7 +46,7 @@ index f72b191..2bca8df 100644
modules/desktop_capture/window_capturer_mac.mm
modules/desktop_capture/window_capturer_win.cc
modules/desktop_capture/window_finder.cc
@@ -2076,6 +2082,10 @@ PRIVATE
@@ -2127,6 +2133,10 @@ PRIVATE
modules/desktop_capture/screen_capturer_null.cc
modules/desktop_capture/window_capturer_null.cc
@@ -58,12 +58,12 @@ index f72b191..2bca8df 100644
modules/desktop_capture/linux/base_capturer_pipewire.cc
modules/desktop_capture/linux/base_capturer_pipewire.h
diff --git a/cmake/libusrsctp.cmake b/cmake/libusrsctp.cmake
index 1dc5e5e..e88531c 100644
index 949102a..3c6f359 100644
--- a/cmake/libusrsctp.cmake
+++ b/cmake/libusrsctp.cmake
@@ -31,6 +31,11 @@ elseif (APPLE)
-UINET
-UINET6
@@ -25,6 +25,11 @@ elseif (APPLE)
HAVE_SA_LEN
HAVE_SCONN_LEN
)
+elseif (HAIKU)
+ target_compile_definitions(libusrsctp
@@ -1542,10 +1542,10 @@ index 0000000..7308f0c
+
+#endif // VIDEO_CONSUMER_H
diff --git a/src/rtc_base/BUILD.gn b/src/rtc_base/BUILD.gn
index 65a6f50..0572e10 100644
index 5165a3e..146c787 100644
--- a/src/rtc_base/BUILD.gn
+++ b/src/rtc_base/BUILD.gn
@@ -494,7 +494,7 @@ rtc_source_set("rtc_operations_chain") {
@@ -508,7 +508,7 @@ rtc_source_set("rtc_operations_chain") {
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
}
@@ -1606,10 +1606,10 @@ index a5498c6..3e829bf 100644
static bool IPIsHelper(const IPAddress& ip,
const in6_addr& tomatch,
diff --git a/src/rtc_base/logging.cc b/src/rtc_base/logging.cc
index 321d848..d2fef5e 100644
index 4ebeebe..ce09db9 100644
--- a/src/rtc_base/logging.cc
+++ b/src/rtc_base/logging.cc
@@ -123,7 +123,11 @@ LogMessage::LogMessage(const char* file,
@@ -124,7 +124,11 @@ LogMessage::LogMessage(const char* file,
if (thread_) {
PlatformThreadId id = CurrentThreadId();
@@ -1622,10 +1622,10 @@ index 321d848..d2fef5e 100644
if (file != nullptr) {
diff --git a/src/rtc_base/network.cc b/src/rtc_base/network.cc
index 5725458..aa342f8 100644
index 870f22a..8a6f605 100644
--- a/src/rtc_base/network.cc
+++ b/src/rtc_base/network.cc
@@ -525,7 +525,7 @@ void BasicNetworkManager::ConvertIfAddrs(struct ifaddrs* interfaces,
@@ -564,7 +564,7 @@ void BasicNetworkManager::ConvertIfAddrs(struct ifaddrs* interfaces,
continue;
}
// Skip ones which are down.
@@ -1635,7 +1635,7 @@ index 5725458..aa342f8 100644
}
// Skip unknown family.
diff --git a/src/rtc_base/physical_socket_server.cc b/src/rtc_base/physical_socket_server.cc
index 07adacd..06ca07e 100644
index d89139d..6d1cae3 100644
--- a/src/rtc_base/physical_socket_server.cc
+++ b/src/rtc_base/physical_socket_server.cc
@@ -325,7 +325,7 @@ int PhysicalSocket::SetOption(Option opt, int value) {
@@ -1730,72 +1730,76 @@ index 8aa67f1..5c2b6e1 100644
// There is not yet a way to determine CPU count in emscripten JS environment.
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp.h b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp.h
index 9847624..82409dd 100644
old mode 100755
new mode 100644
index f0dc35a..626ee9f
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp.h
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp.h
@@ -40,7 +40,7 @@ __FBSDID("$FreeBSD: head/sys/netinet/sctp.h 356357 2020-01-04 20:33:12Z tuexen $
@@ -40,7 +40,7 @@ __FBSDID("$FreeBSD: head/sys/netinet/sctp.h 366750 2020-10-16 10:44:48Z tuexen $
#ifndef _NETINET_SCTP_H_
#define _NETINET_SCTP_H_
-#if (defined(__APPLE__) || defined(__Userspace_os_Linux) || defined(__Userspace_os_Darwin))
+#if (defined(__APPLE__) || defined(__Userspace_os_Linux) || defined(__Userspace_os_Darwin) || defined(__Userspace_os_Haiku))
-#if defined(__APPLE__) || defined(__linux__)
+#if defined(__APPLE__) || defined(__linux__) || defined(__HAIKU__)
#include <stdint.h>
#endif
#include <sys/types.h>
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_input.c b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_input.c
index 5afe781..e1d99a7 100644
old mode 100755
new mode 100644
index 517189f..6352509
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_input.c
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_input.c
@@ -6304,7 +6304,7 @@ sctp_input(i_pak, va_alist)
#if defined(__Windows__)
@@ -6349,11 +6349,11 @@ sctp_input_with_port(struct mbuf *i_pak, int off, uint16_t port)
#if defined(_WIN32) && !defined(__Userspace__)
NTOHS(ip->ip_len);
#endif
-#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Windows)
+#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Haiku)
-#if defined(__linux__) || (defined(_WIN32) && defined(__Userspace__))
+#if defined(__linux__) || defined(__HAIKU__) || (defined(_WIN32) && defined(__Userspace__))
ip->ip_len = ntohs(ip->ip_len);
#endif
#if defined(__FreeBSD__)
@@ -6316,7 +6316,7 @@ sctp_input(i_pak, va_alist)
#elif defined(__APPLE__)
length = ip->ip_len + iphlen;
#elif defined(__Userspace__)
-#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Windows)
+#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Haiku)
#if defined(__Userspace__)
-#if defined(__linux__) || defined(_WIN32)
+#if defined(__linux__) || defined(__HAIKU__) || defined(_WIN32)
length = ip->ip_len;
#else
length = ip->ip_len + iphlen;
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_os_userspace.h b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_os_userspace.h
index f09cb8d..c26fad1 100644
old mode 100755
new mode 100644
index 1476660..6bb232e
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_os_userspace.h
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_os_userspace.h
@@ -277,7 +277,7 @@ typedef char* caddr_t;
@@ -283,7 +283,7 @@ typedef char* caddr_t;
#else /* !defined(Userspace_os_Windows) */
#include <sys/socket.h>
-#if defined(__Userspace_os_DragonFly) || defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_OpenBSD) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_Fuchsia)
+#if defined(__Userspace_os_DragonFly) || defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_OpenBSD) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_Fuchsia) || defined(__Userspace_os_Haiku)
-#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__native_client__) || defined(__Fuchsia__) || defined(__EMSCRIPTEN_PTHREADS__)
+#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__linux__) || defined(__HAIKU__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__native_client__) || defined(__Fuchsia__) || defined(__EMSCRIPTEN_PTHREADS__)
#include <pthread.h>
#endif
typedef pthread_mutex_t userland_mutex_t;
@@ -1155,7 +1155,7 @@ sctp_get_mbuf_for_msg(unsigned int space_needed, int want_header, int how, int a
@@ -1132,7 +1132,7 @@ sctp_get_mbuf_for_msg(unsigned int space_needed, int want_header, int how, int a
#define SCTP_IS_LISTENING(inp) ((inp->sctp_flags & SCTP_PCB_FLAGS_ACCEPTING) != 0)
-#if defined(__Userspace_os_Darwin) || defined(__Userspace_os_DragonFly) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Fuchsia)
+#if defined(__Userspace_os_Darwin) || defined(__Userspace_os_DragonFly) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Fuchsia) || defined(__Userspace_os_Haiku)
-#if defined(__APPLE__) || defined(__DragonFly__) || defined(__linux__) || defined(__native_client__) || defined(__NetBSD__) || defined(_WIN32) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
+#if defined(__APPLE__) || defined(__DragonFly__) || defined(__linux__) || defined(__HAIKU__) ||defined(__native_client__) || defined(__NetBSD__) || defined(_WIN32) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
int
timingsafe_bcmp(const void *, const void *, size_t);
#endif
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c
index 28922b6..dba15fd 100644
old mode 100755
new mode 100644
index ba64aaf..b5d8cf1
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c
@@ -94,7 +94,7 @@ sctp_userspace_set_threadname(const char *name)
#endif
}
-#if !defined(_WIN32) && !defined(__Userspace_os_NaCl)
+#if !defined(_WIN32) && !defined(__Userspace_os_NaCl) && !defined(__Userspace_os_Haiku)
-#if !defined(_WIN32) && !defined(__native_client__)
+#if !defined(_WIN32) && !defined(__HAIKU__) && !defined(__native_client__)
int
sctp_userspace_get_mtu_from_ifn(uint32_t if_index, int af)
{
@@ -1803,8 +1807,8 @@ index 28922b6..dba15fd 100644
}
#endif
-#if defined(__Userspace_os_NaCl)
+#if defined(__Userspace_os_NaCl) || defined(__Userspace_os_Haiku)
-#if defined(__native_client__)
+#if defined(__native_client__) || defined(__HAIKU__)
int
sctp_userspace_get_mtu_from_ifn(uint32_t if_index, int af)
{
@@ -1812,61 +1816,78 @@ index 28922b6..dba15fd 100644
}
#endif
-#if defined(__Userspace_os_Darwin) || defined(__Userspace_os_DragonFly) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Fuchsia)
+#if defined(__Userspace_os_Darwin) || defined(__Userspace_os_DragonFly) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NaCl) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_Windows) || defined(__Userspace_os_Fuchsia) || defined(__Userspace_os_Haiku)
-#if defined(__APPLE__) || defined(__DragonFly__) || defined(__linux__) || defined(__native_client__) || defined(__NetBSD__) || defined(_WIN32) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
+#if defined(__APPLE__) || defined(__DragonFly__) || defined(__linux__) || defined(__HAIKU__) || defined(__native_client__) || defined(__NetBSD__) || defined(_WIN32) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
int
timingsafe_bcmp(const void *b1, const void *b2, size_t n)
{
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/user_socket.c b/src/third_party/usrsctp/usrsctplib/usrsctplib/user_socket.c
index 146a6d9..63a6240 100644
old mode 100755
new mode 100644
index 513a5a9..73fd4e2
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/user_socket.c
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/user_socket.c
@@ -50,6 +50,9 @@
#if defined(__Userspace_os_Linux)
#if defined(__linux__)
#define __FAVOR_BSD /* (on Ubuntu at least) enables UDP header field names like BSD in RFC 768 */
#endif
+#if defined(__Userspace_os_Haiku)
+#if defined(__HAIKU__)
+#define UIO_MAXIOV _SC_IOV_MAX
+#endif
#if !defined (__Userspace_os_Windows)
#if !defined(_WIN32)
#if defined INET || defined INET6
#include <netinet/udp.h>
@@ -1068,7 +1071,7 @@ userspace_sctp_recvmsg(struct socket *so,
@@ -1035,7 +1038,7 @@ userspace_sctp_recvmsg(struct socket *so,
if (error) {
if ((auio.uio_resid != ulen) &&
(error == EINTR ||
-#if !defined(__Userspace_os_NetBSD)
+#if !defined(__Userspace_os_NetBSD) && !defined(__Userspace_os_Haiku)
-#if !defined(__NetBSD__)
+#if !defined(__NetBSD__) && !defined(__HAIKU__)
error == ERESTART ||
#endif
error == EWOULDBLOCK)) {
@@ -1161,7 +1164,7 @@ usrsctp_recvv(struct socket *so,
@@ -1128,7 +1131,7 @@ usrsctp_recvv(struct socket *so,
if (errno) {
if ((auio.uio_resid != ulen) &&
(errno == EINTR ||
-#if !defined(__Userspace_os_NetBSD)
+#if !defined(__Userspace_os_NetBSD) && !defined(__Userspace_os_Haiku)
-#if !defined(__NetBSD__)
+#if !defined(__NetBSD__) && !defined(__HAIKU__)
errno == ERESTART ||
#endif
errno == EWOULDBLOCK)) {
@@ -2117,7 +2120,7 @@ int user_connect(struct socket *so, struct sockaddr *sa)
@@ -1944,7 +1947,7 @@ int user_connect(struct socket *so, struct sockaddr *sa)
error = pthread_cond_wait(SOCK_COND(so), SOCK_MTX(so));
#endif
if (error) {
-#if defined(__Userspace_os_NetBSD)
+#if defined(__Userspace_os_NetBSD) || defined(__Userspace_os_Haiku)
-#if defined(__NetBSD__)
+#if defined(__NetBSD__) || defined(__HAIKU__)
if (error == EINTR) {
#else
if (error == EINTR || error == ERESTART) {
@@ -2137,7 +2140,7 @@ bad:
@@ -1964,7 +1967,7 @@ bad:
if (!interrupted) {
so->so_state &= ~SS_ISCONNECTING;
}
-#if !defined(__Userspace_os_NetBSD)
+#if !defined(__Userspace_os_NetBSD) && !defined(__Userspace_os_Haiku)
-#if !defined(__NetBSD__)
+#if !defined(__NetBSD__) && !defined(__HAIKU__)
if (error == ERESTART) {
error = EINTR;
}
diff --git a/src/third_party/usrsctp/usrsctplib/usrsctplib/user_environment.c b/src/third_party/usrsctp/usrsctplib/usrsctplib/user_environment.c
old mode 100755
new mode 100644
index 1887718..2e3409e
--- a/src/third_party/usrsctp/usrsctplib/usrsctplib/user_environment.c
+++ b/src/third_party/usrsctp/usrsctplib/usrsctplib/user_environment.c
@@ -172,7 +172,7 @@ finish_random(void)
{
return;
}
-#elif (defined(__ANDROID__) && (__ANDROID_API__ < 28)) || defined(__EMSCRIPTEN__)
+#elif (defined(__ANDROID__) && (__ANDROID_API__ < 28)) || defined(__EMSCRIPTEN__) || defined(__HAIKU__)
#include <fcntl.h>
static int fd = -1;
--
2.30.2

View File

@@ -1,22 +1,18 @@
SUMMARY="WebRTC build for Telegram"
DESCRIPTION="Telegram Desktop's fork of Google's WebRTC."
HOMEPAGE="https://github.com/desktop-app/tg_owt"
COPYRIGHT="2013-2021 Telegram"
COPYRIGHT="2013-2022 Telegram"
LICENSE="BSD (3-clause)"
REVISION="1"
srcGitRev="6708e0d31a73e64fe12f54829bf4060c41b2658e"
srcGitRev="25c8637f5975db830cc5d74477641a8b609e248d"
SOURCE_URI="https://github.com/desktop-app/tg_owt/archive/$srcGitRev.tar.gz"
SOURCE_DIR="tg_owt-$srcGitRev"
CHECKSUM_SHA256="95b48dd538e53e69d36331270055cb9f81ebde19814561c52322f2b94bd503eb"
CHECKSUM_SHA256="beb9965fc26df034e29d171ac9f6ed936066330692e935f9e662d57e689c6a04"
SOURCE_FILENAME="tg_owt-$srcGitRev.tar.gz"
srcGitRev_2="c56ab7d0c6f3fb215d571db3dacc0cc908c1b53c"
SOURCE_URI_2="https://github.com/webmproject/libvpx/archive/$srcGitRev_2.tar.gz"
CHECKSUM_SHA256_2="f8229ebe087a174c3f4de496be85e5c52403d9e7138ad755111e3fc3415df917"
SOURCE_FILENAME_2="libvpx-$srcGitRev_2.tar.gz"
srcGitRev_3="ad890067f661dc747a975bc55ba3767fe30d4452"
SOURCE_URI_3="https://github.com/lemenkov/libyuv/archive/$srcGitRev_3.tar.gz"
CHECKSUM_SHA256_3="3bd4b9e5cc75cdb1360cae868f7de39d4547448c30e1074d8e94f25bc6931e30"
SOURCE_FILENAME_3="libyuv-$srcGitRev_3.tar.gz"
srcGitRev_2="5b3351bd07e83f9f9a4cb6629561331ecdb7c546"
SOURCE_URI_2="https://github.com/lemenkov/libyuv/archive/$srcGitRev_2.tar.gz"
CHECKSUM_SHA256_2="242e3c42d2c6ff7770d62d78cfb45642541e92dea6afe2ebe07a9a04db3a98cb"
SOURCE_FILENAME_2="libyuv-$srcGitRev_2.tar.gz"
PATCHES="tg_owt-$portVersion.patchset"
@@ -39,6 +35,7 @@ REQUIRES="
lib:libprotobuf$secondaryArchSuffix
lib:libswresample$secondaryArchSuffix
lib:libswscale$secondaryArchSuffix
lib:libvpx$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
@@ -56,6 +53,7 @@ BUILD_REQUIRES="
devel:libssl$secondaryArchSuffix
devel:libswresample$secondaryArchSuffix
devel:libswscale$secondaryArchSuffix
devel:libvpx$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
@@ -72,10 +70,8 @@ BUILD()
{
export DISABLE_ASLR=1
rm -rf $sourceDir/src/third_party/libvpx/source/libvpx
cp -r $sourceDir2/libvpx-$srcGitRev_2 $sourceDir/src/third_party/libvpx/source/libvpx
rm -rf $sourceDir/src/third_party/libyuv
cp -r $sourceDir3/libyuv-$srcGitRev_3 $sourceDir/src/third_party/libyuv
cp -r $sourceDir2/libyuv-$srcGitRev_2 $sourceDir/src/third_party/libyuv
mkdir -p build
cd build