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