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