]>
Commit | Line | Data |
---|---|---|
94447fde | 1 | # TODO |
cbdd2688 | 2 | # - is bug803 patch still needed? the code changed somehow |
197f4211 | 3 | # |
192f9f57 | 4 | # Workaround ffmpeg.spec & opencv.spec updating: |
5 | # | |
6 | # 1. make-request -r --without opencv ffmpeg.spec | |
7 | # 2. make-request -r opencv.spec | |
8 | # 3. bump release of ffmpeg.spec | |
9 | # 4. make-request -r ffmpeg.spec | |
10 | # | |
2b3b2117 | 11 | # Conditional build: |
38cefaee | 12 | %bcond_with nonfree # non free options of package (currently: faac) |
2e585b44 | 13 | %bcond_with aacplus # AAC+ encoding via libaacplus (requires nonfree) |
294c9b1e | 14 | %bcond_without autoreqdep # don't care about package name deps generated by rpm |
d7a39558 | 15 | %bcond_without frei0r # build without frei0r video filtering |
d5aef92e | 16 | %bcond_without openal # build without OpenAL 1.1 capture support |
192f9f57 | 17 | %bcond_without opencv # build without opencv video filtering |
d5aef92e | 18 | %bcond_without pulseaudio # build without PulseAudio input support |
ea09f25d | 19 | %bcond_without x264 # build without x264 encoder |
daf9a670 | 20 | %bcond_without utvideo # build without Ut Video decoder |
1ef27ea1 JB |
21 | %bcond_without va # VAAPI (Video Acceleration API) |
22 | %bcond_without vpx # VP8, a high-quality video codec | |
23 | %bcond_without doc # don't build docs | |
314ef0df | 24 | |
cbdd2688 JB |
25 | Summary: FFmpeg - a very fast video and audio converter |
26 | Summary(pl.UTF-8): FFmpeg - szybki konwerter audio/wideo | |
9fc4ad22 | 27 | Name: ffmpeg |
c618a116 | 28 | Version: 0.10.3 |
736c70d9 | 29 | Release: 1 |
9cf4d8a4 | 30 | # LGPL or GPL, chosen at configure time (GPL version is more featured) |
38cefaee JB |
31 | # (postprocessing, some filters, x264, xavs, xvid, x11grab) |
32 | # using v3 allows Apache-licensed libs (opencore-amr, libvo-*enc) | |
0b43f655 | 33 | License: GPL v3+ with LGPL v3+ parts |
fde29260 | 34 | Group: Applications/Multimedia |
1ef27ea1 | 35 | Source0: http://ffmpeg.org/releases/%{name}-%{version}.tar.bz2 |
c618a116 | 36 | # Source0-md5: 775d184933f71ff44a2fff4968e78b2b |
fde29260 ER |
37 | Source1: ffserver.init |
38 | Source2: ffserver.sysconfig | |
38cf6de3 | 39 | Source3: ffserver.conf |
0b43f655 | 40 | Patch0: %{name}-bug-803.patch |
3a7b84be | 41 | Patch1: %{name}-gsm.patch |
85f7cea1 | 42 | URL: http://www.ffmpeg.org/ |
d5aef92e | 43 | %{?with_openal:BuildRequires: OpenAL-devel} |
2a60eebe | 44 | BuildRequires: SDL-devel |
cbdd2688 | 45 | BuildRequires: alsa-lib-devel |
38cefaee | 46 | BuildRequires: bzip2-devel |
9f9ba8ac | 47 | BuildRequires: celt-devel >= 0.11.0 |
7ca51e4c | 48 | BuildRequires: dirac-devel >= 1.0.0 |
38cefaee | 49 | %{?with_nonfree:BuildRequires: faac-devel} |
2a60eebe | 50 | BuildRequires: freetype-devel |
d7a39558 | 51 | %{?with_frei0r:BuildRequires: frei0r-devel} |
4bee03f0 JB |
52 | %ifarch ppc |
53 | # require version with altivec support fixed | |
54 | BuildRequires: gcc >= 5:3.3.2-3 | |
55 | %endif | |
d5aef92e | 56 | BuildRequires: gnutls-devel |
cbdd2688 JB |
57 | BuildRequires: jack-audio-connection-kit-devel |
58 | BuildRequires: lame-libs-devel >= 3.98.3 | |
2e585b44 | 59 | %{?with_aacplus:BuildRequires: libaacplus-devel >= 2.0.0} |
d5aef92e JB |
60 | BuildRequires: libass-devel |
61 | BuildRequires: libcdio-devel | |
9c4296c2 | 62 | BuildRequires: libdc1394-devel >= 2 |
f1669449 | 63 | BuildRequires: libgsm-devel |
d5aef92e | 64 | BuildRequires: libmodplug-devel |
4a927f9d | 65 | BuildRequires: libnut-devel |
7571bfa0 | 66 | BuildRequires: libraw1394-devel >= 2 |
cbdd2688 | 67 | BuildRequires: librtmp-devel |
9042663c | 68 | BuildRequires: libtheora-devel >= 1.0-0.beta3 |
4814ac84 | 69 | BuildRequires: libtool >= 2:1.4d-3 |
daf9a670 | 70 | BuildRequires: libv4l-devel |
64f8f109 | 71 | %{?with_va:BuildRequires: libva-devel >= 1.0.3} |
9c4296c2 | 72 | BuildRequires: libvdpau-devel >= 0.2 |
e380e18a | 73 | BuildRequires: libvorbis-devel |
065be88e | 74 | %{?with_vpx:BuildRequires: libvpx-devel >= 0.9.6} |
660918c5 AM |
75 | # X264_BUILD >= 118 |
76 | %{?with_x264:BuildRequires: libx264-devel >= 0.1.3-1.20111212_2245} | |
0b43f655 | 77 | BuildRequires: opencore-amr-devel |
192f9f57 | 78 | %{?with_opencv:BuildRequires: opencv-devel} |
0b43f655 | 79 | BuildRequires: openjpeg-devel >= 1.3-2 |
d5aef92e | 80 | %{?with_pulseaudio:BuildRequires: pulseaudio-devel} |
17a2d1a8 | 81 | BuildRequires: speex-devel >= 1:1.2-rc1 |
e1fe03f7 | 82 | %ifarch %{ix86} |
83 | %ifnarch i386 i486 | |
76243dbd JB |
84 | BuildRequires: nasm |
85 | %endif | |
e1fe03f7 | 86 | %endif |
136f0f45 | 87 | BuildRequires: perl-Encode |
1463656a | 88 | BuildRequires: perl-tools-pod |
ef3c0513 | 89 | BuildRequires: pkgconfig |
db8052c8 | 90 | BuildRequires: rpmbuild(macros) >= 1.470 |
126fb805 | 91 | BuildRequires: schroedinger-devel |
64f8f109 ER |
92 | %{?with_doc:BuildRequires: tetex} |
93 | %{?with_doc:BuildRequires: texi2html} | |
94 | %{?with_doc:BuildRequires: texinfo} | |
daf9a670 | 95 | %{?with_utvideo:BuildRequires: utvideo-devel} |
5dc039cb JB |
96 | BuildRequires: vo-aacenc-devel |
97 | BuildRequires: vo-amrwbenc-devel | |
98 | BuildRequires: xavs-devel | |
cbdd2688 JB |
99 | BuildRequires: xorg-lib-libXext-devel |
100 | BuildRequires: xorg-lib-libXfixes-devel | |
46f2a56b | 101 | BuildRequires: xvid-devel >= 1:1.1.0 |
33a1c0f3 | 102 | BuildRequires: zlib-devel |
57ebb8ad | 103 | %{?with_autoreqdep:BuildConflicts: libpostproc} |
9c4296c2 JB |
104 | # overflows maximum hash table size |
105 | BuildConflicts: pdksh < 5.2.14-57 | |
54ec280e | 106 | Requires: %{name}-libs = %{version}-%{release} |
839e806f | 107 | Requires: xvid >= 1:1.1.0 |
af49d6ab | 108 | Obsoletes: libpostproc |
539b540f | 109 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
9fc4ad22 | 110 | |
2a60eebe JB |
111 | %define _noautoreqdep libGL.so.1 libGLU.so.1 |
112 | ||
c01d7857 PS |
113 | %define specflags -fno-strict-aliasing |
114 | ||
115 | # -fomit-frame-pointer is always needed on x86 due to lack of registers (-fPIC takes one) | |
116 | %define specflags_ia32 -fomit-frame-pointer | |
117 | # -mmmx is needed to enable <mmintrin.h> code. | |
118 | %define specflags_i586 -mmmx | |
119 | %define specflags_i686 -mmmx | |
1162803a | 120 | %define specflags_ppc -fPIC |
c01d7857 | 121 | |
9fc4ad22 | 122 | %description |
85f7cea1 ER |
123 | FFmpeg is a complete solution to record, convert and stream audio and |
124 | video. It is a command line tool to convert one video file format to | |
125 | another. It also supports grabbing and encoding in real time from a TV | |
126 | card. | |
9fc4ad22 | 127 | |
cdb7b42e | 128 | %description -l pl.UTF-8 |
cbdd2688 JB |
129 | FFmpeg to kompletne rozwiązanie nagrywania, konwersji i transmisji |
130 | strumieni dźwięku i obrazu. Jest to działające z linii poleceń | |
131 | narzędzie do konwersji obrazu z jednego formatu do innego. Obsługuje | |
132 | także przechwytywanie i kodowanie w czasie rzeczywistym z karty | |
133 | telewizyjnej. | |
9fc4ad22 | 134 | |
54ec280e PG |
135 | %package libs |
136 | Summary: ffmpeg libraries | |
adcc0f76 | 137 | Summary(pl.UTF-8): Biblioteki ffmpeg |
54ec280e PG |
138 | Group: Libraries |
139 | ||
140 | %description libs | |
cbdd2688 JB |
141 | This package contains the ffmpeg shared libraries: |
142 | - the codec library (libavcodec). It supports most existing encoding | |
143 | formats (MPEG, DivX, MPEG4, AC3, DV...), | |
144 | - demuxer library (libavformat). It supports most existing file | |
145 | formats (AVI, MPEG, OGG, Matroska, ASF...), | |
146 | - video postprocessing library (libpostproc). | |
54ec280e | 147 | |
cdb7b42e | 148 | %description libs -l pl.UTF-8 |
cbdd2688 JB |
149 | Ten pakiet zawiera biblioteki współdzielone ffmpeg: |
150 | - bibliotekę kodeków (libavcodec); obsługuje większość istniejących | |
151 | formatów kodowania (MPEG, DivX, MPEG4, AC3, DV...), | |
152 | - bibliotekę demuksera (libavformat); obsługuje większość istniejących | |
153 | formatów plików (AVI, MPEG, OGG, Matroska, ASF...), | |
154 | - bibliotekę postprocessingu (libpostproc). | |
54ec280e | 155 | |
af49d6ab JB |
156 | %package devel |
157 | Summary: ffmpeg header files | |
adcc0f76 | 158 | Summary(pl.UTF-8): Pliki nagłówkowe ffmpeg |
af49d6ab | 159 | Group: Development/Libraries |
54ec280e | 160 | Requires: %{name}-libs = %{version}-%{release} |
38cefaee JB |
161 | # Libs.private from *.pc (unreasonably they are all the same) |
162 | Requires: SDL-devel | |
163 | Requires: alsa-lib-devel | |
164 | Requires: bzip2-devel | |
9c4296c2 | 165 | Requires: celt-devel >= 0.11.0 |
38cefaee JB |
166 | Requires: dirac-devel >= 1.0.0 |
167 | %{?with_nonfree:Requires: faac-devel} | |
168 | Requires: jack-audio-connection-kit-devel | |
169 | Requires: lame-libs-devel >= 3.98.3 | |
9c4296c2 | 170 | Requires: libdc1394-devel >= 2 |
bf479bc6 | 171 | Requires: libgsm-devel |
4a927f9d | 172 | Requires: libnut-devel |
7571bfa0 | 173 | Requires: libraw1394-devel >= 2 |
38cefaee JB |
174 | Requires: librtmp-devel |
175 | Requires: libtheora-devel >= 1.0-0.beta3 | |
176 | %{?with_va:Requires: libva-devel >= 1.0.3} | |
33a1c0f3 | 177 | Requires: libvorbis-devel |
38cefaee | 178 | %{?with_vpx:Requires: libvpx-devel >= 0.9.6} |
ea09f25d | 179 | %{?with_x264:Requires: libx264-devel >= 0.1.3-1.20110625_2245} |
38cefaee JB |
180 | Requires: opencore-amr-devel |
181 | Requires: openjpeg-devel >= 1.3-2 | |
182 | Requires: schroedinger-devel | |
183 | Requires: speex-devel >= 1:1.2-rc1 | |
184 | Requires: vo-aacenc-devel | |
185 | Requires: vo-amrwbenc-devel | |
186 | Requires: xavs-devel | |
187 | Requires: xorg-lib-libXext-devel | |
188 | Requires: xorg-lib-libXfixes-devel | |
46f2a56b | 189 | Requires: xvid-devel >= 1:1.1.0 |
33a1c0f3 | 190 | Requires: zlib-devel |
8152d6a2 | 191 | Obsoletes: libpostproc-devel |
af49d6ab JB |
192 | |
193 | %description devel | |
194 | ffmpeg header files. | |
195 | ||
cdb7b42e JR |
196 | %description devel -l pl.UTF-8 |
197 | Pliki nagłówkowe ffmpeg. | |
af49d6ab JB |
198 | |
199 | %package static | |
200 | Summary: ffmpeg static libraries | |
adcc0f76 | 201 | Summary(pl.UTF-8): Statyczne biblioteki ffmpeg |
af49d6ab JB |
202 | Group: Development/Libraries |
203 | Requires: %{name}-devel = %{version}-%{release} | |
204 | ||
205 | %description static | |
206 | ffmpeg static libraries (libavcodec and libavformat). | |
207 | ||
cdb7b42e | 208 | %description static -l pl.UTF-8 |
af49d6ab JB |
209 | Statyczne biblioteki ffmpeg (libavcodec i libavformat). |
210 | ||
2a60eebe JB |
211 | %package ffplay |
212 | Summary: FFplay - SDL-based media player | |
adcc0f76 | 213 | Summary(pl.UTF-8): FFplay - odtwarzacz mediów oparty na SDL |
2a60eebe | 214 | Group: Applications/Multimedia |
54ec280e | 215 | Requires: %{name}-libs = %{version}-%{release} |
2a60eebe JB |
216 | |
217 | %description ffplay | |
218 | FFplay is a very simple and portable media player using the FFmpeg | |
219 | libraries and the SDL library. It is mostly used as a test bench for | |
220 | the various APIs of FFmpeg. | |
221 | ||
cdb7b42e JR |
222 | %description ffplay -l pl.UTF-8 |
223 | FFplay to bardzo prosty i przenośny odtwarzacz mediów używający | |
224 | bibliotek FFmpeg oraz biblioteki SDL. Jest używany głównie do | |
225 | testowania różnych API FFmpeg. | |
2a60eebe | 226 | |
fde29260 ER |
227 | %package ffserver |
228 | Summary: FFserver video server | |
adcc0f76 | 229 | Summary(pl.UTF-8): FFserver - serwer strumieni obrazu |
fde29260 | 230 | Group: Daemons |
593d3a64 | 231 | Requires(post,preun): /sbin/chkconfig |
67103923 | 232 | Requires: %{name}-libs = %{version}-%{release} |
2305d791 | 233 | Requires: rc-scripts >= 0.4.0.10 |
fde29260 ER |
234 | |
235 | %description ffserver | |
236 | FFserver is a streaming server for both audio and video. It supports | |
237 | several live feeds, streaming from files and time shifting on live | |
238 | feeds (you can seek to positions in the past on each live feed, | |
239 | provided you specify a big enough feed storage in ffserver.conf). | |
240 | ||
cdb7b42e JR |
241 | %description ffserver -l pl.UTF-8 |
242 | FFserver to serwer strumieni dla dźwięku i obrazu. Obsługuje kilka | |
243 | źródeł na żywo, przekazywanie strumieni z plików i przesuwanie w | |
244 | czasie dla źródeł na żywo (można przeskakiwać na położenia w | |
245 | przeszłości dla każdego źródła na żywo, pod warunkiem odpowiednio | |
246 | dużej przestrzeni na dane skonfigurowanej w ffserver.conf). | |
4e0bd1da | 247 | |
9fc4ad22 | 248 | %prep |
aed8e8c9 | 249 | %setup -q |
f1669449 | 250 | %patch0 -p1 |
714dcf83 | 251 | %patch1 -p1 |
9fc4ad22 | 252 | |
9d4f8977 ER |
253 | # package the grep result for mplayer, the result formatted as ./mplayer/configure |
254 | cat <<EOF > ffmpeg-avconfig | |
2b2445b7 ER |
255 | #! /bin/sh |
256 | _libavdecoders_all="`sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" | |
257 | _libavencoders_all="`sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" | |
258 | _libavparsers_all="`sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" | |
259 | _libavbsfs_all="`sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`" | |
260 | _libavdemuxers_all="`sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" | |
261 | _libavmuxers_all="`sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" | |
262 | _libavprotocols_all="`sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'`" | |
263 | EOF | |
9d4f8977 | 264 | cat <<'EOF' >> ffmpeg-avconfig |
2b2445b7 ER |
265 | |
266 | case "$1" in | |
267 | --decoders) | |
268 | echo $_libavdecoders_all | |
269 | ;; | |
270 | --encoders) | |
271 | echo $_libavencoders_all | |
272 | ;; | |
273 | --parsers) | |
274 | echo $_libavparsers_all | |
275 | ;; | |
276 | --bsfs) | |
277 | echo $_libavbsfs_all | |
278 | ;; | |
279 | --demuxers) | |
280 | echo $_libavdemuxers_all | |
281 | ;; | |
282 | --muxers) | |
283 | echo $_libavmuxers_all | |
284 | ;; | |
285 | --protocols) | |
286 | echo $_libavprotocols_all | |
287 | ;; | |
288 | *) | |
289 | cat <<USAGE | |
290 | Usage: $0 [OPTION] | |
291 | Options: | |
292 | --decoders | |
293 | --encoders | |
294 | --parsers | |
295 | --bsfs | |
296 | --demuxers | |
297 | --muxers | |
298 | --protocols | |
299 | USAGE | |
300 | exit 1;; | |
301 | esac | |
302 | ||
303 | exit 0 | |
304 | EOF | |
305 | ||
9fc4ad22 | 306 | %build |
05e1eb2f JB |
307 | # notes: |
308 | # - it's not autoconf configure | |
d0a0ec26 | 309 | # - --disable-debug, --disable-optimizations, tune=generic causes not to override our optflags |
2080d1d3 | 310 | ./configure \ |
b4680d0b | 311 | --arch=%{_target_base_arch} \ |
539b540f | 312 | --prefix=%{_prefix} \ |
9cf4d8a4 | 313 | --libdir=%{_libdir} \ |
d81dfa95 | 314 | --shlibdir=%{_libdir} \ |
2a60eebe | 315 | --mandir=%{_mandir} \ |
126fb805 | 316 | --cc="%{__cc}" \ |
314ef0df | 317 | --extra-cflags="-D_GNU_SOURCE=1 %{rpmcppflags} %{rpmcflags}" \ |
1162803a | 318 | --extra-ldflags="%{rpmcflags} %{rpmldflags}" \ |
126fb805 JB |
319 | --disable-debug \ |
320 | --disable-optimizations \ | |
6382c99d | 321 | --disable-stripping \ |
314ef0df | 322 | --enable-avfilter \ |
d5aef92e | 323 | --enable-gnutls \ |
126fb805 | 324 | --enable-gpl \ |
0b43f655 | 325 | --enable-version3 \ |
d7a39558 | 326 | %{?with_frei0r:--enable-frei0r} \ |
2e585b44 | 327 | %{?with_aacplus:--enable-libaacplus} \ |
d5aef92e | 328 | --enable-libass \ |
cbdd2688 | 329 | --enable-libcelt \ |
d5aef92e JB |
330 | --enable-libcdio \ |
331 | --enable-libdc1394 \ | |
32243b76 | 332 | --enable-libdirac \ |
f3692243 | 333 | --enable-libgsm \ |
d5aef92e | 334 | --enable-libmodplug \ |
15c15700 | 335 | --enable-libmp3lame \ |
4a927f9d | 336 | --enable-libnut \ |
cbdd2688 JB |
337 | --enable-libopencore-amrnb \ |
338 | --enable-libopencore-amrwb \ | |
192f9f57 | 339 | %{?with_opencv:--enable-libopencv} \ |
cbdd2688 | 340 | --enable-libopenjpeg \ |
d5aef92e | 341 | %{?with_pulseaudio:--enable-libpulse} \ |
cbdd2688 | 342 | --enable-librtmp \ |
126fb805 | 343 | --enable-libschroedinger \ |
da99dcf2 | 344 | --enable-libspeex \ |
126fb805 | 345 | --enable-libtheora \ |
daf9a670 | 346 | %{?with_utvideo:--enable-libutvideo} \ |
d5aef92e | 347 | --enable-libv4l2 \ |
5dc039cb JB |
348 | --enable-libvo-aacenc \ |
349 | --enable-libvo-amrwbenc \ | |
126fb805 | 350 | --enable-libvorbis \ |
64f8f109 | 351 | %{?with_vpx:--enable-libvpx} \ |
ea09f25d | 352 | %{?with_x264:--enable-libx264} \ |
5dc039cb | 353 | --enable-libxavs \ |
126fb805 | 354 | --enable-libxvid \ |
d5aef92e | 355 | %{?with_openal:--enable-openal} \ |
6382c99d | 356 | --enable-postproc \ |
d7493de8 | 357 | --enable-pthreads \ |
9cf4d8a4 | 358 | --enable-shared \ |
6382c99d | 359 | --enable-swscale \ |
0b43f655 | 360 | --enable-vdpau \ |
75231f25 | 361 | --enable-x11grab \ |
7a286645 | 362 | %ifnarch %{ix86} %{x8664} |
e1fe03f7 | 363 | --disable-mmx \ |
364 | %endif | |
365 | %ifarch i386 i486 | |
05e1eb2f | 366 | --disable-mmx \ |
b524cd99 | 367 | %endif |
0b43f655 | 368 | %if %{with nonfree} |
48610c64 | 369 | --enable-nonfree \ |
0b43f655 | 370 | --enable-libfaac \ |
76243dbd | 371 | %endif |
75231f25 | 372 | --enable-runtime-cpudetect |
2305d791 | 373 | |
da99dcf2 | 374 | # force oldscaler build |
b8c60172 | 375 | %{__sed} -i -e 's|#define.*CONFIG_OLDSCALER.*0|#define CONFIG_OLDSCALER 1|g' config.h |
da99dcf2 | 376 | |
1ef27ea1 JB |
377 | %{__make} \ |
378 | V=1 | |
9fc4ad22 | 379 | |
b8c60172 ER |
380 | # CC_O to add -c to commandline. makefile should be patched |
381 | %{__make} tools/qt-faststart V=1 CC_O='-c -o $@' | |
382 | ||
9fc4ad22 AM |
383 | %install |
384 | rm -rf $RPM_BUILD_ROOT | |
38cf6de3 | 385 | install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_sbindir},/etc/{sysconfig,rc.d/init.d}} \ |
38baa0f1 | 386 | $RPM_BUILD_ROOT%{_includedir}/ffmpeg \ |
38cf6de3 | 387 | $RPM_BUILD_ROOT/var/{cache,log}/ffserver |
9fc4ad22 | 388 | |
539b540f | 389 | %{__make} install \ |
1ef27ea1 JB |
390 | DESTDIR=$RPM_BUILD_ROOT \ |
391 | V=1 | |
539b540f | 392 | |
544421b2 ER |
393 | cp -a config.h $RPM_BUILD_ROOT%{_includedir}/ffmpeg |
394 | cp -a libavutil/intreadwrite.h $RPM_BUILD_ROOT%{_includedir}/libavutil | |
395 | cp -a libavutil/bswap.h $RPM_BUILD_ROOT%{_includedir}/libavutil | |
396 | cp -a libavutil/common.h $RPM_BUILD_ROOT%{_includedir}/libavutil | |
397 | cp -a libavutil/mem.h $RPM_BUILD_ROOT%{_includedir}/libavutil | |
398 | for a in libavutil/*/bswap.h; do | |
399 | install -D $a $RPM_BUILD_ROOT%{_includedir}/$a | |
400 | done | |
9d4f8977 ER |
401 | cp -a libavformat/riff.h $RPM_BUILD_ROOT%{_includedir}/libavformat |
402 | cp -a libavformat/avio.h $RPM_BUILD_ROOT%{_includedir}/libavformat | |
980e7aa8 JB |
403 | # for lim-omx ffmpeg components |
404 | cp -a libavcodec/audioconvert.h $RPM_BUILD_ROOT%{_includedir}/libavcodec | |
544421b2 | 405 | |
b8c60172 ER |
406 | install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ffserver |
407 | cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ffserver | |
408 | cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/ffserver.conf | |
539b540f | 409 | mv -f $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/ffserver |
b8c60172 | 410 | install -p tools/qt-faststart $RPM_BUILD_ROOT%{_bindir} |
9fc4ad22 | 411 | |
2b2445b7 ER |
412 | # install as ffmpeg-avconfig to avoid with possible programs looking for |
413 | # ffmpeg-config and expecting --libs output from it which is not implemented | |
414 | # simple to do (by querying pkgconfig), but why? | |
b8c60172 | 415 | install -p ffmpeg-avconfig $RPM_BUILD_ROOT%{_bindir}/ffmpeg-avconfig |
2b2445b7 | 416 | |
9fc4ad22 AM |
417 | %clean |
418 | rm -rf $RPM_BUILD_ROOT | |
419 | ||
1ef27ea1 JB |
420 | %post libs -p /sbin/ldconfig |
421 | %postun libs -p /sbin/ldconfig | |
539b540f | 422 | |
38cf6de3 ER |
423 | %pre ffserver |
424 | %groupadd -g 167 ffserver | |
425 | %useradd -g ffserver -u 167 ffserver | |
426 | ||
593d3a64 ER |
427 | %post ffserver |
428 | /sbin/chkconfig --add ffserver | |
429 | %service ffserver restart | |
430 | ||
38cf6de3 | 431 | %preun ffserver |
593d3a64 ER |
432 | if [ "$1" = 0 ]; then |
433 | %service ffserver stop | |
434 | /sbin/chkconfig --del ffserver | |
435 | fi | |
436 | ||
38cf6de3 ER |
437 | %postun ffserver |
438 | if [ "$1" = 0 ]; then | |
439 | %userremove ffserver | |
440 | %groupremove ffserver | |
441 | fi | |
442 | ||
9fc4ad22 AM |
443 | %files |
444 | %defattr(644,root,root,755) | |
660918c5 | 445 | %doc CREDITS LICENSE MAINTAINERS README doc/{APIchanges,RELEASE_NOTES} %{?with_doc:doc/*.html} |
2a60eebe | 446 | %attr(755,root,root) %{_bindir}/ffmpeg |
3a7b84be | 447 | %attr(755,root,root) %{_bindir}/ffprobe |
b7313442 | 448 | %attr(755,root,root) %{_bindir}/qt-faststart |
da99dcf2 AM |
449 | %dir %{_datadir}/ffmpeg |
450 | %{_datadir}/ffmpeg/*.ffpreset | |
714dcf83 | 451 | %{_datadir}/ffmpeg/ffprobe.xsd |
64f8f109 ER |
452 | %{?with_doc:%{_mandir}/man1/ffmpeg.1*} |
453 | %{?with_doc:%{_mandir}/man1/ffprobe.1*} | |
54ec280e PG |
454 | |
455 | %files libs | |
456 | %defattr(644,root,root,755) | |
f50f7d7c | 457 | %attr(755,root,root) %{_libdir}/libavcodec.so.*.*.* |
cbdd2688 | 458 | %attr(755,root,root) %ghost %{_libdir}/libavcodec.so.53 |
d0a0ec26 | 459 | %attr(755,root,root) %{_libdir}/libavdevice.so.*.*.* |
cbdd2688 | 460 | %attr(755,root,root) %ghost %{_libdir}/libavdevice.so.53 |
314ef0df | 461 | %attr(755,root,root) %{_libdir}/libavfilter.so.*.*.* |
cbdd2688 | 462 | %attr(755,root,root) %ghost %{_libdir}/libavfilter.so.2 |
f50f7d7c | 463 | %attr(755,root,root) %{_libdir}/libavformat.so.*.*.* |
cbdd2688 | 464 | %attr(755,root,root) %ghost %{_libdir}/libavformat.so.53 |
f50f7d7c | 465 | %attr(755,root,root) %{_libdir}/libavutil.so.*.*.* |
cbdd2688 | 466 | %attr(755,root,root) %ghost %{_libdir}/libavutil.so.51 |
d7493de8 | 467 | %attr(755,root,root) %{_libdir}/libpostproc.so.*.*.* |
714dcf83 | 468 | %attr(755,root,root) %ghost %{_libdir}/libpostproc.so.52 |
660918c5 AM |
469 | %attr(755,root,root) %{_libdir}/libswresample.so.*.*.* |
470 | %attr(755,root,root) %ghost %{_libdir}/libswresample.so.0 | |
ee032235 | 471 | %attr(755,root,root) %{_libdir}/libswscale.so.*.*.* |
cbdd2688 | 472 | %attr(755,root,root) %ghost %{_libdir}/libswscale.so.2 |
314ef0df | 473 | |
539b540f JB |
474 | %files devel |
475 | %defattr(644,root,root,755) | |
54ec280e | 476 | %doc doc/optimization.txt |
1ef27ea1 | 477 | %attr(755,root,root) %{_bindir}/ffmpeg-avconfig |
539b540f | 478 | %attr(755,root,root) %{_libdir}/libavcodec.so |
d0a0ec26 | 479 | %attr(755,root,root) %{_libdir}/libavdevice.so |
314ef0df | 480 | %attr(755,root,root) %{_libdir}/libavfilter.so |
539b540f | 481 | %attr(755,root,root) %{_libdir}/libavformat.so |
d7493de8 | 482 | %attr(755,root,root) %{_libdir}/libavutil.so |
d2af4612 | 483 | %attr(755,root,root) %{_libdir}/libpostproc.so |
660918c5 | 484 | %attr(755,root,root) %{_libdir}/libswresample.so |
ee032235 | 485 | %attr(755,root,root) %{_libdir}/libswscale.so |
539b540f | 486 | %{_includedir}/ffmpeg |
6382c99d AM |
487 | %{_includedir}/libavcodec |
488 | %{_includedir}/libavdevice | |
314ef0df | 489 | %{_includedir}/libavfilter |
6382c99d AM |
490 | %{_includedir}/libavformat |
491 | %{_includedir}/libavutil | |
492 | %{_includedir}/libpostproc | |
660918c5 | 493 | %{_includedir}/libswresample |
6382c99d | 494 | %{_includedir}/libswscale |
1ef27ea1 JB |
495 | %{_pkgconfigdir}/libavcodec.pc |
496 | %{_pkgconfigdir}/libavdevice.pc | |
497 | %{_pkgconfigdir}/libavfilter.pc | |
498 | %{_pkgconfigdir}/libavformat.pc | |
499 | %{_pkgconfigdir}/libavutil.pc | |
500 | %{_pkgconfigdir}/libpostproc.pc | |
660918c5 | 501 | %{_pkgconfigdir}/libswresample.pc |
1ef27ea1 | 502 | %{_pkgconfigdir}/libswscale.pc |
539b540f | 503 | |
9cf4d8a4 JB |
504 | %files static |
505 | %defattr(644,root,root,755) | |
1ef27ea1 JB |
506 | %{_libdir}/libavcodec.a |
507 | %{_libdir}/libavdevice.a | |
508 | %{_libdir}/libavfilter.a | |
509 | %{_libdir}/libavformat.a | |
510 | %{_libdir}/libavutil.a | |
511 | %{_libdir}/libpostproc.a | |
660918c5 | 512 | %{_libdir}/libswresample.a |
1ef27ea1 | 513 | %{_libdir}/libswscale.a |
af49d6ab JB |
514 | |
515 | %files ffplay | |
516 | %defattr(644,root,root,755) | |
517 | %attr(755,root,root) %{_bindir}/ffplay | |
64f8f109 | 518 | %{?with_doc:%{_mandir}/man1/ffplay.1*} |
af49d6ab | 519 | |
fde29260 ER |
520 | %files ffserver |
521 | %defattr(644,root,root,755) | |
522 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ffserver.conf | |
523 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/ffserver | |
524 | %attr(755,root,root) %{_sbindir}/ffserver | |
525 | %attr(754,root,root) /etc/rc.d/init.d/ffserver | |
64f8f109 | 526 | %{?with_doc:%{_mandir}/man1/ffserver.1*} |
38cf6de3 ER |
527 | %dir %attr(770,root,ffserver) /var/cache/ffserver |
528 | %dir %attr(770,root,ffserver) /var/log/ffserver |