libvpx/libvpx.spec
Olaf Hering 21d9c5c2a7 - Update to version 1.6.0
This release improves upon the VP9 encoder and speeds up the encoding and
  decoding processes.
  - Enhancement:
    A core focus has been performance for low end Intel processors. SSSE3
    instructions such as 'pshufb' have been avoided and instructions have been
    reordered to better accommodate the more constrained pipelines.
    As a result, devices based on Celeron processors have seen substantial
    decoding improvements. From Indian Runner Duck to Javan Whistling Duck,
    decoding speed improved between 10 and 30%. Between Javan Whistling Duck
    and Khaki Campbell Duck, it improved another 10 to 15%.
    While Celeron benefited most, Core-i5 also improved 5% and 10% between the
    respective releases.
    Realtime performance for WebRTC for both speed and quality has received a
    lot of attention.
  - Bug Fixes:
    A number of fuzzing issues, found variously by Mozilla, Chromium and others,
    have been fixed and we strongly recommend updating.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libvpx?expand=0&rev=67
2016-08-11 12:54:37 +00:00

157 lines
4.8 KiB
RPMSpec

#
# spec file for package libvpx
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
%define soname 4
Name: libvpx
Version: 1.6.0
Release: 0
Summary: VP8 codec library
License: BSD-3-Clause and GPL-2.0+
Group: Productivity/Multimedia/Other
Url: http://www.webmproject.org/
Source0: https://storage.googleapis.com/downloads.webmproject.org/releases/webm/libvpx-%{version}.tar.bz2
Source1: test-data.sha1
Source1000: baselibs.conf
Patch1: libvpx-define-config_pic.patch
Patch2: libvpx-configure-add-s390.patch
Patch4: libvpx-armv7-use-hard-float.patch
# Needed to be able to create pkgconfig() provides.
BuildRequires: gcc-c++
BuildRequires: pkg-config
BuildRequires: yasm
# add curl and do not copy it in to get an updated test-data.sha1 file
#BuildRequires: curl
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
WebM is an open, royalty-free, media file format designed for the web.
WebM defines the file container structure, video and audio formats.
WebM files consist of video streams compressed with the VP8 video codec
and audio streams compressed with the Vorbis audio codec.
The WebM file structure is based on the Matroska container.
%package -n vpx-tools
Summary: VP8 codec library - Utilities
License: BSD-3-Clause and GPL-2.0+
Group: Productivity/Multimedia/Other
%description -n vpx-tools
This package contains utilities around the vp8 codec sdk.
WebM is an open, royalty-free, media file format designed for the web.
WebM defines the file container structure, video and audio formats.
WebM files consist of video streams compressed with the VP8 video codec
and audio streams compressed with the Vorbis audio codec.
The WebM file structure is based on the Matroska container.
%package -n %{name}%{soname}
Summary: VP8 codec library
License: BSD-3-Clause
Group: System/Libraries
%description -n %{name}%{soname}
WebM is an open, royalty-free, media file format designed for the web.
WebM defines the file container structure, video and audio formats.
WebM files consist of video streams compressed with the VP8 video codec
and audio streams compressed with the Vorbis audio codec.
The WebM file structure is based on the Matroska container.
%package devel
Summary: VP8 codec library - Development headers
License: BSD-3-Clause and GPL-2.0+
Group: Development/Languages/C and C++
Requires: %{name}%{soname} = %{version}
%description devel
Development headers and library
WebM is an open, royalty-free, media file format designed for the web.
WebM defines the file container structure, video and audio formats.
WebM files consist of video streams compressed with the VP8 video codec
and audio streams compressed with the Vorbis audio codec.
The WebM file structure is based on the Matroska container.
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch4 -p1
cp %{S:1} test/
%build
%if 0%{?suse_version} < 1310
sed -i~ /ssse3/d configure
sed -i~ 's@ssse3@@' build/make/rtcd.pl
%endif
cd build
# It is only an emulation of autotools configure; the macro does not work
# libvpx default enable NEON support on ARMv7, unfortunately some ARMv7
# CPU doesn't have NEON, e.g. NVIDIA Tegra 2.
# So, we still set -mfpu=neon when build libvpx rpm, but also enable
# runtime-cpu-detect for runtime detect NEON.
../configure \
--prefix=%{_prefix} \
--libdir=%{_libdir} \
--enable-unit-tests \
--enable-debug \
--enable-shared \
--disable-static \
%ifarch armv5tel armv5el
--target=armv5te-linux-gcc \
%endif
%ifarch armv7l armv7hl
--target=armv7-linux-gcc \
--enable-runtime-cpu-detect \
%endif
--extra-cflags="-std=gnu89 -U_FORTIFY_SOURCE %{optflags}" \
--extra-cxxflags="-U_FORTIFY_SOURCE %{optflags}" \
--enable-pic
make %{?_smp_mflags}
%install
cd build
make DESTDIR=%buildroot install
%post -n %{name}%{soname} -p /sbin/ldconfig
%postun -n %{name}%{soname} -p /sbin/ldconfig
%files -n vpx-tools
%defattr(-,root,root)
%{_bindir}/*
%files -n %{name}%{soname}
%defattr(-, root, root)
%doc LICENSE AUTHORS README CHANGELOG
%{_libdir}/libvpx.so.*
%files devel
%defattr(-,root,root)
%{_includedir}/vpx/
%{_libdir}/pkgconfig/vpx.pc
%{_libdir}/libvpx.so
%changelog