Files
haikuports/media-libs/tg_owt/tg_owt-0.0.20230105.recipe
2023-03-11 00:26:42 +10:00

108 lines
3.3 KiB
Bash

SUMMARY="WebRTC build for Telegram"
DESCRIPTION="Telegram Desktop's fork of Google's WebRTC."
HOMEPAGE="https://github.com/desktop-app/tg_owt"
COPYRIGHT="2013-2023 Telegram"
LICENSE="BSD (3-clause)"
REVISION="2"
srcGitRev="5098730b9eb6173f0b52068fe2555b7c1015123a"
SOURCE_URI="https://github.com/desktop-app/tg_owt/archive/$srcGitRev.tar.gz"
SOURCE_DIR="tg_owt-$srcGitRev"
CHECKSUM_SHA256="e662d26f6ac626c9c9d7391c7d4eeb9f9e54282ddc753d24275103831811409f"
SOURCE_FILENAME="tg_owt-$srcGitRev.tar.gz"
srcGitRev_2="6900494d90ae095d44405cd4cc3f346971fa69c9"
SOURCE_URI_2="https://github.com/lemenkov/libyuv/archive/$srcGitRev_2.tar.gz"
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="a6be76f59c474a215f2df5116b312257462e97f2e38b2bfa6df8b6a55710b058"
SOURCE_FILENAME_4="abseil-cpp-$srcGitRev_4.tar.gz"
PATCHES="tg_owt-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
tg_owt$secondaryArchSuffix = $portVersion
devel:libtg_owt$secondaryArchSuffix = 0.0.0 compat >= 0
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libavcodec$secondaryArchSuffix
lib:libavformat$secondaryArchSuffix
lib:libavutil$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:libopus$secondaryArchSuffix
lib:libprotobuf$secondaryArchSuffix
lib:libswresample$secondaryArchSuffix
lib:libswscale$secondaryArchSuffix
lib:libvpx$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libcrypto$secondaryArchSuffix
devel:libavcodec$secondaryArchSuffix >= 58
devel:libcrypto$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:libopus$secondaryArchSuffix
devel:libprotobuf$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libvpx$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python
cmd:sed
cmd:yasm
"
BUILD()
{
export DISABLE_ASLR=1
rm -rf $sourceDir/src/third_party/libyuv
cp -r $sourceDir2/libyuv-$srcGitRev_2 $sourceDir/src/third_party/libyuv
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=ON \
-DTG_OWT_BUILD_AUDIO_BACKENDS=OFF \
-DTG_OWT_USE_PROTOBUF=FALSE \
-DTG_OWT_USE_PIPEWIRE=FALSE \
-DTG_OWT_USE_X11=FALSE
make $jobArgs
}
INSTALL()
{
cd build
make install
mkdir -p $libDir
mv $developLibDir/cmake $libDir
}