X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=libvpx.spec;h=39c604625b308d8b163967467c9a091d68c5ed66;hb=ecadc52c00fab681edd55691b810d5151e0c646c;hp=24a6b5d6c79a53b5444a11c14c059d27845e5c57;hpb=47f853c31ee4d2912900c112dc0608fd951c0c56;p=packages%2Flibvpx.git diff --git a/libvpx.spec b/libvpx.spec index 24a6b5d..39c6046 100644 --- a/libvpx.spec +++ b/libvpx.spec @@ -1,138 +1,162 @@ # # Conditional build: -%bcond_without asm +%bcond_without asm # x86 assembler +%bcond_without doc # don't build doc +%bcond_with tests # build tests (not useful, creates libgtest.a) +%bcond_without ssse3 # use SSSE3 instructions (Intel since Core2, Via Nano) + +%ifnarch %{ix86} %{x8664} +%undefine with_asm +%endif + +%if "%{pld_release}" == "ac" +# not supported by compiler +%undefine with_ssse3 +%endif Summary: VP8, a high-quality video codec +Summary(pl.UTF-8): VP8 - kodek obrazu wysokiej jakości Name: libvpx -Version: 0.9.0 -Release: 4 +Version: 1.3.0 +Release: 1 License: BSD Group: Libraries -Source0: http://webm.googlecode.com/files/%{name}-%{version}.tar.bz2 -# Source0-md5: 9eb8e818d2f3263623c258fe66924082 -Source1: %{name}.ver -Patch0: %{name}-0.9.0-no-explicit-dep-on-static-lib.patch +#Source0Download: http://code.google.com/p/webm/downloads/list +#Source0: https://webm.googlecode.com/files/%{name}-v%{version}.tar.bz2 +# source, but regenerated on each fetch +#Source0: https://chromium.googlesource.com/webm/libvpx/+archive/v%{version}.tar.gz?/%{name}-%{version}.tar.gz +Source0: %{name}-%{version}.tar.gz +# Source0-md5: dcf436a5dc8b56bdfb4aec63b2fe6729 URL: http://www.webmproject.org/ -BuildRequires: /usr/bin/php -BuildRequires: autoconf -BuildRequires: automake BuildRequires: doxygen -BuildRequires: php-common >= 4:5.0.0 -BuildRequires: php-pcre -%{?with_asm:BuildRequires: yasm} +%{?with_tests:BuildRequires: libstdc++-devel} +BuildRequires: rpmbuild(macros) >= 1.673 +BuildRequires: sed >= 4.0 +%{?with_asm:BuildRequires: yasm >= 0.8} +%if %{with doc} +BuildRequires: %{php_name}-pcre +BuildRequires: %{php_name}-program +%endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define generic_target generic-gnu +%define vpxtarget %{generic_target} +%ifarch %{x8664} +%define vpxtarget x86_64-linux-gcc +%endif +%ifarch %{ix86} +%define vpxtarget x86-linux-gcc +%endif +%ifarch ppc +%define vpxtarget ppc32-linux-gcc +%endif +%ifarch ppc64 +%define vpxtarget ppc64-linux-gcc +%endif + %description VP8, a high-quality video codec. +%description -l pl.UTF-8 +VP8 - kodek obrazu wysokiej jakości. + %package devel -Summary: Header files and develpment documentation for libvpx +Summary: Header files for libvpx +Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libvpx Group: Development/Libraries -Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: %{name} = %{version}-%{release} %description devel -Header files and documentation for libvpx. +Header files for libvpx library. + +%description devel -l pl.UTF-8 +Pliki nagłówkowe biblioteki libvpx. %package static Summary: Static libvpx library +Summary(pl.UTF-8): Statyczna biblioteka libvpx Group: Development/Libraries -Requires: %{name}-devel = %{epoch}:%{version}-%{release} +Requires: %{name}-devel = %{version}-%{release} %description static Static libvpx library. +%description static -l pl.UTF-8 +Statyczna biblioteka libvpx. + %prep -%setup -q -%patch0 -p1 +#%setup -q -n %{name}-v%{version} +%setup -qc %build -install -d build -cd build +install -d obj +cd obj # not autoconf configure +CFLAGS="%{rpmcflags} %{rpmcppflags}" \ ../configure \ %if %{with asm} -%ifarch %{x8664} - --target=x86_64-linux-gcc \ -%endif -%ifarch %{ix86} - --target=x86-linux-gcc \ + --as=yasm \ %endif -%else - --target=generic-gnu \ -%endif - --enable-pic \ + --target=%{vpxtarget} \ + --enable-shared \ + %{!?with_ssse3:--disable-ssse3} \ --disable-optimizations \ + --%{!?with_tests:dis}%{?with_tests:en}able-unit-tests \ + --%{!?with_doc:dis}%{?with_doc:en}able-docs \ + --%{!?with_doc:dis}%{?with_doc:en}able-install-docs \ --enable-vp8 \ --enable-postproc \ --enable-runtime-cpu-detect -# Hack our optflags in. -sed -i "s|\"vpx_config.h\"|\"vpx_config.h\" %{rpmcflags} %{rpmcppflags} -fPIC|g" {libs,examples,docs}-*.mk -sed -i "s|STRIP=.*|STRIP=|g" {libs,examples,docs}-*.mk - %{__make} verbose=true target=libs \ - CC="%{__cc}" - -mkdir tmp -cd tmp -ar x ../libvpx_g.a -cd .. -%{__cc} %{rpmldflags} -fPIC -shared \ - -Wl,--no-undefined -Wl,-soname,libvpx.so.0 -Wl,--version-script,%{SOURCE1} -Wl,-z,noexecstack \ - -o libvpx.so.0.0.0 tmp/*.o \ - -pthread -lm -rm -rf tmp - -# Temporarily dance the static libs out of the way -mv libvpx.a libNOTvpx.a -mv libvpx_g.a libNOTvpx_g.a - -# We need to do this so the examples can link against it. -ln -sf libvpx.so.0.0.0 libvpx.so + HAVE_GNU_STRIP=no \ + CC="%{__cc}" \ + LD="%{__cc}" \ + LDFLAGS="%{rpmldflags}" %{__make} verbose=true target=examples \ - CC="%{__cc}" -%{__make} verbose=true target=docs + CC="%{__cc}" \ + LD="%{__cc}" \ + LDFLAGS="%{rpmldflags} -L." -# Put them back so the install doesn't fail -mv libNOTvpx.a libvpx.a -mv libNOTvpx_g.a libvpx_g.a +%if %{with doc} +%{__make} verbose=true target=docs +%endif %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir}/vpx,%{_libdir}} -install -d outdir -%{__make} -C build install \ - DIST_DIR=$(pwd)/outdir - -mv outdir/bin/{simple_decoder,vp8_simple_decoder} -mv outdir/bin/{twopass_encoder,vp8_twopass_encoder} -install -p outdir/bin/* $RPM_BUILD_ROOT%{_bindir} +%{__make} -C obj verbose=true install \ + LIBSUBDIR=%{_lib} \ + DIST_DIR=$RPM_BUILD_ROOT%{_prefix} -install -p build/libvpx.so.* $RPM_BUILD_ROOT%{_libdir} -ln -s libvpx.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libvpx.so.0 -ln -s libvpx.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libvpx.so +%{__rm} $RPM_BUILD_ROOT%{_libdir}/libvpx.so.1.3 -cp -a outdir/include/*.h $RPM_BUILD_ROOT%{_includedir}/vpx -cp -a outdir/lib/*.a $RPM_BUILD_ROOT%{_libdir} +# adjust prefix and libdir +%{__sed} -i -e 's,^prefix=.*,prefix=%{_prefix},;s,^libdir=.*,libdir=%{_libdir},' $RPM_BUILD_ROOT%{_pkgconfigdir}/vpx.pc %clean rm -rf $RPM_BUILD_ROOT -%post -p /sbin/ldconfig +%post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/* +%doc AUTHORS CHANGELOG LICENSE PATENTS README +%attr(755,root,root) %{_bindir}/vp8_scalable_patterns +%attr(755,root,root) %{_bindir}/vp9_spatial_scalable_encoder +%attr(755,root,root) %{_bindir}/vpxdec +%attr(755,root,root) %{_bindir}/vpxenc %attr(755,root,root) %{_libdir}/libvpx.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libvpx.so.0 +%attr(755,root,root) %ghost %{_libdir}/libvpx.so.1 %files devel %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libvpx.so %{_includedir}/vpx +%{_pkgconfigdir}/vpx.pc %files static %defattr(644,root,root,755)