#!/usr/bin/make -f # debian/rules for the VideoLAN Client - uses debhelper. # $Id: rules,v 1.109 2004/01/04 04:53:07 sam Exp $ # based on Joey Hess's one. # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # # Compilation options # CONFIG_FLAGS = --enable-release --prefix=/usr CONFIG_FLAGS += \ --enable-gnome \ --enable-gtk \ --disable-familiar \ --disable-fb \ --enable-ggi \ --enable-sdl \ --enable-esd \ --enable-qt \ --enable-mad \ --enable-arts \ --enable-alsa \ --enable-lirc \ --enable-a52 \ --enable-aa \ --enable-dvbpsi \ --enable-xosd \ --enable-mozilla \ --enable-kde \ --enable-mp4 \ --enable-dvb \ --enable-dv \ --disable-satellite \ --enable-ogg \ --enable-vorbis \ --enable-wxwindows \ --enable-slp \ --enable-flac \ --enable-skins \ --disable-basic-skins \ --enable-freetype \ --enable-mkv \ --enable-v4l \ --enable-pvr \ --enable-speex \ --enable-caca \ $(NULL) # These ones are currently shipped with VLC CONFIG_FLAGS += --enable-ffmpeg --with-ffmpeg-tree=extras/ffmpeg CONFIG_FLAGS += --enable-faad --with-faad-tree=extras/faad2 CONFIG_FLAGS += --enable-libmpeg2 --with-libmpeg2-tree=extras/mpeg2dec # Glide and svgalib are only for x86 ifeq ($(shell dpkg-architecture -qDEB_BUILD_GNU_CPU),i386) CONFIG_FLAGS += --enable-glide CONFIG_FLAGS += --enable-svgalib endif # Remove --without-dvdcss in non-totalitarian countries CONFIG_FLAGS += --enable-dvd --without-dvdcss # A few shortcuts VIDDIR = usr/share/vlc PIXDIR = usr/share/pixmaps GNOMEDIR = usr/share/gnome/apps/Multimedia # # Build rules # configure: configure-stamp configure-stamp: dh_testdir # Touch stuff touch configure.ac \ && touch aclocal.m4 \ && touch configure \ && touch config.h.in \ && touch `find . -name Makefile.in` # Check that we have an ffmpeg tree in here (can be a symlink) test -d extras/ffmpeg if test ! -d CVS; then \ cd extras/ffmpeg \ && ./configure --enable-pp \ && cd libavcodec \ && $(MAKE); \ fi # Check that we have an faad2 tree in here (can be a symlink) test -d extras/faad2 if test ! -d CVS; then \ cd extras/faad2 \ && touch `find . -name configure.in` \ && touch `find . -name aclocal.m4` \ && touch `find . -name configure` \ && touch `find . -name config.h.in` \ && touch `find . -name Makefile.in` \ && ./configure --disable-shared \ && cd libfaad \ && $(MAKE); \ fi # Check that we have an mpeg2dec tree in here (can be a symlink) test -d extras/mpeg2dec if test ! -d CVS; then \ cd extras/mpeg2dec \ && touch configure.in \ && touch aclocal.m4 \ && touch acinclude.m4 \ && touch configure \ && touch `find . -name config.h.in` \ && touch `find . -name Makefile.in` \ && ./configure --disable-shared \ && cd libmpeg2 \ && $(MAKE); \ fi # Configure VLC ./configure --mandir=$${prefix}/share/man \ --infodir=$${prefix}/share/info $(CONFIG_FLAGS) touch configure-stamp build: configure-stamp build-stamp build-stamp: dh_testdir # Build only VLC, with the non-PIC libs $(MAKE) include/vlc_symbols.h cd modules && AM_MAKEFLAGS='plugin=no pic=no' $(MAKE) $(MAKE) vlc ifneq ($(shell dpkg-architecture -qDEB_BUILD_GNU_CPU),i386) # Hackety hackety hack if test ! -d CVS; then \ cd extras/ffmpeg/libavcodec \ && $(MAKE) clean \ && rm -f Makefile.pic \ && sed 's/^CFLAGS *=/&-fPIC -DPIC /' Makefile.pic \ && $(MAKE) -f Makefile.pic \ && rm -f Makefile.pic; \ fi # HACKETY HACKETY HACK if test ! -d CVS; then \ cd extras/faad2/libfaad \ && $(MAKE) clean \ && $(MAKE) AM_CFLAGS=-fPIC; \ fi # HACK ME PLENTY MORE!!! if test ! -d CVS; then \ cd extras/mpeg2dec/libmpeg2 \ && $(MAKE) clean \ && $(MAKE) LIBMPEG2_CFLAGS=-fPIC; \ fi endif # Build all the rest, with the PIC libs AM_MAKEFLAGS='builtin=no' $(MAKE) touch build-stamp clean: dh_testdir dh_testroot rm -f configure-stamp build-stamp # Check that we have an ffmpeg tree in here (can be a symlink) test -d extras/ffmpeg -if test ! -d CVS; then cd extras/ffmpeg && $(MAKE) distclean; fi # Check that we have an faad2 tree in here (can be a symlink) test -d extras/faad2 -if test ! -d CVS; then cd extras/faad2 && $(MAKE) distclean; fi # Check that we have an mpeg2dec tree in here (can be a symlink) test -d extras/mpeg2dec -if test ! -d CVS; then cd extras/mpeg2dec && $(MAKE) distclean; fi # Removed ugly cruft rm -f extras/mpeg2dec/include/mpeg2dec rm -f src/misc/modules_builtin.h rm -f mozilla/vlcintf.xpt mozilla/vlcintf.h # Remove spurious autotools stuff rm -f config.log confdefs.h -$(MAKE) distclean dh_clean install: build dh_testdir dh_testroot dh_clean -k dh_installdirs DESTDIR=`pwd`/debian/vlc/ $(MAKE) install prefix=/usr # Package: vlc mv debian/vlc/$(VIDDIR)/vlc48x48.png debian/vlc/$(PIXDIR)/vlc.png mv debian/vlc/$(VIDDIR)/vlc32x32.xpm debian/vlc/$(VIDDIR)/vlc.xpm cp debian/gvlc.desktop debian/gvlc/$(GNOMEDIR) cp debian/gnome-vlc.desktop debian/gnome-vlc/$(GNOMEDIR) #cp doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc #strfile doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc.dat # Package: libvlc0-dev mv debian/vlc/usr/bin/vlc-config debian/libvlc0-dev/usr/bin/ mv debian/vlc/usr/lib/*.a debian/libvlc0-dev/usr/lib/ mv debian/vlc/usr/lib/vlc/*.a debian/libvlc0-dev/usr/lib/vlc/ mv debian/vlc/usr/include/vlc/*.h debian/libvlc0-dev/usr/include/vlc/ rm -Rf debian/vlc/usr/include ln -s vlc debian/libvlc0-dev/usr/share/doc/libvlc0-dev # Package: gnome-vlc mv debian/vlc/usr/bin/gnome-vlc debian/gnome-vlc/usr/bin/ ln -s vlc debian/gnome-vlc/usr/share/doc/gnome-vlc mv debian/vlc/usr/lib/vlc/misc/libgnome_main_plugin.so \ debian/gnome-vlc/usr/lib/vlc/gui/ mv debian/vlc/usr/lib/vlc/gui/libgnome_plugin.so \ debian/gnome-vlc/usr/lib/vlc/gui/ ln -s vlc.1.gz debian/gnome-vlc/usr/share/man/man1/gnome-vlc.1.gz mv debian/vlc/$(VIDDIR)/gnome-vlc32x32.xpm debian/gnome-vlc/$(VIDDIR)/gnome-vlc.xpm mv debian/vlc/$(VIDDIR)/gnome-vlc48x48.png debian/gnome-vlc/$(PIXDIR)/gnome-vlc.png # Package: vlc-gnome mkdir -p debian/vlc-gnome/usr/share/doc/ ln -s vlc debian/vlc-gnome/usr/share/doc/vlc-gnome # Package: gvlc mv debian/vlc/usr/bin/gvlc debian/gvlc/usr/bin/ ln -s vlc debian/gvlc/usr/share/doc/gvlc mv debian/vlc/usr/lib/vlc/misc/libgtk_main_plugin.so \ debian/gvlc/usr/lib/vlc/gui/ mv debian/vlc/usr/lib/vlc/gui/libgtk_plugin.so \ debian/gvlc/usr/lib/vlc/gui/ #mv debian/vlc/usr/lib/vlc/gui/libfamiliar_plugin.so \ # debian/gvlc/usr/lib/vlc/gui/ ln -s vlc.1.gz debian/gvlc/usr/share/man/man1/gvlc.1.gz mv debian/vlc/$(VIDDIR)/gvlc32x32.xpm debian/gvlc/$(VIDDIR)/gvlc.xpm mv debian/vlc/$(VIDDIR)/gvlc48x48.png debian/gvlc/$(PIXDIR)/gvlc.png # Package: vlc-gtk mkdir -p debian/vlc-gtk/usr/share/doc/ ln -s vlc debian/vlc-gtk/usr/share/doc/vlc-gtk # Package: vlc-plugin-esd ln -s vlc debian/vlc-plugin-esd/usr/share/doc/vlc-plugin-esd mv debian/vlc/usr/lib/vlc/audio_output/libesd_plugin.so \ debian/vlc-plugin-esd/usr/lib/vlc/audio_output/ # Package: vlc-esd mkdir -p debian/vlc-esd/usr/share/doc/ ln -s vlc debian/vlc-esd/usr/share/doc/vlc-esd # Package: vlc-plugin-alsa ln -s vlc debian/vlc-plugin-alsa/usr/share/doc/vlc-plugin-alsa mv debian/vlc/usr/lib/vlc/audio_output/libalsa_plugin.so \ debian/vlc-plugin-alsa/usr/lib/vlc/audio_output/ # Package: vlc-alsa mkdir -p debian/vlc-alsa/usr/share/doc/ ln -s vlc debian/vlc-alsa/usr/share/doc/vlc-alsa # Package: vlc-plugin-sdl ln -s vlc debian/vlc-plugin-sdl/usr/share/doc/vlc-plugin-sdl mv debian/vlc/usr/lib/vlc/audio_output/libaout_sdl_plugin.so \ debian/vlc-plugin-sdl/usr/lib/vlc/audio_output/ mv debian/vlc/usr/lib/vlc/video_output/libvout_sdl_plugin.so \ debian/vlc-plugin-sdl/usr/lib/vlc/video_output/ # Package: vlc-sdl mkdir -p debian/vlc-sdl/usr/share/doc/ ln -s vlc debian/vlc-sdl/usr/share/doc/vlc-sdl # Package: vlc-plugin-ggi ln -s vlc debian/vlc-plugin-ggi/usr/share/doc/vlc-plugin-ggi mv debian/vlc/usr/lib/vlc/video_output/libggi_plugin.so \ debian/vlc-plugin-ggi/usr/lib/vlc/video_output/ # Package: vlc-ggi mkdir -p debian/vlc-ggi/usr/share/doc/ ln -s vlc debian/vlc-ggi/usr/share/doc/vlc-ggi # Package: vlc-plugin-glide ifeq ($(shell dpkg-architecture -qDEB_BUILD_GNU_CPU),i386) ln -s vlc debian/vlc-plugin-glide/usr/share/doc/vlc-plugin-glide mv debian/vlc/usr/lib/vlc/video_output/libglide_plugin.so \ debian/vlc-plugin-glide/usr/lib/vlc/video_output/ # Package: vlc-glide mkdir -p debian/vlc-glide/usr/share/doc/ ln -s vlc debian/vlc-glide/usr/share/doc/vlc-glide endif # Package: qvlc mv debian/vlc/usr/bin/qvlc debian/qvlc/usr/bin/ ln -s vlc debian/qvlc/usr/share/doc/qvlc mv debian/vlc/usr/lib/vlc/gui/libqt_plugin.so \ debian/qvlc/usr/lib/vlc/gui/ ln -s vlc.1.gz debian/qvlc/usr/share/man/man1/qvlc.1.gz mv debian/vlc/$(VIDDIR)/qvlc32x32.xpm debian/qvlc/$(VIDDIR)/qvlc.xpm mv debian/vlc/$(VIDDIR)/qvlc48x48.png debian/qvlc/$(PIXDIR)/qvlc.png # Package: vlc-qt mkdir -p debian/vlc-qt/usr/share/doc/ ln -s vlc debian/vlc-qt/usr/share/doc/vlc-qt # Package: vlc-plugin-arts ln -s vlc debian/vlc-plugin-arts/usr/share/doc/vlc-plugin-arts mv debian/vlc/usr/lib/vlc/audio_output/libarts_plugin.so \ debian/vlc-plugin-arts/usr/lib/vlc/audio_output/ # Package: mozilla-plugin-vlc ln -s vlc debian/mozilla-plugin-vlc/usr/share/doc/mozilla-plugin-vlc mv debian/vlc/usr/lib/mozilla debian/mozilla-plugin-vlc/usr/lib # Package: kvlc mv debian/vlc/usr/bin/kvlc debian/kvlc/usr/bin/ ln -s vlc debian/kvlc/usr/share/doc/kvlc mv debian/vlc/usr/lib/vlc/gui/libkde_plugin.so \ debian/kvlc/usr/lib/vlc/gui/ mv debian/vlc/usr/share/vlc/ui.rc \ debian/kvlc/usr/share/vlc ln -s vlc.1.gz debian/kvlc/usr/share/man/man1/kvlc.1.gz mv debian/vlc/$(VIDDIR)/kvlc32x32.xpm debian/kvlc/$(VIDDIR)/kvlc.xpm mv debian/vlc/$(VIDDIR)/kvlc48x48.png debian/kvlc/$(PIXDIR)/kvlc.png # Package: vlc-plugin-svgalib ifeq ($(shell dpkg-architecture -qDEB_BUILD_GNU_CPU),i386) ln -s vlc debian/vlc-plugin-svgalib/usr/share/doc/vlc-plugin-svgalib mv debian/vlc/usr/lib/vlc/video_output/libsvgalib_plugin.so \ debian/vlc-plugin-svgalib/usr/lib/vlc/video_output endif # Package: wxvlc mv debian/vlc/usr/bin/wxvlc debian/wxvlc/usr/bin/ mv debian/vlc/usr/bin/svlc debian/wxvlc/usr/bin/ ln -s vlc debian/wxvlc/usr/share/doc/wxvlc mv debian/vlc/usr/lib/vlc/gui/libwxwindows_plugin.so \ debian/wxvlc/usr/lib/vlc/gui/ mv debian/vlc/usr/lib/vlc/gui/libskins_plugin.so \ debian/wxvlc/usr/lib/vlc/gui/ mv debian/vlc/usr/share/vlc/skins \ debian/wxvlc/usr/share/vlc/ ln -s vlc.1.gz debian/wxvlc/usr/share/man/man1/wxvlc.1.gz ln -s vlc.1.gz debian/wxvlc/usr/share/man/man1/svlc.1.gz # Clean up rm -f debian/vlc/$(VIDDIR)/*.png #gzip -9 < doc/vlc.1 >| debian/vlc/usr/share/man/man1/vlc.1.gz # Build architecture-independent files here. binary-indep: build install # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install # dh_testversion dh_testdir dh_testroot # dh_installdebconf dh_installdocs -p vlc # dh_installexamples dh_installmenu -s dh_installmime -s dh_installman doc/vlc.1 -p vlc dh_installman doc/vlc-config.1 -p libvlc0-dev dh_installchangelogs ChangeLog -p vlc for x in doc/ChangeLog-* ; do cp "doc/ChangeLog-$${x#*-}" "debian/vlc/usr/share/doc/vlc/changelog$${x#*-}" ; done dh_link -s dh_strip -s dh_compress -s dh_fixperms -s dh_makeshlibs -s dh_installdeb -s # dh_perl dh_shlibdeps -s dh_gencontrol -s dh_md5sums -s dh_builddeb -s binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install