mirror of
https://abf.rosa.ru/djam/libtgvoip.git
synced 2025-02-23 09:52:51 +00:00
111 lines
3.2 KiB
RPMSpec
111 lines
3.2 KiB
RPMSpec
%define major 2
|
|
%define libname %mklibname tgvoip %{version}
|
|
%define devname %mklibname -d tgvoip
|
|
%define date 20180529
|
|
%define alpha alpha4
|
|
|
|
Summary: VoIP library for Telegram clients
|
|
Name: libtgvoip
|
|
Version: 2.4.4
|
|
Release: 2
|
|
Group: System/Libraries
|
|
|
|
# Libtgvoip shared library - Public Domain.
|
|
# Bundled webrtc library - BSD with patented echo cancellation algorithms.
|
|
License: Public Domain and BSD
|
|
URL: https://github.com/grishka/%{name}
|
|
|
|
# git archive --format=tar --prefix libtgvoip-2.0-alpha4-$(date +%Y%m%d)/ HEAD | xz -vf > ../libtgvoip-2.0-alpha4-$(date +%Y%m%d).tar.xz
|
|
#Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
|
#Source0: libtgvoip-%{version}-%{alpha}-%{date}.tar.xz
|
|
Source0: https://github.com/grishka/libtgvoip/archive/%{version}.tar.gz
|
|
Patch0: %{name}-build-fixes.patch
|
|
|
|
Provides: bundled(webrtc-audio-processing) = 0.3
|
|
BuildRequires: pkgconfig(libpulse)
|
|
BuildRequires: alsa-oss-devel
|
|
BuildRequires: pkgconfig(alsa)
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: opus-devel
|
|
BuildRequires: gyp
|
|
BuildRequires: cmake
|
|
BuildRequires: ninja
|
|
BuildRequires: python3-pkg-resources
|
|
%ifarch x86_64
|
|
BuildRequires: llvm-devel
|
|
%endif
|
|
|
|
%description
|
|
Provides VoIP library for Telegram clients.
|
|
|
|
%package -n %{libname}
|
|
Summary: VoIP library for Telegram clients
|
|
Group: System/Libraries
|
|
|
|
%description -n %{libname}
|
|
VoIP library for Telegram clients
|
|
|
|
%files -n %{libname}
|
|
%{_libdir}/%{name}.so.*
|
|
|
|
%package -n %{devname}
|
|
Summary: Development files for %{name}
|
|
Requires: %{libname} = %{EVRD}
|
|
Provides: tgvoip-devel = %{EVRD}
|
|
|
|
%description -n %{devname}
|
|
%{summary}.
|
|
|
|
%files -n %{devname}
|
|
%{_includedir}/%{name}
|
|
%{_libdir}/%{name}.so
|
|
%{_libdir}/pkgconfig/*.pc
|
|
|
|
%prep
|
|
%setup -n %{name}-%{version}
|
|
%autopatch -p1
|
|
|
|
%build
|
|
export VOIPVER="%{version}"
|
|
export SOVER=%{version}
|
|
export CXXFLAGS="%{optflags} -std=gnu++11 -ldl -lpthread -lopus -lssl -lcrypto"
|
|
%{_bindir}/gyp --format=cmake --depth=. --generator-output=. -Goutput_dir=out -Gconfig=Release %{name}.gyp
|
|
|
|
pushd out/Release
|
|
%cmake -G Ninja
|
|
%ninja_build
|
|
popd
|
|
|
|
%install
|
|
# Installing shared library...
|
|
mkdir -p "%{buildroot}%{_libdir}"
|
|
install -m 0755 -p out/Release/build/lib.target/%{name}.so.%{version} "%{buildroot}%{_libdir}/%{name}.so.%{version}"
|
|
ln -s %{name}.so.%{version} "%{buildroot}%{_libdir}/%{name}.so.%{major}"
|
|
ln -s %{name}.so.%{version} "%{buildroot}%{_libdir}/%{name}.so"
|
|
|
|
# Installing additional development files...
|
|
mkdir -p "%{buildroot}%{_includedir}/%{name}"
|
|
find . -maxdepth 1 -type f -name "*.h" -exec install -m 0644 -p '{}' %{buildroot}%{_includedir}/%{name} \;
|
|
mkdir -p "%{buildroot}%{_includedir}/%{name}/audio"
|
|
find audio -maxdepth 1 -type f -name "*.h" -exec install -m 0644 -p '{}' %{buildroot}%{_includedir}/%{name}/audio \;
|
|
mkdir -p "%{buildroot}%{_includedir}/%{name}/video"
|
|
find video -maxdepth 1 -type f -name "*.h" -exec install -m 0644 -p '{}' %{buildroot}%{_includedir}/%{name}/video \;
|
|
pwd
|
|
mkdir -p "%{buildroot}%{_libdir}/pkgconfig"
|
|
|
|
cat <<EOF >tgvoip.pc
|
|
includedir=%_includedir
|
|
|
|
Name: tgvoip
|
|
Description: %summary
|
|
URL: %url
|
|
Version: %version
|
|
Requires: opus
|
|
Conflicts:
|
|
Libs: -ltgvoip
|
|
Libs.private: -ldl -lpthread -lopus -lcrypto
|
|
Cflags: -I\${includedir}/%{name}
|
|
EOF
|
|
|
|
install -m 0644 tgvoip.pc %{buildroot}%{_libdir}/pkgconfig
|
|
|