forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
media-libs/tg_owt: Bump to 0_pre20230921
Signed-off-by: Esteve Varela Colominas <[email protected]> Signed-off-by: Ionen Wolkens <[email protected]>
- Loading branch information
Showing
2 changed files
with
131 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,6 @@ | ||
DIST libsrtp-a566a9cfcd619e8327784aa7cff4a1276dc1e895.tar.gz 636836 BLAKE2B 496afcb80f67a8f76104e338408d4930475daadaf3f7cd2d673336aef938986876995e475a4d932424d7f99f6a339bad360f566d6fd3719316eaf8241970cf8d SHA512 930e665434e80e8a26d81b785563c915619b546a9a0af0455a14278816997074add852fae107027f4899415cb0ab47ffbf9492bea76b94b10f558b52098bbf92 | ||
DIST libyuv-00950840d1c9bcbb3eb6ebc5aac5793e71166c8b.tar.bz2 426626 BLAKE2B efae062f124e3711bab9db232e5f956f09683d6743f54407bf89eeda1bb6ffbc9b82fc250bd709f06b94c28bc8bbb239a28262a002e7b7a2044f31c1432304bb SHA512 bfe2ad76c911986727d0c8b6ee85028fea382fad1eaebbff77a116f848388417719acaea11506936e8160d8dfa46f27a9a3d544b3db356e4c58aa81f493a6912 | ||
DIST libyuv-04821d1e7d60845525e8db55c7bcd41ef5be9406.tar.bz2 418856 BLAKE2B a72e1f75491785b272b0ded46368a67aadb643278e5764d16dcd902ab7e4139d8664ffbacd940f30113ce3171e0b0846fe0d6111ced17c5b08f326cd61b2af14 SHA512 ff9cfbb61a1361e959740d00c741dc6fbe71ca7c61770abc35f70aada402df3884d7d5992ae79472dfe3d7641154d4f13065593fee41bf8eae924e26cc654117 | ||
DIST tg_owt-0_pre20230105.tar.gz 13822416 BLAKE2B 05004dafaefd748d836f3508d3800bcb15d0bc9894b83340746e85763bff4b77d3dd1fb732eeaf86324b9afbec69be49b172ae7f70d959a7a65ce01b64fb6205 SHA512 70b4ada620cf19acf981abcefcbac1609fe04c51deef0332e288d59c4e7efe98625817c641b92967b4f37217f94e49aa0fc296fcfbb214c08cb63030b1427f54 | ||
DIST tg_owt-0_pre20230428.tar.gz 13725816 BLAKE2B c854de42696e397ea7101b7536f940c5424ebeae4105b84c9d3ef39242409b450e3cf38b7319ede7eb185667b78f4d4fb72c046880495f300205dff4d553be3a SHA512 883be1ba54db10462dadf0ef0e03270535972eed37d7fec745bd660faa67eabc539bfa88122a9c64a895cba97fb1d1a67ff6ee590ad002480ad327736f07284e | ||
DIST tg_owt-0_pre20230921.tar.gz 13726037 BLAKE2B 635342dd2127330542374e2f0f9acee91844c3c825fe4610dabe2996c541d9b3dc1681999910e5b591752f7e8f65a089c16b43216dd0c0b84f1a0e913e5a0213 SHA512 538d713e9ac91e9f676cdf301d11d7b5be0d67bda6283537e03b6322f3cca5c0234ff2f2b0b23e9046709f77ed282fc4d3526d3b21ee93478c50380be410372f |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
# Copyright 2020-2023 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
|
||
inherit cmake flag-o-matic | ||
|
||
DESCRIPTION="WebRTC build for Telegram" | ||
HOMEPAGE="https://github.com/desktop-app/tg_owt" | ||
|
||
TG_OWT_COMMIT="592b14d13bf9103226e90a83571e24c49f6bfdcd" | ||
LIBYUV_COMMIT="04821d1e7d60845525e8db55c7bcd41ef5be9406" | ||
LIBSRTP_COMMIT="a566a9cfcd619e8327784aa7cff4a1276dc1e895" | ||
SRC_URI="https://github.com/desktop-app/tg_owt/archive/${TG_OWT_COMMIT}.tar.gz -> ${P}.tar.gz | ||
https://gitlab.com/chromiumsrc/libyuv/-/archive/${LIBYUV_COMMIT}/libyuv-${LIBYUV_COMMIT}.tar.bz2 | ||
https://github.com/cisco/libsrtp/archive/${LIBSRTP_COMMIT}.tar.gz -> libsrtp-${LIBSRTP_COMMIT}.tar.gz" | ||
S="${WORKDIR}/${PN}-${TG_OWT_COMMIT}" | ||
# Upstream libyuv: https://chromium.googlesource.com/libyuv/libyuv | ||
|
||
LICENSE="BSD" | ||
SLOT="0/${PV##*pre}" | ||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" | ||
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. | ||
# Furthermore, the -DNDEBUG preprocessor flag should be defined by any | ||
# dependent package, failure to do so will change the ABI in the header files. | ||
|
||
# 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) | ||
RDEPEND=" | ||
>=dev-cpp/abseil-cpp-20220623.1:= | ||
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:= | ||
dev-libs/crc32c | ||
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 | ||
) | ||
" | ||
DEPEND="${RDEPEND} | ||
screencast? ( | ||
media-libs/libglvnd | ||
media-libs/mesa | ||
x11-libs/libdrm | ||
) | ||
" | ||
BDEPEND=" | ||
virtual/pkgconfig | ||
X? ( x11-base/xorg-proto ) | ||
" | ||
|
||
src_unpack() { | ||
unpack "${P}.tar.gz" | ||
unpack "libyuv-${LIBYUV_COMMIT}.tar.bz2" | ||
mv -T "libyuv-${LIBYUV_COMMIT}" "${S}/src/third_party/libyuv" || die | ||
unpack "libsrtp-${LIBSRTP_COMMIT}.tar.gz" | ||
mv -T "libsrtp-${LIBSRTP_COMMIT}" "${S}/src/third_party/libsrtp" || die | ||
} | ||
|
||
src_prepare() { | ||
# 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 | ||
|
||
# The sources for these aren't available, avoid needing them | ||
sed -e '/include(cmake\/libcrc32c.cmake)/d' \ | ||
-e '/include(cmake\/libabsl.cmake)/d' -i CMakeLists.txt || die | ||
|
||
# "lol" said the scorpion, "lmao" | ||
sed -i '/if (BUILD_SHARED_LIBS)/{n;n;s/WARNING/DEBUG/}' CMakeLists.txt || die | ||
|
||
cmake_src_prepare | ||
} | ||
|
||
src_configure() { | ||
# Defined by -DCMAKE_BUILD_TYPE=Release, avoids crashes | ||
# See https://bugs.gentoo.org/754012 | ||
# EAPI 8 still wipes this flag. | ||
append-cppflags '-DNDEBUG' | ||
|
||
local mycmakeargs=( | ||
-DTG_OWT_USE_X11=$(usex X) | ||
-DTG_OWT_USE_PIPEWIRE=$(usex screencast) | ||
) | ||
cmake_src_configure | ||
} | ||
|
||
src_install() { | ||
cmake_src_install | ||
|
||
# Save about 15MB of useless headers | ||
rm -r "${ED}/usr/include/tg_owt/rtc_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 a few headers anyway, as required by net-im/telegram-desktop... | ||
local headers=( | ||
third_party/libyuv/include | ||
rtc_base/third_party/sigslot | ||
rtc_base/third_party/base64 | ||
) | ||
for dir in "${headers[@]}"; do | ||
pushd "${S}/src/${dir}" > /dev/null || die | ||
find -type f -name "*.h" -exec install -Dm644 '{}' "${ED}/usr/include/tg_owt/${dir}/{}" \; || die | ||
popd > /dev/null || die | ||
done | ||
} |