]> git.sesse.net Git - vlc/blob - vlc.spec
* ./src/input/mpeg_system.c: fixed a bus error on UltraSparc.
[vlc] / vlc.spec
1 # The source tarball must be free of deCSS code..
2 # ask me <yduret@mandrakesoft.com> before uploading
3
4 %define name            vlc
5 %define vlc_ver         0.2.92
6 %define version         %vlc_ver
7
8 %define css             0
9 %if %{css}
10 %define css_src         %nil
11 %else
12 %define css_src         -nocss
13 %endif 
14 %define css_name        libdvdcss
15 %define css_version     1.0.0
16 %define css_release     1mdk
17 %define css_major       1
18 %define css_lib_name    %{css_name}%{css_major}
19
20 %define cvs             0
21 %if %{cvs}
22 %define cvsdate         20010619
23 %define release         0.%{cvsdate}mdk
24 %define cvs_name        %{name}-snapshot-%{cvsdate}-00
25 %else
26 %define release         2mdk
27 %endif
28
29 %define plugin_qt       0
30 %define plugin_alsa     0
31
32 Summary:        VideoLAN is a free MPEG, MPEG2 and DVD software solution.
33 Name:           %{name}
34 Version:        %{version}
35 Release:        %{release}
36
37 %if %{cvs} 
38 Source0:        http://www.videolan.org/pub/videolan/vlc/snapshots/%{cvs_name}.tar.bz2
39 %else
40 Source0:        http://www.videolan.org/packages/%{version}/%{name}-%{version}%{css_src}.tar.bz2
41 %endif
42 License:        GPL
43 Group:          Video
44 URL:            http://videolan.org/
45 BuildRoot:      %_tmppath/%name-%version-%release-root
46 Buildrequires:  libncurses5-devel
47 Buildrequires:  libqt2-devel
48 Buildrequires:  libgtk+1.2-devel
49 Buildrequires:  gnome-libs-devel
50 Buildrequires:  db1-devel
51 Buildrequires:  alsa-lib-devel
52 Buildrequires:  libggi-devel
53
54 %description
55 VideoLAN is a free network-aware MPEG and DVD player.
56 The VideoLAN Client allows to play MPEG2 Transport Streams from the
57 network or from a file, as well as direct DVD playback.
58 VideoLAN is a project of students from the Ecole Centrale Paris.
59 This version add MPEG1 support, direct DVD support, DVD decryption, 
60 arbitrary, seeking in the stream, pause, fast forward and slow motion, 
61 hardware YUV acceleration and a few new interface features 
62 including drag'n'drop.
63 You may install vlc-gnome, vlc-gtk and vlc-qt vlc-gnome vlc-ncurses.
64 This package contains no deCSS functionality.
65 You need the decss library available from http://www.videolan.org
66
67 %package gtk
68 Summary: Gtk plug-in for VideoLAN, a DVD and MPEG2 player
69 Group: Video
70 Requires: %{name} = %{version}
71 %description gtk
72 The vlc-gtk packages includes the Gtk plug-in for the VideoLAN client.
73 If you are going to watch DVD with the Gtk front-end, you should 
74 install vlc-gtk.
75
76
77 %package gnome
78 Summary: Gnome plug-in for VideoLAN, a DVD and MPEG2 player
79 Group: Video
80 Requires: %{name} = %{version}
81 %description gnome
82 The vlc-gnome packages includes the Gnome plug-in for the VideoLAN client.
83 If you are going to watch DVD with the Gnome front-end, you should 
84 install vlc-gnome.
85
86 %package qt
87 Summary: Qt2 plug-in for VideoLAN, a DVD and MPEG2 player
88 Group: Video
89 Requires: %{name} = %{version}
90 %description qt
91 The vlc-qt packages includes the Qt2 plug-in for the VideoLAN client.
92 If you are going to watch DVD with the Qt2 front-end, you should
93 install vlc-qt
94
95 %package ncurses
96 Summary: Ncurses console-based plug-in for VideoLAN, a DVD and MPEG2 player
97 Group: Video
98 Requires: %{name} = %{version}
99 %description ncurses
100 The vlc-ncurses packages includes the ncurses plug-in for the VideoLAN client.
101 If you are going to watch DVD with the ncurses front-end, you should
102 install vlc-ncurses
103
104 %package sdl
105 Summary: Simple DirectMedia Layer plug-in for VideoLAN, a DVD and MPEG2 player
106 Group: Video
107 Requires: %{name} = %{version}
108 %description sdl
109 The vlc-sdl packages includes the Simple DirectMedia Layer plug-in 
110 for the VideoLAN client.
111 If you are going to watch DVD with the sdl plugin, you should
112 install vlc-sdl
113
114 %package ggi
115 Summary: GGI plug-in for VideoLAN, a DVD and MPEG2 player
116 Group: Video
117 Requires: %{name} = %{version}
118 %description ggi
119 The vlc-ggi packages includes the GGI plug-in for the VideoLAN client.
120 If you are going to watch DVD with the GGI plugin, you should
121 install vlc-ggi
122
123 %package esd
124 Summary: Enlightened Sound Daemon plug-in for VideoLAN, a DVD and MPEG2 player
125 Group: Video
126 Requires: %{name} = %{version}
127 %description esd
128 The vlc-esd packages includes the Enlightened Sound Daemon plug-in 
129 for the VideoLAN client.
130 If you are going to watch DVD with the esd plugin, you should
131 install vlc-esd
132
133 %package alsa
134 Summary: Advanced Linux Sound Architecture plug-in for VideoLAN, a DVD and MPEG2 player
135 Group: Video
136 Requires: %{name} = %{version}
137 %description alsa
138 The vlc-alsa packages includes the Advanced Linux Sound Architecture plug-in for the VideoLAN client.
139 If you are going to watch DVD with the ALSA plugin, you should install vlc-alsa
140
141 %package -n %{css_lib_name}
142 Summary:        A library for accessing a DVD like a block device using CSS decryption if needed.
143 Version:        %{css_version}
144 Release:        %{css_release}
145 Group:          System/Libraries
146 Provides:       %{css_name} = %{css_version}-%{css_release}
147
148 %description -n %{css_lib_name}
149 libdvdcss is a simple library designed for accessing a DVD like a block device
150 without having to bother about the decryption. The important features are:
151  * Portability. Currently supported platforms are GNU/Linux, FreeBSD, BeOS
152    and Windows. The MacOS X version is being worked on as well.
153  * Simplicity. There are currently 7 functions in the API, and we intend to
154    keep this number low.
155  * Freedom. libdvdcss is released under the General Public License, ensuring
156    it will stay free, and used only for free software products.
157  * Just better. Unlike most similar projects, libdvdcss doesn't require the
158    region of your drive to be set.
159
160 %package -n %{css_lib_name}-devel
161 Summary:        Development tools for programs which will use the libdvdcss library.
162 Version:        %{css_version}
163 Release:        %{css_release}
164 Group:          Development/C
165 Requires:       %{css_lib_name} = %{css_version}
166 Provides:       %{css_name}-devel = %{css_version}-%{css_release}
167
168 %description -n %{css_lib_name}-devel
169 The %{css_name}-devel package includes the header files and static libraries
170 necessary for developing programs which will manipulate DVDs files using
171 the %{css_name} library.
172
173 If you are going to develop programs which will manipulate DVDs,
174 you should install %{css_name}-devel.  You'll also need to have the %css_name
175 package installed.
176
177
178 %prep
179 %if %{cvs}
180 %setup -q -n %{cvs_name}
181 %else
182 %setup -q -n %{name}-%{vlc_ver}
183 %endif
184
185 %build
186 %ifarch ppc
187 # Dadou - 0.1.99h-mdk - Don't use configure here. It breaks build at present
188 #                       time.
189 ./configure --enable-release \
190             --with-dvdcss=local-shared \
191             --prefix=%_prefix \
192             --enable-gnome --enable-x11 --enable-gtk --enable-qt \
193             --enable-esd \
194             --enable-fb \
195             --enable-xvideo \
196             --enable-sdl
197 perl -pi -e "s|CFLAGS \+= -mcpu=604e|#CFLAGS \+= -mcpu=604e|" Makefile
198 perl -pi -e "s|#CFLAGS \+= -mcpu=750|CFLAGS \+= -mcpu=750 -mtune=750|" Makefile
199 %else
200 #export CC="gcc-3.0.1" CXX="g++-3.0.1"
201 %configure --enable-release \
202            --with-dvdcss=local-shared \
203            --enable-gnome --enable-gtk \
204            --enable-x11 --disable-qt --enable-ncurses \
205            --enable-esd --enable-alsa \
206            --enable-fb --enable-mga \
207            --enable-xvideo \
208            --enable-ggi \
209            --enable-sdl 
210 %endif
211 # thier configure check if /dev/dsp exists...
212 perl -pi -e 's#(PLUGINS :=\s)#$1dsp #' Makefile.opts
213 export QTDIR=%{_libdir}/qt2 
214 %make
215
216 %install
217 %makeinstall_std
218 install -d %buildroot/%_mandir/man1
219 install doc/vlc.1 %buildroot/%_mandir/man1
220
221 # menu
222 mkdir -p $RPM_BUILD_ROOT/%{_menudir}
223 cat > $RPM_BUILD_ROOT/%{_menudir}/vlc << EOF
224 ?package(vlc): command="%{_bindir}/vlc" hotkey="V" needs="X11" longtitle="VideoLAN is a free MPEG, MPEG2 and DVD software solution" section="Multimedia/Video" title="VideoLAN Client" icon="vlc.png" hints="Video"
225 EOF
226 cat > $RPM_BUILD_ROOT/%{_menudir}/vlc-gtk << EOF
227 ?package(vlc-gtk): command="%{_bindir}/gvlc" needs="X11" longtitle="VideoLAN is a free MPEG, MPEG2 and DVD software solution" section="Multimedia/Video" title="Gtk VideoLAN Client" icon="gvlc.png" hints="Video"
228 EOF
229 cat > $RPM_BUILD_ROOT/%{_menudir}/vlc-gnome << EOF
230 ?package(vlc-gnome): command="%{_bindir}/gnome-vlc" needs="X11" longtitle="VideoLAN is a free MPEG, MPEG2 and DVD software solution" section="Multimedia/Video" title="Gnome VideoLAN Client" icon="gnome-vlc.png" hints="Video"
231 EOF
232 cat > $RPM_BUILD_ROOT/%{_menudir}/vlc-qt << EOF
233 ?package(vlc-gnome): command="%{_bindir}/qvlc" needs="X11" longtitle="VideoLAN is a free MPEG, MPEG2 and DVD software solution" section="Multimedia/Video" title="Qt VideoLAN Client" icon="qvlc.png" hints="Video"
234 EOF
235
236 # icons
237 mkdir -p %{buildroot}/{%{_miconsdir},%{_liconsdir}}
238 install -m 644 %buildroot/%_datadir/videolan/vlc16x16.png %buildroot/%{_miconsdir}/vlc.png
239 install -m 644 %buildroot/%_datadir/videolan/vlc32x32.png %buildroot/%{_iconsdir}/vlc.png
240 install -m 644 %buildroot/%_datadir/videolan/vlc48x48.png %buildroot/%{_liconsdir}/vlc.png
241 install -m 644 %buildroot/%_datadir/videolan/gnome-vlc16x16.png %buildroot/%{_miconsdir}/gnome-vlc.png
242 install -m 644 %buildroot/%_datadir/videolan/gnome-vlc32x32.png %buildroot/%{_iconsdir}/gnome-vlc.png
243 install -m 644 %buildroot/%_datadir/videolan/gnome-vlc48x48.png %buildroot/%{_liconsdir}/gnome-vlc.png
244 install -m 644 %buildroot/%_datadir/videolan/gvlc16x16.png %buildroot/%{_miconsdir}/gvlc.png
245 install -m 644 %buildroot/%_datadir/videolan/gvlc32x32.png %buildroot/%{_iconsdir}/gvlc.png
246 install -m 644 %buildroot/%_datadir/videolan/gvlc48x48.png %buildroot/%{_liconsdir}/gvlc.png
247 install -m 644 %buildroot/%_datadir/videolan/kvlc16x16.png %buildroot/%{_miconsdir}/kvlc.png
248 install -m 644 %buildroot/%_datadir/videolan/kvlc32x32.png %buildroot/%{_iconsdir}/kvlc.png
249 install -m 644 %buildroot/%_datadir/videolan/kvlc48x48.png %buildroot/%{_liconsdir}/kvlc.png
250 install -m 644 %buildroot/%_datadir/videolan/qvlc16x16.png %buildroot/%{_miconsdir}/qvlc.png
251 install -m 644 %buildroot/%_datadir/videolan/qvlc32x32.png %buildroot/%{_iconsdir}/qvlc.png
252 install -m 644 %buildroot/%_datadir/videolan/qvlc48x48.png %buildroot/%{_liconsdir}/qvlc.png
253
254 %post
255 %update_menus
256 %postun
257 %update_menus
258
259 %clean
260 rm -fr %buildroot
261
262 %files
263 %defattr(-,root,root,-)
264 %doc README COPYING
265 %{_bindir}/vlc
266 %dir %{_libdir}/videolan/vlc
267 %{_libdir}/videolan/vlc/dsp.so
268 %{_libdir}/videolan/vlc/fb.so
269 %{_libdir}/videolan/vlc/x11.so
270 # ac3_spdif: AC3 decoder using SPDIF pass-through.
271 %{_libdir}/videolan/vlc/ac3_spdif.so
272 # spudec: DVD subtitles decoder.
273 %{_libdir}/videolan/vlc/spu_dec.so
274 # nothing useful for the moment.
275 #%dir %{_datadir}/videolan
276 #%{_datadir}/videolan/*
277 %{_mandir}/man1/*
278 %{_menudir}/vlc
279 %{_miconsdir}/vlc.png
280 %{_iconsdir}/vlc.png
281 %{_liconsdir}/vlc.png
282
283 %files gtk
284 %defattr(-,root,root)
285 %doc README
286 %{_libdir}/videolan/vlc/gtk.so
287 %{_bindir}/gvlc
288 %{_menudir}/vlc-gtk
289 %{_miconsdir}/gvlc.png
290 %{_iconsdir}/gvlc.png
291 %{_liconsdir}/gvlc.png
292 %post gtk
293 %update_menus
294 %postun gtk
295 %update_menus
296
297 %files gnome
298 %defattr(-,root,root)
299 %doc README
300 %{_libdir}/videolan/vlc/gnome.so
301 %{_bindir}/gnome-vlc
302 %{_menudir}/vlc-gnome
303 %{_miconsdir}/gnome-vlc.png
304 %{_iconsdir}/gnome-vlc.png
305 %{_liconsdir}/gnome-vlc.png
306 %post   gnome
307 %update_menus
308 %postun gnome
309 %update_menus
310
311 %if %{plugin_qt}
312 %files qt
313 %defattr(-,root,root)
314 %doc README
315 %{_libdir}/videolan/vlc/qt.so
316 %{_bindir}/qvlc
317 %{_menudir}/vlc-qt
318 %{_miconsdir}/qvlc.png
319 %{_iconsdir}/qvlc.png
320 %{_liconsdir}/qvlc.png
321 %post   qt
322 %update_menus
323 %postun qt
324 %update_menus
325 %endif
326
327 %files ncurses
328 %defattr(-,root,root)
329 %doc README
330 %{_libdir}/videolan/vlc/ncurses.so
331
332 %files sdl
333 %defattr(-,root,root)
334 %doc README
335 %{_libdir}/videolan/vlc/sdl.so
336
337 %files ggi
338 %defattr(-,root,root)
339 %doc README
340 %{_libdir}/videolan/vlc/ggi.so
341
342 %files esd
343 %defattr(-,root,root)
344 %doc README
345 %{_libdir}/videolan/vlc/esd.so
346
347 %if %{plugin_alsa}
348 %files alsa
349 %defattr(-,root,root)
350 %doc README
351 %{_libdir}/videolan/vlc/alsa.so
352 %endif
353
354 %if %{css}
355 %files -n %{css_lib_name}
356 %defattr(-,root,root,-)
357 %doc COPYING AUTHORS
358 %{_libdir}/*.so.*
359 %post   -n %{css_lib_name} -p /sbin/ldconfig
360 %postun -n %{css_lib_name} -p /sbin/ldconfig
361
362 %files -n %{css_lib_name}-devel
363 %defattr(-,root,root)
364 %doc COPYING
365 %{_libdir}/*.a
366 %{_libdir}/*.so
367 %{_includedir}/*
368 %endif
369
370 %changelog
371 * Thu Jan 17 2002 Yves Duret <yduret@mandrakesoft.com> 0.2.92-2mdk
372 - readded libdvdcss rpm in specfile. use %%define css 1 with correct sources
373   to build libdvdcss rpm.
374
375 * Wed Jan 09 2002 Yves Duret <yduret@mandrakesoft.com> 0.2.92-1mdk
376 - version 0.2.92
377 - %%makeinstall_std
378 - splitted again, added vlc-sdl vlc-esd vlc-ggi
379 - bring back some missing plugins
380 - fixed buildrequires
381 - added menu entries and icons (from cvs)
382
383 * Tue Oct 23 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.83-2mdk
384 - rebuild against libpng3
385 - added some doc for sir rpmlint
386 - #5583: option -g
387
388 * Thu Aug 23 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.83-1mdk
389 - version 0.2.83 : 
390   * Activated subtitles in overlay mode (far from perfect, but this
391     was an often requested feature).
392
393 * Fri Aug 10 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.82-1mdk
394 - version 0.2.82
395
396 * Mon Jul 30 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.81-1mdk
397 - version 0.2.81
398 - added vlc-ncurses
399
400 * Wed Jun 20 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.81-0.20010619-1mdk
401 - cvs snapshot
402 - added libdvdcss
403
404 * Wed Jun 13 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.80-2mdk
405 - fix build on ppc (c) dadou
406
407 * Mon Jun 11 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.80-1mdk
408 - version 0.2.80 : bug fixes and bug fixes and bug fixes and small
409   improvements of the gtk interface.
410 - corrected Summary in vlc-qt
411
412 * Wed May 23 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.73-2mdk
413 - added qt2 plug-in (vlc-qt)
414
415 * Wed May 16 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.73-1mdk
416 - version 0.2.73
417 - you can now get decss threw a plug-in
418 - rewritte srcipt to build vlc (decss plugin)
419 - rebuild with SDL 1.2
420
421 * Thu Apr 26 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.72-2mdk
422 - true 0.2.72
423
424 * Mon Apr 16 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.72-1mdk
425 - version 0.2.72
426 - package split into vlc, vlc-gnome, vlc-gtk
427
428 * Fri Apr 13 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.71-1mdk
429 - version 0.2.71 :
430   * Fixed segfaults when compiled with gcc 3.0pre and versions of gcc
431     shipped with the latest RedHat distributions.                    
432   * Fixed the BeOS CSS decryption.
433   * Fixed a few issues in IFO parsing.
434   * Fixed XVideo video output.
435   * Updated icons under Linux, BeOS, MacOS X.
436
437 * Wed Apr 11 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.70-1mdk
438 - version 0.2.70
439
440 * Thu Mar 22 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.63-1mdk
441 - version 0.2.63 : Bugfixes, bugfixes, and bugfixes again, a Gtk+ 
442   interface for the Gnome-impaired, an even better DVD support
443
444 * Fri Feb 16 2001 Yves Duret <yduret@mandrakesoft.com> 0.2.61-1mdk
445 - new version for all the DVD fans (add MPEG1 support, direct DVD support, 
446   DVD decryption, arbitrary, seeking in the stream, pause, fast forward 
447   and slow motion, hardware YUV acceleration enhanced CSS support and a few 
448   new interface features including drag'n'drop.
449 - first *real* public release (now under the GPL)
450
451 * Sat Jan 06 2001 David BAUDENS <baudens@mandrakesoft.com> 0.1.99i-2mdk
452 - Fix build and use right optimizations on PPC
453 - Enable SDL support
454 - Spec clean up
455
456 * Fri Jan  5 2001 Guillaume Cottenceau <gc@mandrakesoft.com> 0.1.99i-1mdk
457 - 0.1.99i, rebuild
458
459 * Fri Aug 25 2000 Guillaume Cottenceau <gc@mandrakesoft.com> 0.1.99h-1mdk
460 - 0.1.99h
461
462 * Mon Jul 10 2000 Guillaume Cottenceau <gc@mandrakesoft.com> 0.1.99c-1mdk
463 - first Mandrake package with help of Sam