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