aom/aom.spec
yinyongkang a9591cc03b fix CVE-2024-5171
(cherry picked from commit 286d619165ec25333e4ac20d526bb22682a5fd9a)
2024-06-07 09:08:46 +08:00

134 lines
3.6 KiB
RPMSpec
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

%global sover 3
# git describe
%global aom_version v3.8.0
# No libvmaf on openEuler
#ifarch x86_64
#bcond_without vmaf
#endif
# No highway & jpegxl on openEuler
#bcond_without jpegxl
# Use commit with updated changelog for correct versioning
%global commit b681eac83963950afc7be55df56c22fa5210aaa2
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global snapshotdate 20231130
%global prerelease 1
Name: aom
Version: 3.8.0
Release: 2
Summary: Royalty-free next-generation video format
License: BSD
URL: http://aomedia.org/
Source0: https://aomedia.googlesource.com/%{name}/+archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz
Patch01: Fix-integer-overflows-in-calc-of-stride_in_bytes.patch
Patch02: Avoid-integer-overflows-in-align_image_dimension.patch
BuildRequires: gcc-c++ gcc cmake3
BuildRequires: doxygen git-core
BuildRequires: perl-interpreter perl(Getopt::Long) perl-interpreter python3-devel yasm
%if %{with jpegxl}
BuildRequires: pkgconfig(libjxl)
BuildRequires: pkgconfig(libhwy)
%endif
%if %{with vmaf}
BuildRequires: pkgconfig(libvmaf)
%endif
Provides: av1 = %{version}-%{release}
Requires: libaom%{?_isa} = %{version}-%{release}
%description
The Alliance for Open Medias focus is to deliver a next-generation
video format that is:
- Interoperable and open;
- Optimized for the Internet;
- Scalable to any modern device at any bandwidth;
- Designed with a low computational footprint and optimized for hardware;
- Capable of consistent, highest-quality, real-time video delivery; and
- Flexible for both commercial and non-commercial content, including
user-generated content.
This package contains the reference encoder and decoder.
%package -n libaom
Summary: Library files for aom
%description -n libaom
Library files for aom, the royalty-free next-generation
video format.
%package -n libaom-devel
Summary: Development files for aom
Requires: libaom%{?_isa} = %{version}-%{release}
%description -n libaom-devel
Development files for aom, the royalty-free next-generation
video format.
%prep
%autosetup -p1 -c %{name}-%{commit}
# Set GIT revision in version
sed -i 's@set(aom_version "")@set(aom_version "%{aom_version}")@' build/cmake/version.cmake
# Disable buggy PDF generation
sed -i "s@GENERATE_LATEX = YES@GENERATE_LATEX = NO@" libs.doxy_template
%build
%ifarch %{arm}
%global optflags %{__global_compiler_flags} -march=armv7-a -mfpu=neon -mtune=cortex-a8 -mabi=aapcs-linux -mfloat-abi=hard
%endif
mkdir _build && cd _build
%cmake3 ../ -DENABLE_CCACHE=1 \
-DCMAKE_SKIP_RPATH=1 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCONFIG_WEBM_IO=1 \
-DENABLE_DOCS=1 \
-DCONFIG_ANALYZER=0 \
-DENABLE_TESTS=0 \
-DBUILD_SHARED_LIBS=1 \
%if %{with jpegxl}
-DCONFIG_TUNE_BUTTERAUGLI=1 \
%endif
%if %{with vmaf}
-DCONFIG_TUNE_VMAF=1 \
%endif
%{nil}
%make_build
%install
cd _build
%make_install
rm -rvf %{buildroot}%{_libdir}/libaom.a
%files
%doc AUTHORS CHANGELOG README.md
%license LICENSE PATENTS
%{_bindir}/aomdec
%{_bindir}/aomenc
%files -n libaom
%license LICENSE PATENTS
%{_libdir}/libaom.so.%{sover}*
%files -n libaom-devel
%doc _build/docs/html/
%{_includedir}/%{name}
%{_libdir}/libaom.so
%{_libdir}/pkgconfig/%{name}.pc
%changelog
* Thu Jun 06 2024 yinyongkang <yinyongkang@kylinos.cn> - 3.8.0-2
- fix CVE-2024-5171
* Wed Dec 20 2023 misaka00251 <liuxin@iscas.ac.cn> - 3.8.0-1
- Upgrade package version to 3.8.0
* Fri May 07 2021 weidong <weidong@uniontech.com> - 1.0.0-1
- Initial package.