$ git show --format=fuller --patch-with-stat --summary 028ae1f8908e69d5e6fea2ff7df329f40085bd6e
commit 028ae1f8908e69d5e6fea2ff7df329f40085bd6e
Author: Bernhard Rosenkränzer <bero@lindev.ch>
AuthorDate: Wed Jan 4 16:37:53 2023 +0100
Commit: Bernhard Rosenkränzer <bero@lindev.ch>
CommitDate: Wed Jan 4 16:37:53 2023 +0100
System crc32c
---
.abf.yml | 1 -
tg_owt-compile.patch | 27 ---------------------------
tg_owt-system-crc32c.patch | 12 ++++++++++++
tg_owt.spec | 21 +++++++++++----------
4 files changed, 23 insertions(+), 38 deletions(-)
delete mode 100644 tg_owt-compile.patch
create mode 100644 tg_owt-system-crc32c.patch
diff --git a/.abf.yml b/.abf.yml
index 13e87f1..51689d4 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,3 +1,2 @@
sources:
- 21fc8ef30415a635e7351ffa0e5d5367943d4a94.tar.gz: 5ed7277acc953db25b5465d5150dbb0664363c6e
tg_owt-1eab2d7.tar.gz: f104b5e276ce16b26cb37108297ef04a0c533a85
diff --git a/tg_owt-compile.patch b/tg_owt-compile.patch
deleted file mode 100644
index 5dcc247..0000000
--- a/tg_owt-compile.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -up tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/api/video/i444_buffer.cc.omv~ tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/api/video/i444_buffer.cc
---- tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/api/video/i444_buffer.cc.omv~ 2022-07-12 03:20:43.942086045 +0200
-+++ tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/api/video/i444_buffer.cc 2022-07-12 03:21:09.009422937 +0200
-@@ -17,9 +17,9 @@
- #include "api/video/i420_buffer.h"
- #include "rtc_base/checks.h"
- #include "rtc_base/ref_counted_object.h"
--#include "third_party/libyuv/include/libyuv/convert.h"
--#include "third_party/libyuv/include/libyuv/planar_functions.h"
--#include "third_party/libyuv/include/libyuv/scale.h"
-+#include <libyuv/convert.h>
-+#include <libyuv/planar_functions.h>
-+#include <libyuv/scale.h>
-
- // Aligning pointer to 64 bytes for improved performance, e.g. use SIMD.
- static const int kBufferAlignment = 64;
-diff -up tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/common_video/h265/h265_pps_parser.h.omv~ tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/common_video/h265/h265_pps_parser.h
---- tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/common_video/h265/h265_pps_parser.h.omv~ 2022-07-12 03:23:02.292446042 +0200
-+++ tg_owt-10d5f4bf77333ef6b43516f90d2ce13273255f41/src/common_video/h265/h265_pps_parser.h 2022-07-12 03:23:10.802223608 +0200
-@@ -12,6 +12,7 @@
- #define COMMON_VIDEO_H265_PPS_PARSER_H_
-
- #include "absl/types/optional.h"
-+#include <cstdint>
-
- namespace rtc {
- class BitBuffer;
diff --git a/tg_owt-system-crc32c.patch b/tg_owt-system-crc32c.patch
new file mode 100644
index 0000000..cb53ea0
--- /dev/null
+++ b/tg_owt-system-crc32c.patch
@@ -0,0 +1,12 @@
+diff -up tg_owt-1eab2d736a2fecce01686689b72e39ad8c314ebb/CMakeLists.txt.omv~ tg_owt-1eab2d736a2fecce01686689b72e39ad8c314ebb/CMakeLists.txt
+--- tg_owt-1eab2d736a2fecce01686689b72e39ad8c314ebb/CMakeLists.txt.omv~ 2023-01-04 16:23:56.110371417 +0100
++++ tg_owt-1eab2d736a2fecce01686689b72e39ad8c314ebb/CMakeLists.txt 2023-01-04 16:24:02.079391071 +0100
+@@ -76,7 +76,7 @@ include(cmake/generate_target.cmake)
+ include(cmake/target_yasm_sources.cmake)
+ include(cmake/external.cmake)
+ #include(cmake/libabsl.cmake)
+-include(cmake/libcrc32c.cmake)
++#include(cmake/libcrc32c.cmake)
+ include(cmake/libpffft.cmake)
+ include(cmake/librnnoise.cmake)
+ include(cmake/libsrtp.cmake)
diff --git a/tg_owt.spec b/tg_owt.spec
index a6bf967..cf80d52 100644
--- a/tg_owt.spec
+++ b/tg_owt.spec
@@ -8,7 +8,7 @@
Name: tg_owt
Version: 0
-Release: 9.%{date}git%{shortcommit0}
+Release: 10.%{date}git%{shortcommit0}
# Main project - BSD
# abseil-cpp - ASL 2.0
@@ -19,15 +19,14 @@ Release: 9.%{date}git%{shortcommit0}
# usrsctp - BSD
License: BSD and ASL 2.0
Summary: WebRTC library for the Telegram messenger
-URL: https://github.com/desktop-app/%{name}
-Source0: %{url}/archive/%{commit0}/%{name}-%{shortcommit0}.tar.gz
-Source1: https://github.com/google/crc32c/archive/21fc8ef30415a635e7351ffa0e5d5367943d4a94.tar.gz
+URL: https://github.com/desktop-app/tg_owt
+Source0: https://github.com/desktop-app/tg_owt/archive/%{commit0}/%{name}-%{shortcommit0}.tar.gz
# Use system libvpx and libopenh264
Patch0: tg_owt-system-libvpx.patch
Patch1: tg_owt-clang-buildfix.patch
Patch3: tg_owt-20211226-system-absl.patch
-#Patch4: tg_owt-compile.patch
+Patch4: tg_owt-system-crc32c.patch
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(libavcodec)
@@ -57,6 +56,7 @@ BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(egl)
BuildRequires: cmake(absl)
+BuildRequires: cmake(Crc32c)
BuildRequires: cmake
BuildRequires: ninja
@@ -119,19 +119,20 @@ Requires: cmake(absl)
%{summary}.
%prep
-%autosetup -n %{name}-%{commit0} -p1 -a 1
+%autosetup -n %{name}-%{commit0} -p1
+# -a 1
# Make sure nothing pulls in superfluous bundled libraries
rm -rf src/third_party/libvpx cmake/libvpx.cmake src/third_party/openh264 cmake/libopenh264.cmake src/third_party/libyuv cmake/libyuv.cmake src/third_party/abseil-cpp cmake/libabsl.cmake
-mv crc32c-*/* src/third_party/crc32c/src
-rm -rf crc32c-*
+#mv crc32c-*/* src/third_party/crc32c/src
+#rm -rf crc32c-*
%build
# CMAKE_BUILD_TYPE should always be Release due to some hardcoded checks.
-LDFLAGS="%{optflags} -std=gnu++17" \
+LDFLAGS="%{optflags} -std=gnu++20" \
%cmake -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \
- -DCMAKE_CXX_STANDARD=17 \
+ -DCMAKE_CXX_STANDARD=20 \
-DTG_OWT_USE_PROTOBUF:BOOL=ON \
-DTG_OWT_PACKAGED_BUILD:BOOL=ON \
-DTG_OWT_BUILD_AUDIO_BACKENDS:BOOL=ON \