summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/tg_owt')
-rw-r--r--media-libs/tg_owt/Manifest1
-rw-r--r--media-libs/tg_owt/files/tg_owt-0_pre20210626-allow-disabling-X11.patch108
-rw-r--r--media-libs/tg_owt/tg_owt-0_pre20210914.ebuild116
3 files changed, 0 insertions, 225 deletions
diff --git a/media-libs/tg_owt/Manifest b/media-libs/tg_owt/Manifest
index 9a9281181db6..ea5cf3b09d6a 100644
--- a/media-libs/tg_owt/Manifest
+++ b/media-libs/tg_owt/Manifest
@@ -1,4 +1,3 @@
DIST libyuv-ad890067f661dc747a975bc55ba3767fe30d4452.tar.gz 473845 BLAKE2B 664be51c166440e6b03fa98f65d907efc446800804058a5ea7fdf944e12cb1237a1487e83fbe9a2f1ce4c73521234e43632f921ad0333507737d81e1cb23ce8f SHA512 f97529b80a786e2e92443caabebd6d85a42641e10c3d2940b0f69bedf3b8a96c69c3247abddd059c4ddd6f78107ab7214222a4267a559fc2086c8edf5ea1afbc
-DIST tg_owt-0_pre20210914.tar.gz 16266351 BLAKE2B 048d6a77046b10af63f4e5c1530b6aeb9d423702a6e34e6e0082a10b06262e19c30aa766cc9ea38549605d8d2cc08bfcd5a4e715ab53c46031c23938f94af27e SHA512 bd46393d9a85fa38fcd560af4f68a4868b25528b134731070e8578217cb0b9bb8b5cf7b3990f619d321ba373e5630a52e467e14d93f71b24de3a5b3e591b8866
DIST tg_owt-0_pre20211207.tar.gz 16780636 BLAKE2B bfa35a43b2085b897eb16986ecfb79ece5f8076d88572869580716014a564023dbc156b1d0885685bf04c57e34f26870dde497e8aae9889e5b2eed6d9a012d8e SHA512 7f8b1ae63371106cd59db6e2a290fd24554d31de4188d243ed6645468dad91c9653b7685add61291830e5309284a87512a73b63c3be76f01ea33701c72f48c90
DIST tg_owt-0_pre20220209.tar.gz 16501237 BLAKE2B fb04aca8803645cc107a7e7fbab8d6020ad91f487ece0445aba29dd1127270e8b3a33d51bb35cfc916168df78cbdc98987610b39fd2cf7b86821b4f9733783c9 SHA512 0a35ce3379887b115117188aa8dce44bf89e23ad6f9fab7320a1cd55cdd534bae4c240778a37cb9588cd6acea1e7a83c22c113d608f7bfd5272ee22bb2773af3
diff --git a/media-libs/tg_owt/files/tg_owt-0_pre20210626-allow-disabling-X11.patch b/media-libs/tg_owt/files/tg_owt-0_pre20210626-allow-disabling-X11.patch
deleted file mode 100644
index c6abf9660468..000000000000
--- a/media-libs/tg_owt/files/tg_owt-0_pre20210626-allow-disabling-X11.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-Add -DTG_OWT_USE_X11
-
-Allows disabling X11 desktop capturing independently of pipewire support, for
-the few people that run wayland without any X11 support whatsoever.
-
-This setup is untested, but supported by the GNI build system, see:
-* src/modules/desktop_capture/BUILD.gn (option rtc_use_x11_extensions)
-
-Toggling the WEBRTC_USE_X11 define also affects some files under
-src/modules/audio_device, but that falls under "X11 support", regardless...
-
---- tg_owt-91d836dc84a16584c6ac52b36c04c0de504d9c34.orig/CMakeLists.txt
-+++ tg_owt-91d836dc84a16584c6ac52b36c04c0de504d9c34/CMakeLists.txt
-@@ -21,11 +21,13 @@
-
- option(BUILD_SHARED_LIBS "Builds shared libraries instead of static." ${TG_OWT_PACKAGED_BUILD})
- option(TG_OWT_USE_PROTOBUF "Use protobuf to generate additional headers. Useful for packaged build." ${BUILD_SHARED_LIBS})
-+option(TG_OWT_USE_X11 "Use X11 for desktop capture on non-Apple Unix." ON)
- option(TG_OWT_USE_PIPEWIRE "Use pipewire for desktop capture on non-Apple Unix." ON)
- option(TG_OWT_DLOPEN_PIPEWIRE "dlopen pipewire 0.3 for desktop capture on non-Apple Unix." ${not_packaged_build})
- option(TG_OWT_BUILD_AUDIO_BACKENDS "Build webrtc audio backends." ON)
-
- if (NOT UNIX OR APPLE)
-+ set(TG_OWT_USE_X11 OFF)
- set(TG_OWT_USE_PIPEWIRE OFF)
- endif()
-
-@@ -87,6 +89,10 @@
- add_library(tg_owt)
- init_target(tg_owt)
-
-+if (TG_OWT_USE_X11)
-+ link_x11(tg_owt)
-+endif()
-+
- if (TG_OWT_USE_PIPEWIRE)
- link_glib(tg_owt)
- if (TG_OWT_DLOPEN_PIPEWIRE)
-@@ -169,7 +175,6 @@
- target_link_libraries(tg_owt PUBLIC tg_owt::libwebrtcbuild)
-
- if (UNIX AND NOT APPLE)
-- link_x11(tg_owt)
- endif()
-
- function(add_sublibrary postfix)
-@@ -2161,6 +2166,37 @@
- )
- endif()
-
-+if (NOT TG_OWT_USE_X11)
-+ remove_target_sources(tg_owt ${webrtc_loc}
-+ modules/desktop_capture/linux/mouse_cursor_monitor_x11.cc
-+ modules/desktop_capture/linux/mouse_cursor_monitor_x11.h
-+ modules/desktop_capture/linux/screen_capturer_x11.cc
-+ modules/desktop_capture/linux/screen_capturer_x11.h
-+ modules/desktop_capture/linux/shared_x_display.cc
-+ modules/desktop_capture/linux/shared_x_display.h
-+ modules/desktop_capture/linux/window_capturer_x11.cc
-+ modules/desktop_capture/linux/window_capturer_x11.h
-+ modules/desktop_capture/linux/window_finder_x11.cc
-+ modules/desktop_capture/linux/window_finder_x11.h
-+ modules/desktop_capture/linux/window_list_utils.cc
-+ modules/desktop_capture/linux/window_list_utils.h
-+ modules/desktop_capture/linux/x_atom_cache.cc
-+ modules/desktop_capture/linux/x_atom_cache.h
-+ modules/desktop_capture/linux/x_error_trap.cc
-+ modules/desktop_capture/linux/x_error_trap.h
-+ modules/desktop_capture/linux/x_server_pixel_buffer.cc
-+ modules/desktop_capture/linux/x_server_pixel_buffer.h
-+ modules/desktop_capture/linux/x_window_property.cc
-+ modules/desktop_capture/linux/x_window_property.h
-+
-+ modules/desktop_capture/screen_drawer.cc
-+ modules/desktop_capture/screen_drawer.h
-+ modules/desktop_capture/screen_drawer_linux.cc
-+ modules/desktop_capture/screen_drawer_lock_posix.cc
-+ modules/desktop_capture/screen_drawer_lock_posix.h
-+ )
-+endif()
-+
- if (NOT TG_OWT_USE_PIPEWIRE)
- remove_target_sources(tg_owt ${webrtc_loc}
- modules/desktop_capture/linux/base_capturer_pipewire.cc
---- tg_owt-91d836dc84a16584c6ac52b36c04c0de504d9c34.orig/cmake/libwebrtcbuild.cmake
-+++ tg_owt-91d836dc84a16584c6ac52b36c04c0de504d9c34/cmake/libwebrtcbuild.cmake
-@@ -27,6 +27,13 @@
- BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0
- )
-
-+if (TG_OWT_USE_X11)
-+ target_compile_definitions(libwebrtcbuild
-+ INTERFACE
-+ WEBRTC_USE_X11
-+ )
-+endif()
-+
- if (TG_OWT_USE_PIPEWIRE)
- target_compile_definitions(libwebrtcbuild
- INTERFACE
-@@ -63,7 +70,6 @@
- INTERFACE
- WEBRTC_POSIX
- WEBRTC_LINUX
-- WEBRTC_USE_X11
- )
- endif()
-
diff --git a/media-libs/tg_owt/tg_owt-0_pre20210914.ebuild b/media-libs/tg_owt/tg_owt-0_pre20210914.ebuild
deleted file mode 100644
index bf747e3836fc..000000000000
--- a/media-libs/tg_owt/tg_owt-0_pre20210914.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 2020-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic cmake
-
-DESCRIPTION="WebRTC build for Telegram"
-HOMEPAGE="https://github.com/desktop-app/tg_owt"
-
-TG_OWT_COMMIT="575fb17d2853c43329e45f6693370f5e41668055"
-LIBYUV_COMMIT="ad890067f661dc747a975bc55ba3767fe30d4452"
-SRC_URI="https://github.com/desktop-app/tg_owt/archive/${TG_OWT_COMMIT}.tar.gz -> ${P}.tar.gz
- https://archive.org/download/libyuv-${LIBYUV_COMMIT}.tar/libyuv-${LIBYUV_COMMIT}.tar.gz"
-S="${WORKDIR}/${PN}-${TG_OWT_COMMIT}"
-# Fetch libyuv archive from: https://chromium.googlesource.com/libyuv/libyuv/+archive/${LIBYUV_COMMIT}.tar.gz
-
-LICENSE="BSD"
-SLOT="0/${PV##*pre}"
-KEYWORDS="amd64 ~ppc64"
-IUSE="screencast +X"
-
-# This package's USE flags may change the ABI and require a rebuild of
-# dependent pacakges. As such, one should make sure to depend on
-# media-libs/tg_owt[x=,y=,z=] for any package that uses this.
-
-# Bundled libs:
-# - libyuv (no stable versioning, www-client/chromium and media-libs/libvpx bundle it)
-# - libsrtp (project uses private APIs)
-# - pffft (no stable versioning, patched)
-# media-libs/libjpeg-turbo is required for libyuv
-DEPEND="
- dev-cpp/abseil-cpp:=[cxx17(+)]
- dev-libs/libevent:=
- dev-libs/openssl:=
- dev-libs/protobuf:=
- media-libs/libjpeg-turbo:=
- >=media-libs/libvpx-1.10.0:=
- media-libs/openh264:=
- media-libs/opus
- media-video/ffmpeg:=
- net-libs/usrsctp
- screencast? (
- dev-libs/glib:2
- media-video/pipewire:=
- )
- X? (
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXrender
- x11-libs/libXrandr
- x11-libs/libXtst
- )
-"
-RDEPEND="${DEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/tg_owt-0_pre20210626-allow-disabling-pipewire.patch"
- "${FILESDIR}/tg_owt-0_pre20210626-allow-disabling-X11.patch"
- "${FILESDIR}/tg_owt-0_pre20210626-allow-disabling-pulseaudio.patch"
-)
-
-src_unpack() {
- unpack "${P}.tar.gz"
- cd "${S}/src/third_party/libyuv" || die
- unpack "libyuv-${LIBYUV_COMMIT}.tar.gz"
-}
-
-src_prepare() {
- # libvpx source files aren't included in the repository
- sed -i '/include(cmake\/libvpx.cmake)/d' CMakeLists.txt || die
-
- # libopenh264 has GENERATED files with yasm that aren't excluded by
- # EXCLUDE_FROM_ALL, and I have no clue how to avoid this.
- # These source files aren't used with system-openh264, anyway.
- sed -i '/include(cmake\/libopenh264.cmake)/d' CMakeLists.txt || die
-
- cmake_src_prepare
-}
-
-src_configure() {
- # Defined by -DCMAKE_BUILD_TYPE=Release, avoids crashes
- # see https://bugs.gentoo.org/754012
- append-cppflags '-DNDEBUG'
-
- local mycmakeargs=(
- -DTG_OWT_USE_X11=$(usex X)
- -DTG_OWT_USE_PIPEWIRE=$(usex screencast)
-
- # Not required by net-im/telegram-desktop right now, I'd rather avoid
- # the (ABI compatibility) headache.
- -DTG_OWT_BUILD_AUDIO_BACKENDS=OFF
- #-DTG_OWT_BUILD_AUDIO_BACKENDS=$(usex alsa)
- #-DTG_OWT_BUILD_PULSE_BACKEND=$(usex pulseaudio)
- )
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # Save about 15MB of useless headers
- rm -r "${ED}/usr/include/tg_owt/base/third_party" || die
- rm -r "${ED}/usr/include/tg_owt/common_audio/third_party" || die
- rm -r "${ED}/usr/include/tg_owt/modules/third_party" || die
- rm -r "${ED}/usr/include/tg_owt/third_party" || die
-
- # Install third_party/libyuv anyway...
- dodir /usr/include/tg_owt/third_party/libyuv/include
- cd "${S}/src/third_party/libyuv/include" || die
- find -type f -name "*.h" -exec install -Dm644 '{}' "${ED}/usr/include/tg_owt/third_party/libyuv/include/{}" \; || die
-}