File tg-owt.spec of Package tg-owt
#
# spec file for package tg-owt
#
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define __builder ninja
%define _lto_cflags %{nil}
Name: tg-owt
Version: 0.0.1~git.a45d8b8
Release: 0
Summary: WebRTC library for the Telegram messenger
License: BSD-3-Clause
URL: https://github.com/desktop-app/tg_owt
Source0: %{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: fdupes
%if 0%{?sle_version} == 150400
BuildRequires: gcc10-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: (ninja or ninja-build)
BuildRequires: pkgconfig
BuildRequires: yasm-devel
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(openh264)
BuildRequires: pkgconfig(libpipewire-0.3)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavformat)
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libswresample)
BuildRequires: pkgconfig(libswscale)
BuildRequires: pkgconfig(openssl) >= 3.0
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: pkgconfig(xdamage)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xfixes)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtst)
BuildRequires: pkgconfig(protobuf)
BuildRequires: pkgconfig(vpx)
BuildRequires: pkgconfig(libsrtp2)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(epoxy)
BuildRequires: pkgconfig(absl_algorithm_container)
BuildRequires: pkgconfig(absl_bind_front)
BuildRequires: pkgconfig(absl_config)
BuildRequires: pkgconfig(absl_core_headers)
BuildRequires: pkgconfig(absl_flags)
BuildRequires: pkgconfig(absl_flags_parse)
BuildRequires: pkgconfig(absl_flags_usage)
BuildRequires: pkgconfig(absl_flat_hash_map)
BuildRequires: pkgconfig(absl_inlined_vector)
BuildRequires: pkgconfig(absl_memory)
BuildRequires: pkgconfig(absl_optional)
BuildRequires: pkgconfig(absl_strings)
BuildRequires: pkgconfig(absl_synchronization)
BuildRequires: pkgconfig(absl_type_traits)
BuildRequires: pkgconfig(absl_variant)
BuildRequires: cmake(Microsoft.GSL)
Provides: bundled(base64) = 0~git
Provides: bundled(fft) = 0~git
Provides: bundled(g711) = 0~git
Provides: bundled(g722) = 0~git
Provides: bundled(libevent) = 1.4.15
Provides: bundled(libsrtp) = 2.2.0~git94ac00d
Provides: bundled(libvpx) = 1.8.2~git5b63f0f
Provides: bundled(libwebm) = 0~git
Provides: bundled(libyuv) = 0~gitad89006
Provides: bundled(ooura) = 0~git
Provides: bundled(openh264) = 1.10.0~git6f26bce
Provides: bundled(pffft) = 0~git483453d
Provides: bundled(portaudio) = 0~git
Provides: bundled(rnnoise) = 0~git91ef40
Provides: bundled(sigslot) = 0~git
Provides: bundled(spl_sqrt_floor) = 0~git
Provides: bundled(usrsctp) = 1.0.0~gitbee946a
%description
%{summary}.
%package devel
Summary: Development files for %{name}
Provides: %{name}-static = %{version}
Provides: bundled(abseil-cpp) = 0~git39f46fa
Provides: bundled(crc32c) = 1.1.0~git21fc8ef
Provides: bundled(base64) = 0~git
Provides: bundled(fft) = 0~git
Provides: bundled(g711) = 1.1~git
Provides: bundled(g722) = 1.14~git
Provides: bundled(libsrtp) = 2.2.0~git94ac00d
Provides: bundled(libyuv) = 1767~git21fc8ef
Provides: bundled(ooura) = 0~git
Provides: bundled(openh264) = 1.10.0~git6f26bce
Provides: bundled(pffft) = 0~git483453d
Provides: bundled(portaudio) = 0~git
Provides: bundled(rnnoise) = 0~git91ef40
Provides: bundled(sigslot) = 0~git
Provides: bundled(spl_sqrt_floor) = 0~git
Requires: pkgconfig(alsa)
Requires: pkgconfig(epoxy)
Requires: pkgconfig(gbm)
Requires: pkgconfig(libavcodec) = 60.31.102
Requires: pkgconfig(libavformat) = 60.16.100
Requires: pkgconfig(libavutil) = 58.29.100
Requires: pkgconfig(libswresample) = 4.12.100
Requires: pkgconfig(libswscale) = 7.5.100
Requires: pkgconfig(libdrm)
Requires: pkgconfig(libjpeg)
Requires: pkgconfig(libpipewire-0.3)
Requires: pkgconfig(libpulse)
Requires: pkgconfig(openssl)
Requires: pkgconfig(opus)
Requires: pkgconfig(vpx)
Requires: pkgconfig(x11)
Requires: pkgconfig(xcomposite)
Requires: pkgconfig(xdamage)
Requires: pkgconfig(xext)
Requires: pkgconfig(xfixes)
Requires: pkgconfig(xrandr)
Requires: pkgconfig(xrender)
Requires: pkgconfig(xtst)
%description devel
%{summary}.
%prep
%autosetup -p1
%build
%if 0%{?sle_version} == 150400
export LDFLAGS="%{optflags} -std=gnu++17"
export CC=gcc-10
export CXX=g++-10
%endif
%cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DTG_OWT_USE_PROTOBUF:BOOL=OFF \
-DTG_OWT_USE_X11:BOOL=ON \
%if 0%{?sle_version} == 150400
-DCMAKE_CXX_STANDARD=17 \
%endif
-DTG_OWT_PACKAGED_BUILD:BOOL=ON
%cmake_build
%install
%cmake_install
%fdupes %{buildroot}/%{_prefix}
%files devel
%license LICENSE
%{_includedir}/tg_owt
%{_libdir}/libtg_owt.a
%{_libdir}/cmake/tg_owt
%changelog