commit 0e03658147231d46b8984710fa590d31373743b0 Author: Toshaan Bharvani Date: Thu Oct 17 22:35:02 2024 +0200 initial package creation Signed-off-by: Toshaan Bharvani diff --git a/SOURCES/.gitkeeper b/SOURCES/.gitkeeper new file mode 100644 index 0000000..e69de29 diff --git a/SPECS/svt-av1.spec b/SPECS/svt-av1.spec new file mode 100644 index 0000000..22969e8 --- /dev/null +++ b/SPECS/svt-av1.spec @@ -0,0 +1,244 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.6.3) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 1; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +%global _description %{expand: +The Scalable Video Technology for AV1 Encoder (SVT-AV1 Encoder) is an +AV1-compliant encoder library core. The SVT-AV1 development is a +work-in-progress targeting performance levels applicable to both VOD and Live +encoding / transcoding video applications.} + +Name: svt-av1 +Version: 2.1.0 +Release: %autorelease +Summary: Scalable Video Technology for AV1 Encoder + +# Main library: BSD-3-Clause-Clear and AOMPL +# https://gitlab.com/fedora/legal/fedora-license-data/-/issues/383 +# Source/Lib/Common/Codec/EbHmCode.c: BSD +# Source/App/EncApp/EbAppString.* +# Source/Lib/Common/Codec/EbString.* +# Source/Lib/Encoder/Codec/vector.*: MIT +# Source/Lib/Common/ASM_SSE2/x86inc.asm: ISC +# Source/App/DecApp/EbMD5Utility.*: PublicDomain +License: LicenseRef-BSD-3-Clause-Clear-WITH-AdditionRef-AOMPL-1.0 AND MIT AND ISC AND LicenseRef-Fedora-Public-Domain +URL: https://gitlab.com/AOMediaCodec/SVT-AV1 +Source0: %url/-/archive/v%{version}/SVT-AV1-v%{version}.tar.bz2 + +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: help2man +BuildRequires: meson +BuildRequires: nasm +BuildRequires : pkgconfig(gstreamer-1.0) +BuildRequires : pkgconfig(gstreamer-base-1.0) +BuildRequires : pkgconfig(gstreamer-video-1.0) + +Requires: %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%description %_description + +%package libs +Summary: SVT-AV1 libraries + +%description libs %_description + +This package contains SVT-AV1 libraries. + +%package devel +Summary: Development files for SVT-AV1 +Requires: %{name}-libs = %{?epoch:%{epoch}:}%{version}-%{release} +Recommends: %{name}-devel-docs = %{?epoch:%{epoch}:}%{version}-%{release} + +%description devel %_description. + +This package contains the development files for SVT-AV1. + +%package devel-docs +Summary: Development documentation for SVT-AV1 +BuildArch: noarch + +%description devel-docs %_description. + +This package contains the documentation for development of SVT-AV1. + +%package -n gstreamer1-%{name} +Summary: GStreamer 1.0 %{name}-based plug-in +Requires: gstreamer1-plugins-base%{?_isa} + +%description -n gstreamer1-%{name} +This package provides %{name}-based GStreamer plug-in. + +%prep +%autosetup -p1 -n SVT-AV1-v%{version} +# Patch build gstreamer plugin +sed -e "s|install: true,|install: true, include_directories : [ include_directories('../Source/API') ], link_args : '-lSvtAv1Enc',|" \ +-e "/svtav1enc_dep =/d" -e 's|, svtav1enc_dep||' -e "s|svtav1enc_dep.found()|true|" -i gstreamer-plugin/meson.build + +%build +%cmake \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo +%cmake_build + +export LIBRARY_PATH="$LIBRARY_PATH:$(pwd)/Bin/RelWithDebInfo" +pushd gstreamer-plugin +%meson +%meson_build +popd + +%install +%cmake_install +rm -f %{buildroot}%{_libdir}/*.{a,la} + +install -d -m0755 %{buildroot}/%{_mandir}/man1 +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{_libdir} +help2man -N --help-option=-help --version-string=%{version} %{buildroot}%{_bindir}/SvtAv1DecApp > %{buildroot}%{_mandir}/man1/SvtAv1DecApp.1 +help2man -N --help-option=-help --no-discard-stderr --version-string=%{version} %{buildroot}%{_bindir}/SvtAv1EncApp > %{buildroot}%{_mandir}/man1/SvtAv1EncApp.1 + +pushd gstreamer-plugin +%meson_install +popd + +%files +%{_bindir}/SvtAv1DecApp +%{_bindir}/SvtAv1EncApp +%{_mandir}/man1/SvtAv1DecApp.1* +%{_mandir}/man1/SvtAv1EncApp.1* + +%files libs +%license LICENSE.md PATENTS.md +%doc CHANGELOG.md CONTRIBUTING.md README.md +%{_libdir}/libSvtAv1Dec.so.0* +%{_libdir}/libSvtAv1Enc.so.2* + +%files devel +%{_includedir}/%{name} +%{_libdir}/libSvtAv1Dec.so +%{_libdir}/libSvtAv1Enc.so +%{_libdir}/pkgconfig/SvtAv1Dec.pc +%{_libdir}/pkgconfig/SvtAv1Enc.pc + +%files devel-docs +%license LICENSE.md PATENTS.md +%doc Docs + +%files -n gstreamer1-%{name} +%license LICENSE.md PATENTS.md +%{_libdir}/gstreamer-1.0/libgstsvtav1enc.so + +%changelog +## START: Generated by rpmautospec +* Sun May 26 2024 Robert-André Mauchin - 2.1.0-1 +- Update to 2.1.0 + +* Sun May 26 2024 Nick Clifton - 1.4.1-6 +- Replace use/dependency upon yasm with use/dependency upon nasm. + +* Sat Jan 27 2024 Fedora Release Engineering - 1.4.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Nov 13 2023 Miroslav Suchý - 1.4.1-4 +- Migrate to SPDX license + +* Sat Jul 22 2023 Fedora Release Engineering - 1.4.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jan 06 2023 Dominik 'Rathann' Mierzejewski - 1.4.1-2 +- build on non-x86_64 + +* Tue Dec 27 2022 Robert-André Mauchin - 1.4.1-1 +- Update to 1.4.1 + +* Thu Oct 20 2022 Kalev Lember - 1.3.0-1 +- Update to 1.3.0 + +* Sat Jul 23 2022 Fedora Release Engineering - 1.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sun Jun 19 2022 Robert-André Mauchin - 1.1.0-1 +- Update to 1.1.0 Close: rhbz#2057764 + +* Mon Jan 24 2022 Robert-André Mauchin - 0.9.0-1 +- Update to 0.9.0 Close: rhbz#2043795 + +* Sat Jan 22 2022 Fedora Release Engineering - 0.8.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Aug 09 2021 Robert-André Mauchin - 0.8.7-2 +- Move development docs to devel-docs package Close: rhbz#1990449 + +* Sun Jul 25 2021 Robert-André Mauchin - 0.8.7-1 +- Update to 0.8.7 Close: rhbz#1983484 + +* Fri Jul 23 2021 Fedora Release Engineering - 0.8.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Feb 17 21:30:29 CET 2021 Robert-André Mauchin - 0.8.6-4 +- Use upstream patch to fix rhbz#1927739 + +* Wed Feb 17 18:28:38 CET 2021 Robert-André Mauchin - 0.8.6-3 +- Add noexecstack +- Fix: rhbz#1927739 + +* Wed Jan 27 2021 Fedora Release Engineering - 0.8.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Dec 05 20:20:29 CET 2020 Robert-André Mauchin - 0.8.6-1 +- Update to 0.8.6 +- Close: rhbz#1902481 + +* Tue Nov 10 2020 Andreas Schneider - 0.8.5-2 +- Add patch to fix building on modern Linux system + +* Tue Nov 10 11:38:19 CET 2020 Robert-André Mauchin - 0.8.5-1 +- Update to 0.8.5 +- Close: rhbz#1876641 + +* Sat Aug 01 2020 Fedora Release Engineering - 0.8.4-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 0.8.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jun 30 18:53:17 CEST 2020 Robert-André Mauchin - 0.8.4-1 +- Update to 0.8.4 (#1851799) + +* Fri Jun 19 18:36:37 CEST 2020 Robert-André Mauchin - 0.8.3-1 +- Update to 0.8.3 + +* Sun Feb 02 22:33:18 CET 2020 Robert-André Mauchin - 0.8.1-1 +- Update to 0.8.1 + +* Fri Jan 31 2020 Fedora Release Engineering - 0.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 23 00:16:09 CET 2019 Robert-André Mauchin - 0.8.0-1 +- Release 0.8.0 (#1785814) + +* Thu Dec 05 23:08:19 CET 2019 Robert-André Mauchin - 0.7.5-1 +- Release 0.7.5 (#1776119) + +* Thu Oct 10 18:51:11 CEST 2019 Robert-André Mauchin - 0.7.0-1 +- Release 0.7.0 + +* Wed Sep 18 2019 Vasiliy Glazov - 0.6.0-3 +- Added gstreamer plugin + +* Sat Jul 27 2019 Fedora Release Engineering - 0.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Jul 05 18:37:55 CEST 2019 Robert-André Mauchin - 0.6.0-1 +- Release 0.6.0 + +* Thu Jun 20 20:36:24 CEST 2019 Robert-André Mauchin - 0.5.0-1.20190620gitcc2ee45 +- Initial release + +## END: Generated by rpmautospec