# Maintainer: Jiachen YANG # Maintainer: Sven-Hendrik Haase # ALARM: Kevin Mihelich # - disable neon on v7 with -DTG_OWT_ARCH_ARMV7_USE_NEON=OFF pkgname=libtg_owt # It seems the currently desired version can be gotten from # https://github.com/telegramdesktop/tdesktop/blob/dev/Telegram/build/docker/centos_env/Dockerfile _commit=dcb5069ff76bd293e86928804208737e6cee2ccc pkgver=0.git22.${_commit:0:7} pkgrel=1 pkgdesc='WebRTC library' arch=('x86_64') url='https://github.com/desktop-app/tg_owt' license=('BSD') # libdrm is dynamically loaded via dlopen depends=('libdrm') makedepends=('git' 'ninja' 'unzip' 'cmake' 'protobuf' 'libxrandr' 'libxcomposite' 'openssl' 'glibc' 'ffmpeg' 'libva' 'opus' 'yasm' 'libjpeg-turbo' 'pipewire' 'libxtst' 'libepoxy') options=('staticlibs') source=("tg_owt::git+${url}.git#commit=${_commit}" "libvpx::git+https://chromium.googlesource.com/webm/libvpx.git" "libyuv::git+https://chromium.googlesource.com/libyuv/libyuv.git" "pipewire::git+https://github.com/PipeWire/pipewire.git" "libtg_owt-fix-gcc13.patch") b2sums=('SKIP' 'SKIP' 'SKIP' 'SKIP' '18310fa97390e2cb6224060632ecac3b0a617aaedfef6291951d2a94c05c2602a7e2f36fc1632a1a6d9ba28ad705368d3229ab585a31e5dfff9733e5c17bd24f') prepare() { cd tg_owt git submodule init git config submodule.src/third_party/libvpx/source/libvpx.url "$srcdir"/libvpx git config submodule.src/third_party/libyuv.url "$srcdir"/libyuv git config submodule.src/third_party/pipewire.url "$srcdir"/pipewire git -c protocol.file.allow=always submodule update patch -Np1 -i "$srcdir"/libtg_owt-fix-gcc13.patch } build() { cd tg_owt export CFLAGS+=" -ffat-lto-objects" export CXXFLAGS+=" -ffat-lto-objects -I/usr/include/libdrm" # Upstream stated that only static builds are really supported so that's what we'll do. # https://github.com/desktop-app/tg_owt/issues/75#issuecomment-992061171 cmake \ -B build \ -G Ninja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=OFF \ -DTG_OWT_ARCH_ARMV7_USE_NEON=OFF ninja -C build } package() { cd tg_owt DESTDIR="${pkgdir}/" ninja -C build install install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE }