libvpx/libvpx.spec
Hailiang f8b302b192 add sw_64 support
(cherry picked from commit 0c51d34f5e1fe8dfb20b374c13e460e039248fcd)
2025-03-17 09:16:15 +08:00

147 lines
4.1 KiB
RPMSpec

Name: libvpx
Version: 1.13.1
Release: 3
Summary: VP8/VP9 Video Codec SDK
License: BSD-3-Clause
Source0: https://github.com/webmproject/libvpx/archive/v%{version}.tar.gz
Patch0: add-riscv64-arch.patch
Patch1: CVE-2024-5197-pre1.patch
Patch2: CVE-2024-5197-1.patch
Patch3: CVE-2024-5197-2.patch
Patch4: CVE-2024-5197-3.patch
Patch5: add-sw_64-support.patch
URL: http://www.webmproject.org/code/
BuildRequires: gcc gcc-c++ doxygen, php-cli, perl(Getopt::Long)
%ifarch x86_64
BuildRequires: yasm
%endif
Provides: %{name}-utils = %{version}-%{release}
Obsoletes: %{name}-utils < %{version}-%{release}
%description
libvpx provides the VP8/VP9 SDK, which allows you to integrate your applications
with the VP8 and VP9 video codecs, high quality, royalty free, open source codecs
deployed on millions of computers and devices worldwide.
%package devel
Summary: Development files for libvpx
Requires: %{name} = %{version}-%{release}
%description devel
Development libraries and headers for developing software against libvpx.
%prep
%autosetup libvpx-%{version} -p1
%build
%ifarch x86_64
%global vpxtarget x86_64-linux-gcc
%else
%ifarch aarch64
%global vpxtarget arm64-linux-gcc
%else
%ifarch riscv64
%global vpxtarget riscv64-linux-gcc
%else
%ifarch sw_64
%global vpxtarget sw_64-linux-gcc
%else
%global vpxtarget generic-gnu
%endif
%endif
%endif
%endif
%set_build_flags
./configure --target=%{vpxtarget} \
--enable-pic --disable-install-srcs --enable-vp9-decoder \
--enable-vp9-encoder --enable-experimental \
--enable-vp9-highbitdepth --enable-shared --enable-install-srcs \
--prefix=%{_prefix} --libdir=%{_libdir} --size-limit=16384x16384
sed -i "s|-O3|%{optflags}|g" libs-%{vpxtarget}.mk
sed -i "s|-O3|%{optflags}|g" examples-%{vpxtarget}.mk
sed -i "s|-O3|%{optflags}|g" docs-%{vpxtarget}.mk
%make_build verbose=true
%install
make DIST_DIR=%{buildroot}%{_prefix} dist
if [ -d %{buildroot}/usr/docs ]; then
mv %{buildroot}/usr/docs doc/
fi
cd %{buildroot}
mv usr/bin/examples/* usr/bin/
mv usr/bin/postproc usr/bin/vp8_postproc
mv usr/bin/simple_decoder usr/bin/vp8_simple_decoder
mv usr/bin/simple_encoder usr/bin/vp8_simple_encoder
mv usr/bin/twopass_encoder usr/bin/vp8_twopass_encoder
chmod 755 usr/bin/*
cd -
cp -a vpx_config.h %{buildroot}%{_includedir}/vpx/vpx_config-%{_arch}.h
touch -r AUTHORS %{buildroot}%{_includedir}/vpx/vpx_config.h
mv %{buildroot}%{_prefix}/src/vpx_dsp %{buildroot}%{_includedir}/
mv %{buildroot}%{_prefix}/src/vpx_mem %{buildroot}%{_includedir}/
mv %{buildroot}%{_prefix}/src/vpx_ports %{buildroot}%{_includedir}/
mv %{buildroot}%{_prefix}/src/vpx_scale %{buildroot}%{_includedir}/
%post
/sbin/ldconfig
%postun
/sbin/ldconfig
%files
%license LICENSE
%doc AUTHORS CHANGELOG README
%{_libdir}/libvpx.so.*
%{_bindir}/*
%exclude /usr/build/
%exclude /usr/md5sums.txt
%exclude /usr/lib*/*.a
%exclude /usr/CHANGELOG
%exclude /usr/README
%exclude /usr/bin/examples
%exclude %{_prefix}/src
%files devel
%doc docs/html/
%{_includedir}/vpx/
%{_includedir}/vpx_dsp/
%{_includedir}/vpx_mem/
%{_includedir}/vpx_ports/
%{_includedir}/vpx_scale/
%{_libdir}/pkgconfig/vpx.pc
%{_libdir}/libvpx.so
%changelog
* Sat Mar 15 2025 mahailiang <mahailiang@uniontech.com> - 1.13.1-3
- add sw_64 support
* Fri Jun 07 2024 wangkai <13474090681@163.com> - 1.13.1-2
- Fix CVE-2024-5197
* Sat Nov 25 2023 Jingwiw <wangjingwei@iscas.ac.cn> - 1.13.1-1
- Update to 1.13.1 version
- Migrate to SPDX license
* Sun Oct 01 2023 Funda Wang <fundawang@yeah.net> - 1.12.0-4
- Fix CVE-2023-5217, CVE-2023-44488
* Wed May 17 2023 laokz <zhangkai@iscas.ac.cn> - 1.12.0-3
- Add RISC-V arch support authored-by: YukariChiba <i@0x7f.cc>
* Mon May 8 2023 Wenlong Zhang <zhangwenlong@loongson.cn> - 1.12.0-2
- fix build error for loongarch64
* Sat Feb 04 2023 wenchaofan <349464272@qq.com> - 1.12.0-1
- Update to 1.12.0 version
* Fri Nov 08 2019 Lijin Yang <yanglijin@huawei.com> -1.7.0-8
- Pakcage init