]> git.pld-linux.org Git - packages/libvpx.git/blame - libvpx.spec
- rel 3; x86_64 asm optimized now; nicer way of linking shared lib; export only requi...
[packages/libvpx.git] / libvpx.spec
CommitLineData
c9ee805b
ER
1#
2# Conditional build:
7b991969 3%bcond_without asm
955bbb6a 4
bccc9f86
AM
5Summary: VP8, a high-quality video codec
6Name: libvpx
7Version: 0.9.0
5cb65362 8Release: 3
bccc9f86
AM
9License: BSD
10Group: Libraries
11Source0: http://webm.googlecode.com/files/%{name}-%{version}.tar.bz2
12# Source0-md5: 9eb8e818d2f3263623c258fe66924082
5cb65362 13Source1: %{name}.ver
0257ab6e 14Patch0: %{name}-0.9.0-no-explicit-dep-on-static-lib.patch
bccc9f86 15URL: http://www.webmproject.org/
13542557 16BuildRequires: /usr/bin/php
bccc9f86
AM
17BuildRequires: autoconf
18BuildRequires: automake
a28e5963 19BuildRequires: doxygen
13542557 20BuildRequires: php-pcre
7b991969 21%{?with_asm:BuildRequires: yasm}
bccc9f86
AM
22BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24%description
25VP8, a high-quality video codec.
26
27%package devel
28Summary: Header files and develpment documentation for libvpx
29Group: Development/Libraries
30Requires: %{name} = %{epoch}:%{version}-%{release}
31
32%description devel
33Header files and documentation for libvpx.
34
35%package static
36Summary: Static libvpx library
37Group: Development/Libraries
38Requires: %{name}-devel = %{epoch}:%{version}-%{release}
39
40%description static
41Static libvpx library.
42
43%prep
44%setup -q
0257ab6e 45%patch0 -p1
bccc9f86
AM
46
47%build
48install -d build
49cd build
50# not autoconf configure
51../configure \
7b991969 52%if %{with asm}
bccc9f86
AM
53%ifarch %{x8664}
54 --target=x86_64-linux-gcc \
55%endif
56%ifarch %{ix86}
57 --target=x86-linux-gcc \
7b991969
AM
58%endif
59%else
60 --target=generic-gnu \
bccc9f86 61%endif
0257ab6e
AM
62 --enable-pic \
63 --disable-optimizations \
bccc9f86
AM
64 --enable-vp8 \
65 --enable-postproc \
66 --enable-runtime-cpu-detect
0257ab6e
AM
67
68# Hack our optflags in.
7b991969
AM
69sed -i "s|\"vpx_config.h\"|\"vpx_config.h\" %{rpmcflags} %{rpmcppflags} -fPIC|g" {libs,examples,docs}-*.mk
70sed -i "s|STRIP=.*|STRIP=|g" {libs,examples,docs}-*.mk
0257ab6e
AM
71
72%{__make} verbose=true target=libs \
73 CC="%{__cc}"
74
5cb65362
AM
75mkdir tmp
76cd tmp
77ar x ../libvpx_g.a
78cd ..
79%{__cc} %{rpmldflags} -fPIC -shared \
80 -Wl,--no-undefined -Wl,-soname,libvpx.so.0 -Wl,--version-script,%{SOURCE1} -Wl,-z,noexecstack \
81 -o libvpx.so.0.0.0 tmp/*.o \
82 -pthread -lm
83rm -rf tmp
0257ab6e
AM
84
85# Temporarily dance the static libs out of the way
86mv libvpx.a libNOTvpx.a
87mv libvpx_g.a libNOTvpx_g.a
88
89# We need to do this so the examples can link against it.
90ln -sf libvpx.so.0.0.0 libvpx.so
91
92%{__make} verbose=true target=examples \
93 CC="%{__cc}"
94%{__make} verbose=true target=docs
95
96# Put them back so the install doesn't fail
97mv libNOTvpx.a libvpx.a
98mv libNOTvpx_g.a libvpx_g.a
bccc9f86
AM
99
100%install
101rm -rf $RPM_BUILD_ROOT
464fefd2 102install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir}/vpx,%{_libdir}}
0257ab6e
AM
103
104install -d outdir
105%{__make} -C build install \
106 DIST_DIR=$(pwd)/outdir
107
108mv outdir/bin/{simple_decoder,vp8_simple_decoder}
109mv outdir/bin/{twopass_encoder,vp8_twopass_encoder}
c9ee805b 110install -p outdir/bin/* $RPM_BUILD_ROOT%{_bindir}
0257ab6e
AM
111
112ln -s libvpx.so.0.0.0 build/libvpx.so.0.0
113ln -s libvpx.so.0.0.0 build/libvpx.so.0
c9ee805b 114install -p build/libvpx.so* $RPM_BUILD_ROOT%{_libdir}
0257ab6e 115
c9ee805b
ER
116cp -a outdir/include/*.h $RPM_BUILD_ROOT%{_includedir}/vpx
117cp -a outdir/lib/*.a $RPM_BUILD_ROOT%{_libdir}
bccc9f86
AM
118
119%clean
120rm -rf $RPM_BUILD_ROOT
121
122%post -p /sbin/ldconfig
123%postun -p /sbin/ldconfig
124
125%files
126%defattr(644,root,root,755)
0257ab6e
AM
127%attr(755,root,root) %{_bindir}/*
128%attr(755,root,root) %{_libdir}/libvpx.so.*.*
129%attr(755,root,root) %ghost %{_libdir}/libvpx.so.0
bccc9f86
AM
130
131%files devel
132%defattr(644,root,root,755)
133%attr(755,root,root) %{_libdir}/libvpx*.so
464fefd2 134%{_includedir}/vpx
bccc9f86
AM
135
136%files static
137%defattr(644,root,root,755)
0257ab6e 138%{_libdir}/libvpx.a
This page took 0.091189 seconds and 4 git commands to generate.