tg_owt: bump version

This commit is contained in:
Gerasim Troeglazov
2023-01-04 11:28:09 +10:00
parent 90c989f94e
commit 01b2b24d1e
2 changed files with 46 additions and 54 deletions

View File

@@ -1,24 +1,24 @@
From dd0d5ecafbb683b04ef211dd803451c312458549 Mon Sep 17 00:00:00 2001
From b3b592414c86952cc7b4bf3a4ccc18f496108c09 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 17 Sep 2022 21:51:10 +1000
Date: Sat, 31 Dec 2022 11:14:56 +1000
Subject: Add Haiku support
diff --git a/CMakeLists.txt b/CMakeLists.txt
index aa0b8a0..1b75490 100644
index a8637a0..26d2796 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1476,6 +1476,9 @@ PRIVATE
modules/video_capture/device_info_impl.cc
modules/video_capture/linux/device_info_linux.cc
@@ -1489,6 +1489,9 @@ PRIVATE
modules/video_capture/linux/video_capture_linux.cc
modules/video_capture/linux/video_capture_v4l2.cc
modules/video_capture/linux/video_capture_v4l2.h
+ modules/video_capture/haiku/device_info_haiku.cc
+ modules/video_capture/haiku/video_capture_haiku.cc
+ modules/video_capture/haiku/video_consumer.cc
modules/video_capture/windows/device_info_ds.cc
modules/video_capture/windows/device_info_ds.h
modules/video_capture/windows/help_functions_ds.cc
@@ -2203,6 +2206,7 @@ PRIVATE
@@ -2223,6 +2226,7 @@ PRIVATE
modules/desktop_capture/mouse_cursor.h
modules/desktop_capture/mouse_cursor_monitor.h
modules/desktop_capture/mouse_cursor_monitor_linux.cc
@@ -26,7 +26,7 @@ index aa0b8a0..1b75490 100644
modules/desktop_capture/mouse_cursor_monitor_mac.mm
modules/desktop_capture/mouse_cursor_monitor_win.cc
modules/desktop_capture/resolution_tracker.cc
@@ -2214,8 +2218,10 @@ PRIVATE
@@ -2234,8 +2238,10 @@ PRIVATE
modules/desktop_capture/screen_capturer_helper.h
modules/desktop_capture/screen_capturer_darwin.mm
modules/desktop_capture/screen_capturer_linux.cc
@@ -37,7 +37,7 @@ index aa0b8a0..1b75490 100644
modules/desktop_capture/window_capturer_mac.mm
modules/desktop_capture/window_capturer_win.cc
modules/desktop_capture/window_finder.cc
@@ -2230,6 +2236,10 @@ PRIVATE
@@ -2250,6 +2256,10 @@ PRIVATE
modules/desktop_capture/screen_capturer_null.cc
modules/desktop_capture/window_capturer_null.cc
@@ -108,18 +108,18 @@ index cfc6aeb..699d0e6 100644
set_source_files_properties(${not_linux_sources} PROPERTIES HEADER_FILE_ONLY TRUE)
set_source_files_properties(${not_linux_sources} PROPERTIES SKIP_AUTOGEN TRUE)
diff --git a/src/api/task_queue/BUILD.gn b/src/api/task_queue/BUILD.gn
index 1072057..745f5b7 100644
index dc69686..718c9d8 100644
--- a/src/api/task_queue/BUILD.gn
+++ b/src/api/task_queue/BUILD.gn
@@ -82,7 +82,7 @@ rtc_library("default_task_queue_factory") {
sources = [ "default_task_queue_factory.h" ]
deps = [ ":task_queue" ]
@@ -90,7 +90,7 @@ rtc_library("default_task_queue_factory") {
"../../rtc_base/memory:always_valid_pointer",
]
- if (rtc_enable_libevent) {
+ if (rtc_enable_libevent && !is_haiku) {
sources += [ "default_task_queue_factory_libevent.cc" ]
deps += [ "../../rtc_base:rtc_task_queue_libevent" ]
} else if (is_mac || is_ios) {
if (is_android) {
sources +=
[ "default_task_queue_factory_stdlib_or_libevent_experiment.cc" ]
diff --git a/src/modules/desktop_capture/haiku/screen_capturer_haiku.cc b/src/modules/desktop_capture/haiku/screen_capturer_haiku.cc
new file mode 100644
index 0000000..b6f4d24
@@ -1512,10 +1512,10 @@ index 0000000..7308f0c
+
+#endif // VIDEO_CONSUMER_H
diff --git a/src/rtc_base/BUILD.gn b/src/rtc_base/BUILD.gn
index 1db186c..eaa98a9 100644
index b171b16..6907693 100644
--- a/src/rtc_base/BUILD.gn
+++ b/src/rtc_base/BUILD.gn
@@ -513,7 +513,7 @@ rtc_source_set("rtc_operations_chain") {
@@ -628,7 +628,7 @@ rtc_source_set("rtc_operations_chain") {
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
}
@@ -1538,20 +1538,20 @@ index b4e7e9d..0501bcd 100644
#elif defined(WEBRTC_FREEBSD) || defined(WEBRTC_OPENBSD)
#include <sys/endian.h>
diff --git a/src/rtc_base/ip_address.cc b/src/rtc_base/ip_address.cc
index a5498c6..3e829bf 100644
index f1d2f96..7260f5c 100644
--- a/src/rtc_base/ip_address.cc
+++ b/src/rtc_base/ip_address.cc
@@ -11,6 +11,9 @@
#if defined(WEBRTC_POSIX)
#include <netinet/in.h>
@@ -13,6 +13,9 @@
#include <sys/socket.h>
#include "absl/strings/string_view.h"
+#if defined(WEBRTC_HAIKU)
+#include <netinet6/in6.h>
+#endif
#ifdef OPENBSD
#include <netinet/in_systm.h>
#endif
@@ -30,6 +33,15 @@
@@ -32,6 +35,15 @@
namespace rtc {
// Prefixes used for categorizing IPv6 addresses.
@@ -1567,7 +1567,7 @@ index a5498c6..3e829bf 100644
static const in6_addr kV4MappedPrefix = {
{{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 0}}};
static const in6_addr k6To4Prefix = {{{0x20, 0x02, 0}}};
@@ -37,6 +49,7 @@ static const in6_addr kTeredoPrefix = {{{0x20, 0x01, 0x00, 0x00}}};
@@ -39,6 +51,7 @@ static const in6_addr kTeredoPrefix = {{{0x20, 0x01, 0x00, 0x00}}};
static const in6_addr kV4CompatibilityPrefix = {{{0}}};
static const in6_addr k6BonePrefix = {{{0x3f, 0xfe, 0}}};
static const in6_addr kPrivateNetworkPrefix = {{{0xFD}}};
@@ -1575,27 +1575,11 @@ 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 102c1d1..0c2963a 100644
--- a/src/rtc_base/logging.cc
+++ b/src/rtc_base/logging.cc
@@ -127,7 +127,11 @@ LogMessage::LogMessage(const char* file,
if (thread_) {
PlatformThreadId id = CurrentThreadId();
+#ifdef WEBRTC_HAIKU
+ print_stream_ << "[" << (uint64_t)id << "] ";
+#else
print_stream_ << "[" << id << "] ";
+#endif
}
if (file != nullptr) {
diff --git a/src/rtc_base/network.cc b/src/rtc_base/network.cc
index 295d39c..012e1a1 100644
index 5ff8d14..cde0071 100644
--- a/src/rtc_base/network.cc
+++ b/src/rtc_base/network.cc
@@ -566,7 +566,7 @@ void BasicNetworkManager::ConvertIfAddrs(struct ifaddrs* interfaces,
@@ -603,7 +603,7 @@ void BasicNetworkManager::ConvertIfAddrs(
continue;
}
// Skip ones which are down.
@@ -1605,10 +1589,10 @@ index 295d39c..012e1a1 100644
}
// Skip unknown family.
diff --git a/src/rtc_base/physical_socket_server.cc b/src/rtc_base/physical_socket_server.cc
index d89139d..6d1cae3 100644
index 0a83dc3..78b2b06 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) {
@@ -327,7 +327,7 @@ int PhysicalSocket::SetOption(Option opt, int value) {
value <<= 2;
#endif
}
@@ -1617,7 +1601,7 @@ index d89139d..6d1cae3 100644
if (sopt == IPV6_TCLASS) {
// Set the IPv4 option in all cases to support dual-stack sockets.
// Don't bother checking the return code, as this is expected to fail if
@@ -585,7 +585,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) {
@@ -587,7 +587,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) {
*sopt = TCP_NODELAY;
break;
case OPT_DSCP:
@@ -1710,5 +1694,5 @@ index 8aa67f1..11c500f 100644
// There is not yet a way to determine CPU count in emscripten JS environment.
--
2.36.1
2.37.3

View File

@@ -3,20 +3,24 @@ DESCRIPTION="Telegram Desktop's fork of Google's WebRTC."
HOMEPAGE="https://github.com/desktop-app/tg_owt"
COPYRIGHT="2013-2022 Telegram"
LICENSE="BSD (3-clause)"
REVISION="3"
srcGitRev="621f3da55331733bf0d1b223786b96b68c03dca1"
REVISION="1"
srcGitRev="1eab2d736a2fecce01686689b72e39ad8c314ebb"
SOURCE_URI="https://github.com/desktop-app/tg_owt/archive/$srcGitRev.tar.gz"
SOURCE_DIR="tg_owt-$srcGitRev"
CHECKSUM_SHA256="d56b80fb67548633c62511498bfe77e2f4ecb5b6a1c0a780d1911a678c6c6064"
CHECKSUM_SHA256="75ccab5877c0c97844e0fb5fad577f529a43f8ff841f70a200a03711d9b5df54"
SOURCE_FILENAME="tg_owt-$srcGitRev.tar.gz"
srcGitRev_2="5b3351bd07e83f9f9a4cb6629561331ecdb7c546"
srcGitRev_2="6900494d90ae095d44405cd4cc3f346971fa69c9"
SOURCE_URI_2="https://github.com/lemenkov/libyuv/archive/$srcGitRev_2.tar.gz"
CHECKSUM_SHA256_2="242e3c42d2c6ff7770d62d78cfb45642541e92dea6afe2ebe07a9a04db3a98cb"
CHECKSUM_SHA256_2="204bf84d9f86b427130c9adbeb499e02e6aed056a5b9b5d485abd71eb35ffb44"
SOURCE_FILENAME_2="libyuv-$srcGitRev_2.tar.gz"
srcGitRev_3="21fc8ef30415a635e7351ffa0e5d5367943d4a94"
SOURCE_URI_3="https://github.com/google/crc32c/archive/$srcGitRev_3.tar.gz"
CHECKSUM_SHA256_3="97d404992dcab9ab6be56067a37889b0cba1ea6cabcc2bc3feeb0131ee35a340"
SOURCE_FILENAME_3="crc32c-$srcGitRev_3.tar.gz"
srcGitRev_4="8c0b94e793a66495e0b1f34a5eb26bd7dc672db0"
SOURCE_URI_4="https://github.com/abseil/abseil-cpp/archive/$srcGitRev_4.tar.gz"
CHECKSUM_SHA256_4="b9f490fae1c0d89a19073a081c3c588452461e5586e4ae31bc50a8f36339135e"
SOURCE_FILENAME_4="abseil-cpp-$srcGitRev_4.tar.gz"
PATCHES="tg_owt-$portVersion.patchset"
@@ -29,7 +33,7 @@ PROVIDES="
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libabsl_strings$secondaryArchSuffix
# lib:libabsl_strings$secondaryArchSuffix
lib:libavcodec$secondaryArchSuffix
lib:libavformat$secondaryArchSuffix
lib:libavutil$secondaryArchSuffix
@@ -45,7 +49,7 @@ REQUIRES="
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libabsl_strings$secondaryArchSuffix
# devel:libabsl_strings$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
devel:libavcodec$secondaryArchSuffix >= 58
devel:libcrypto$secondaryArchSuffix
@@ -76,14 +80,18 @@ BUILD()
rm -rf $sourceDir/src/third_party/crc32c/src
cp -r $sourceDir3/crc32c-$srcGitRev_3 $sourceDir/src/third_party/crc32c/src
rm -rf $sourceDir/src/third_party/abseil-cpp
cp -r $sourceDir4/abseil-cpp-$srcGitRev_4 $sourceDir/src/third_party/abseil-cpp
mkdir -p build
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_LIBDIR=$developLibDir \
-DCMAKE_INSTALL_INCLUDEDIR=$includeDir \
-DCMAKE_CXX_STANDARD=20 \
-DBUILD_SHARED_LIBS=FALSE \
-DTG_OWT_PACKAGED_BUILD=TRUE \
-DTG_OWT_PACKAGED_BUILD=ON \
-DTG_OWT_BUILD_AUDIO_BACKENDS=OFF \
-DTG_OWT_USE_PROTOBUF=FALSE \
-DTG_OWT_USE_PIPEWIRE=FALSE \