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