]> git.sesse.net Git - vlc/blob - debian/rules
f5e3ff0288eb5b3162ffdce3137dc186131b2724
[vlc] / debian / rules
1 #!/usr/bin/make -f
2 # debian/rules for the VideoLAN Client - uses debhelper.
3 # based on Joey Hess's one.
4
5 # Uncomment this to turn on verbose mode.
6 #export DH_VERBOSE=1
7
8 # This is the debhelper compatability version to use.
9 export DH_COMPAT=3
10
11 #
12 # Compilation options
13 #
14
15 CONFIG_FLAGS = --enable-release --prefix=/usr
16 CONFIG_FLAGS += \
17         --enable-gnome \
18         --enable-gtk \
19         --enable-familiar \
20         --enable-fb \
21         --enable-ggi \
22         --enable-sdl \
23         --enable-esd \
24         --enable-qt \
25         --enable-mad \
26         --enable-arts \
27         --enable-alsa \
28         --enable-lirc \
29         --enable-a52 \
30         --enable-aa \
31         --enable-dvbpsi \
32         --enable-xosd \
33         --enable-mozilla \
34         --enable-kde \
35         --enable-mp4 \
36         --enable-dvb \
37         --enable-dv \
38         --enable-svgalib \
39         --enable-satellite \
40         --enable-ogg \
41         --enable-vorbis \
42         --enable-wxwindows \
43         --enable-slp \
44         $(NULL)
45
46 # These ones are currently shipped with VLC
47 CONFIG_FLAGS += --enable-ffmpeg --with-ffmpeg-tree=extras/ffmpeg
48 CONFIG_FLAGS += --enable-faad --with-faad-tree=extras/faad
49
50 # Glide is only for x86
51 ifeq ($(DEB_BUILD_ARCH),i386)
52 CONFIG_FLAGS += --enable-glide
53 else
54 ARCH_EXCLUDE = -Nvlc-plugin-glide
55 endif
56
57 # Remove --without-dvdcss in non-totalitarian countries
58 CONFIG_FLAGS += --enable-dvd --without-dvdcss
59
60 # A few shortcuts
61 VIDDIR = usr/share/vlc
62 PIXDIR = usr/share/pixmaps
63 GNOMEDIR = usr/share/gnome/apps/Multimedia
64
65 #
66 # Build rules
67 #
68
69 build: build-stamp
70 build-stamp:
71         dh_testdir
72
73         # Touch stuff
74         touch configure.ac.in \
75         && touch configure.ac \
76         && touch aclocal.m4 \
77         && touch configure \
78         && touch config.h.in \
79         && touch `find . -name Makefile.in`
80
81         # Check that we have an ffmpeg tree in here (can be a symlink)
82         test -d extras/ffmpeg
83         if test ! -d CVS; then \
84                 cd extras/ffmpeg \
85                 && ./configure \
86                 && cd libavcodec \
87                 && make; \
88         fi
89
90         # Check that we have an faad tree in here (can be a symlink)
91         test -d extras/faad
92         if test ! -d CVS; then \
93                 cd extras/faad \
94                 && touch configure.in \
95                 && touch aclocal.m4 \
96                 && touch configure \
97                 && touch config.h.in \
98                 && touch `find . -name Makefile.in` \
99                 && ./configure --disable-shared \
100                 && cd libfaad \
101                 && make; \
102         fi
103
104         # Configure VLC and build it
105         ./configure --mandir=$${prefix}/share/man \
106                 --infodir=$${prefix}/share/info $(CONFIG_FLAGS)
107         $(MAKE)
108
109         touch build-stamp
110
111 clean:
112         dh_testdir
113         dh_testroot
114         rm -f build-stamp
115
116         # Check that we have an ffmpeg tree in here (can be a symlink)
117         test -d extras/ffmpeg
118         -if test ! -d CVS; then cd extras/ffmpeg && make distclean; fi
119         # Check that we have an faad tree in here (can be a symlink)
120         test -d extras/faad
121         -if test ! -d CVS; then cd extras/faad && make distclean; fi
122
123         -$(MAKE) distclean
124
125         dh_clean
126
127 install: build
128         dh_testdir
129         dh_testroot
130         dh_clean -k
131         dh_installdirs
132
133         DESTDIR=`pwd`/debian/vlc/ $(MAKE) install prefix=/usr
134
135         # Package: vlc
136         mv debian/vlc/$(VIDDIR)/vlc48x48.png debian/vlc/$(PIXDIR)/vlc.png
137         mv debian/vlc/$(VIDDIR)/vlc32x32.xpm debian/vlc/$(VIDDIR)/vlc.xpm
138         cp debian/gvlc.desktop debian/gvlc/$(GNOMEDIR)
139         cp debian/gnome-vlc.desktop debian/gnome-vlc/$(GNOMEDIR)
140
141         # Package: libvlc0-dev
142         mv debian/vlc/usr/bin/vlc-config debian/libvlc0-dev/usr/bin/
143         mv debian/vlc/usr/lib/*.a debian/libvlc0-dev/usr/lib/
144         mv debian/vlc/usr/lib/vlc/*.a debian/libvlc0-dev/usr/lib/vlc/
145         mv debian/vlc/usr/include/vlc/*.h debian/libvlc0-dev/usr/include/vlc/
146         rm -Rf debian/vlc/usr/include
147         ln -s vlc debian/libvlc0-dev/usr/share/doc/libvlc0-dev
148
149         # Package: gnome-vlc
150         mv debian/vlc/usr/bin/gnome-vlc debian/gnome-vlc/usr/bin/
151         ln -s vlc debian/gnome-vlc/usr/share/doc/gnome-vlc
152         mv debian/vlc/usr/lib/vlc/misc/libgnome_main_plugin.so \
153                 debian/gnome-vlc/usr/lib/vlc/gui/
154         mv debian/vlc/usr/lib/vlc/gui/libgnome_plugin.so \
155                 debian/gnome-vlc/usr/lib/vlc/gui/
156         ln -s vlc.1.gz debian/gnome-vlc/usr/share/man/man1/gnome-vlc.1.gz
157         mv debian/vlc/$(VIDDIR)/gnome-vlc32x32.xpm debian/gnome-vlc/$(VIDDIR)/gnome-vlc.xpm
158         mv debian/vlc/$(VIDDIR)/gnome-vlc48x48.png debian/gnome-vlc/$(PIXDIR)/gnome-vlc.png
159
160         # Package: gvlc
161         mv debian/vlc/usr/bin/gvlc debian/gvlc/usr/bin/
162         ln -s vlc debian/gvlc/usr/share/doc/gvlc
163         mv debian/vlc/usr/lib/vlc/misc/libgtk_main_plugin.so \
164                 debian/gvlc/usr/lib/vlc/gui/
165         mv debian/vlc/usr/lib/vlc/gui/libgtk_plugin.so \
166                 debian/gvlc/usr/lib/vlc/gui/
167         mv debian/vlc/usr/lib/vlc/gui/libfamiliar_plugin.so \
168                 debian/gvlc/usr/lib/vlc/gui/
169         ln -s vlc.1.gz debian/gvlc/usr/share/man/man1/gvlc.1.gz
170         mv debian/vlc/$(VIDDIR)/gvlc32x32.xpm debian/gvlc/$(VIDDIR)/gvlc.xpm
171         mv debian/vlc/$(VIDDIR)/gvlc48x48.png debian/gvlc/$(PIXDIR)/gvlc.png
172
173         # Package: vlc-plugin-esd
174         ln -s vlc debian/vlc-plugin-esd/usr/share/doc/vlc-plugin-esd
175         mv debian/vlc/usr/lib/vlc/audio_output/libesd_plugin.so \
176                 debian/vlc-plugin-esd/usr/lib/vlc/audio_output/
177
178         # Package: vlc-plugin-alsa
179         ln -s vlc debian/vlc-plugin-alsa/usr/share/doc/vlc-plugin-alsa
180         mv debian/vlc/usr/lib/vlc/audio_output/libalsa_plugin.so \
181                 debian/vlc-plugin-alsa/usr/lib/vlc/audio_output/
182
183         # Package: vlc-plugin-sdl
184         ln -s vlc debian/vlc-plugin-sdl/usr/share/doc/vlc-plugin-sdl
185         mv debian/vlc/usr/lib/vlc/audio_output/libaout_sdl_plugin.so \
186                 debian/vlc-plugin-sdl/usr/lib/vlc/audio_output/
187         mv debian/vlc/usr/lib/vlc/video_output/libvout_sdl_plugin.so \
188                 debian/vlc-plugin-sdl/usr/lib/vlc/video_output/
189
190         # Package: vlc-plugin-ggi
191         ln -s vlc debian/vlc-plugin-ggi/usr/share/doc/vlc-plugin-ggi
192         mv debian/vlc/usr/lib/vlc/video_output/libggi_plugin.so \
193                 debian/vlc-plugin-ggi/usr/lib/vlc/video_output/
194
195         # Package: vlc-plugin-glide
196 ifeq ($(DEB_BUILD_ARCH),i386)
197         ln -s vlc debian/vlc-plugin-glide/usr/share/doc/vlc-plugin-glide
198         mv debian/vlc/usr/lib/vlc/video_output/libglide_plugin.so \
199                 debian/vlc-plugin-glide/usr/lib/vlc/video_output/
200 endif
201
202         # Package: qvlc
203         mv debian/vlc/usr/bin/qvlc debian/qvlc/usr/bin/
204         ln -s vlc debian/qvlc/usr/share/doc/qvlc
205         mv debian/vlc/usr/lib/vlc/gui/libqt_plugin.so \
206                 debian/qvlc/usr/lib/vlc/gui/
207         ln -s vlc.1.gz debian/qvlc/usr/share/man/man1/qvlc.1.gz
208         mv debian/vlc/$(VIDDIR)/qvlc32x32.xpm debian/qvlc/$(VIDDIR)/qvlc.xpm
209         mv debian/vlc/$(VIDDIR)/qvlc48x48.png debian/qvlc/$(PIXDIR)/qvlc.png
210
211         # Package: vlc-plugin-mad
212         ln -s vlc debian/vlc-plugin-mad/usr/share/doc/vlc-plugin-mad
213         mv debian/vlc/usr/lib/vlc/audio_filter/libmpgatofixed32_plugin.so \
214                 debian/vlc-plugin-mad/usr/lib/vlc/audio_filter/
215
216         # Package: vlc-plugin-arts
217         ln -s vlc debian/vlc-plugin-arts/usr/share/doc/vlc-plugin-arts
218         mv debian/vlc/usr/lib/vlc/audio_output/libarts_plugin.so \
219                 debian/vlc-plugin-arts/usr/lib/vlc/audio_output/
220
221         # Package: vlc-plugin-lirc
222         ln -s vlc debian/vlc-plugin-lirc/usr/share/doc/vlc-plugin-lirc
223         mv debian/vlc/usr/lib/vlc/control/liblirc_plugin.so \
224                 debian/vlc-plugin-lirc/usr/lib/vlc/control/
225
226         # Package: vlc-plugin-aa
227         ln -s vlc debian/vlc-plugin-aa/usr/share/doc/vlc-plugin-aa
228         mv debian/vlc/usr/lib/vlc/video_output/libaa_plugin.so \
229                 debian/vlc-plugin-aa/usr/lib/vlc/video_output/
230
231         # Package: vlc-plugin-xosd
232         ln -s vlc debian/vlc-plugin-xosd/usr/share/doc/vlc-plugin-xosd
233         mv debian/vlc/usr/lib/vlc/visualization/libxosd_plugin.so \
234                 debian/vlc-plugin-xosd/usr/lib/vlc/visualization/
235
236         # Package: mozilla-plugin-vlc
237         ln -s vlc debian/mozilla-plugin-vlc/usr/share/doc/mozilla-plugin-vlc
238         mv debian/vlc/usr/lib/mozilla debian/mozilla-plugin-vlc/usr/lib
239
240         # Package: kvlc
241         mv debian/vlc/usr/bin/kvlc debian/kvlc/usr/bin/
242         ln -s vlc debian/kvlc/usr/share/doc/kvlc
243         mv debian/vlc/usr/lib/vlc/gui/libkde_plugin.so \
244                 debian/kvlc/usr/lib/vlc/gui/
245         mv debian/vlc/usr/share/vlc/ui.rc \
246                 debian/kvlc/usr/share/vlc
247         ln -s vlc.1.gz debian/kvlc/usr/share/man/man1/kvlc.1.gz
248         mv debian/vlc/$(VIDDIR)/kvlc32x32.xpm debian/kvlc/$(VIDDIR)/kvlc.xpm
249         mv debian/vlc/$(VIDDIR)/kvlc48x48.png debian/kvlc/$(PIXDIR)/kvlc.png
250
251         # Package: vlc-plugin-svgalib
252         ln -s vlc debian/vlc-plugin-svgalib/usr/share/doc/vlc-plugin-svgalib
253         mv debian/vlc/usr/lib/vlc/video_output/libsvgalib_plugin.so \
254                 debian/vlc-plugin-svgalib/usr/lib/vlc/video_output
255
256         # Package: vlc-plugin-dv
257         ln -s vlc debian/vlc-plugin-dv/usr/share/doc/vlc-plugin-dv
258         mv debian/vlc/usr/lib/vlc/codec/libdv_plugin.so \
259                 debian/vlc-plugin-dv/usr/lib/vlc/codec
260
261         # Package: vlc-plugin-a52
262         ln -s vlc debian/vlc-plugin-a52/usr/share/doc/vlc-plugin-a52
263         mv debian/vlc/usr/lib/vlc/audio_filter/liba52tofloat32_plugin.so \
264                 debian/vlc-plugin-a52/usr/lib/vlc/audio_filter
265
266         # Package: vlc-plugin-dvb
267         ln -s vlc debian/vlc-plugin-dvb/usr/share/doc/vlc-plugin-dvb
268         mv debian/vlc/usr/lib/vlc/access/libsatellite_plugin.so \
269                 debian/vlc-plugin-dvb/usr/lib/vlc/access
270
271         # Package: vlc-plugin-ogg
272         ln -s vlc debian/vlc-plugin-ogg/usr/share/doc/vlc-plugin-ogg
273         mv debian/vlc/usr/lib/vlc/demux/libogg_plugin.so \
274                 debian/vlc-plugin-ogg/usr/lib/vlc/demux
275         mv debian/vlc/usr/lib/vlc/codec/libvorbis_plugin.so \
276                 debian/vlc-plugin-ogg/usr/lib/vlc/codec
277
278         # Package: wxvlc
279         mv debian/vlc/usr/bin/wxvlc debian/wxvlc/usr/bin/
280         ln -s vlc debian/wxvlc/usr/share/doc/wxvlc
281         mv debian/vlc/usr/lib/vlc/gui/libwxwindows_plugin.so \
282                 debian/wxvlc/usr/lib/vlc/gui/
283         ln -s vlc.1.gz debian/wxvlc/usr/share/man/man1/wxvlc.1.gz
284
285         # Clean up
286         rm -f debian/vlc/$(VIDDIR)/*.png
287
288         #gzip -9 < doc/vlc.1 >| debian/vlc/usr/share/man/man1/vlc.1.gz
289
290 # Build architecture-independent files here.
291 binary-indep: build install
292 # We have nothing to do by default.
293
294 # Build architecture-dependent files here.
295 binary-arch: build install
296 #       dh_testversion
297         dh_testdir
298         dh_testroot
299 #       dh_installdebconf       
300         dh_installdocs -p vlc
301 #       dh_installexamples
302         dh_installmenu
303         dh_installman doc/vlc.1 -p vlc
304         dh_installman doc/vlc-config.1 -p libvlc0-dev
305 #       dh_installchangelogs ChangeLog -p vlc
306         cp ChangeLog debian/vlc/usr/share/doc/vlc/changelog
307         cp debian/changelog debian/vlc/usr/share/doc/vlc/changelog.Debian
308         dh_link
309         dh_strip
310         dh_compress
311         dh_fixperms
312         dh_makeshlibs
313         dh_installdeb
314 #       dh_perl
315         dh_shlibdeps $(ARCH_EXCLUDE)
316         dh_gencontrol $(ARCH_EXCLUDE)
317         dh_md5sums $(ARCH_EXCLUDE)
318         dh_builddeb $(ARCH_EXCLUDE)
319
320 binary: binary-indep binary-arch
321 .PHONY: build clean binary-indep binary-arch binary install
322