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