#!/usr/bin/make -f
-# debian/rules for the VideoLAN Client - uses debhelper.
+# debian/rules for the VLC media player - uses debhelper.
+# $Id$
# based on Joey Hess's one.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
-# This is the debhelper compatability version to use.
-export DH_COMPAT=3
-
#
# Compilation options
#
CONFIG_FLAGS += \
--enable-gnome \
--enable-gtk \
- --enable-familiar \
- --enable-fb \
+ --disable-familiar \
+ --disable-fb \
--enable-ggi \
--enable-sdl \
--enable-esd \
--enable-mp4 \
--enable-dvb \
--enable-dv \
- --enable-svgalib \
- --enable-satellite \
+ --disable-satellite \
--enable-ogg \
--enable-vorbis \
--enable-wxwindows \
--enable-slp \
+ --enable-flac \
+ --disable-skins \
+ --disable-basic-skins \
+ --enable-skins2 \
+ --enable-freetype \
+ --enable-mkv \
+ --enable-v4l \
+ --enable-pvr \
+ --enable-speex \
+ --enable-caca \
+ --enable-livedotcom \
+ --enable-libmpeg2 \
+ --enable-dts \
+ --enable-fribidi \
+ --enable-cdio \
+ --enable-mod \
$(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/faad
+CONFIG_FLAGS += --enable-faad --with-faad-tree=extras/faad2
-# Glide is only for x86
-ifeq ($(DEB_BUILD_ARCH),i386)
+# Glide and svgalib are only for x86
+ifeq ($(shell dpkg-architecture -qDEB_BUILD_GNU_CPU),i386)
CONFIG_FLAGS += --enable-glide
-else
-ARCH_EXCLUDE = -Nvlc-plugin-glide
+CONFIG_FLAGS += --enable-svgalib
endif
# Remove --without-dvdcss in non-totalitarian countries
# Build rules
#
-build: build-stamp
-build-stamp:
+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`
+ 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 \
- && cd libavcodec \
- && make; \
+ if test ! '(' -d CVS -o -d .svn ')'; then \
+ cd extras/ffmpeg \
+ && CC=$(CC) ./configure --enable-pp --enable-gpl --enable-zlib --disable-debug \
+ && cd libavcodec \
+ && $(MAKE); \
fi
- # Check that we have an faad tree in here (can be a symlink)
- test -d extras/faad
- if test ! -d CVS; then \
- cd extras/faad \
- && touch configure.in \
- && touch aclocal.m4 \
- && touch configure \
- && touch config.h.in \
- && touch `find . -name Makefile.in` \
- && ./configure --disable-shared \
- && cd libfaad \
- && make; \
+ # Check that we have an faad2 tree in here (can be a symlink)
+ test -d extras/faad2
+ if test ! '(' -d CVS -o -d .svn ')'; 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
- # Configure VLC and build it
+ # Configure VLC
./configure --mandir=$${prefix}/share/man \
- --infodir=$${prefix}/share/info $(CONFIG_FLAGS)
- $(MAKE)
+ --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 -o -d .svn ')'; then \
+ cd extras/ffmpeg/libavcodec \
+ && $(MAKE) clean \
+ && rm -f Makefile.pic \
+ && sed 's/^CFLAGS *=/&-fPIC -DPIC /' <Makefile >Makefile.pic \
+ && $(MAKE) -f Makefile.pic \
+ && rm -f Makefile.pic; \
+ fi
+
+ # HACKETY HACKETY HACK
+ if test ! '(' -d CVS -o -d .svn ')'; then \
+ cd extras/faad2/libfaad \
+ && $(MAKE) clean \
+ && $(MAKE) AM_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 build-stamp
+ 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 faad tree in here (can be a symlink)
- test -d extras/faad
- -if test ! -d CVS; then cd extras/faad && make distclean; fi
+ -if test ! '(' -d CVS -o -d .svn ')'; 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 -o -d .svn ')'; then \
+ cd extras/faad2 && $(MAKE) distclean; \
+ fi
+
+ # Removed ugly cruft
+ 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
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
+ #cp doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc
+ #strfile doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc.dat
+
+ rm -Rf debian/vlc/usr/share/vlc/skins
+ ln -s vlc.1.gz debian/vlc/usr/share/man/man1/svlc.1.gz
# Package: libvlc0-dev
mv debian/vlc/usr/bin/vlc-config debian/libvlc0-dev/usr/bin/
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/
+ debian/gnome-vlc/usr/lib/vlc/gui/
mv debian/vlc/usr/lib/vlc/gui/libgnome_plugin.so \
- debian/gnome-vlc/usr/lib/vlc/gui/
+ 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
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/
+ 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/
+ 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/
+ 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/
+ 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/
+ 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/
+ 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/
+ 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 ($(DEB_BUILD_ARCH),i386)
+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/
+ 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
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/
+ 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-mad
- ln -s vlc debian/vlc-plugin-mad/usr/share/doc/vlc-plugin-mad
- mv debian/vlc/usr/lib/vlc/audio_filter/libmpgatofixed32_plugin.so \
- debian/vlc-plugin-mad/usr/lib/vlc/audio_filter/
-
- mkdir -p debian/vlc-mad/usr/share/doc/
- ln -s vlc debian/vlc-mad/usr/share/doc/vlc-mad
-
# 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/
-
- mkdir -p debian/vlc-arts/usr/share/doc/
- ln -s vlc debian/vlc-arts/usr/share/doc/vlc-arts
-
- # Package: vlc-plugin-lirc
- ln -s vlc debian/vlc-plugin-lirc/usr/share/doc/vlc-plugin-lirc
- mv debian/vlc/usr/lib/vlc/control/liblirc_plugin.so \
- debian/vlc-plugin-lirc/usr/lib/vlc/control/
-
- mkdir -p debian/vlc-lirc/usr/share/doc/
- ln -s vlc debian/vlc-lirc/usr/share/doc/vlc-lirc
-
- # Package: vlc-plugin-aa
- ln -s vlc debian/vlc-plugin-aa/usr/share/doc/vlc-plugin-aa
- mv debian/vlc/usr/lib/vlc/video_output/libaa_plugin.so \
- debian/vlc-plugin-aa/usr/lib/vlc/video_output/
-
- mkdir -p debian/vlc-aa/usr/share/doc/
- ln -s vlc debian/vlc-aa/usr/share/doc/vlc-aa
-
- # Package: vlc-plugin-xosd
- ln -s vlc debian/vlc-plugin-xosd/usr/share/doc/vlc-plugin-xosd
- mv debian/vlc/usr/lib/vlc/visualization/libxosd_plugin.so \
- debian/vlc-plugin-xosd/usr/lib/vlc/visualization/
+ 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
+ # links for firefox
+ mkdir -p debian/mozilla-plugin-vlc/usr/lib/mozilla-firefox/plugins/
+ ln -s ../../mozilla/plugins/libvlcplugin.so debian/mozilla-plugin-vlc/usr/lib/mozilla-firefox/plugins/
+ mkdir -p debian/mozilla-plugin-vlc/usr/lib/mozilla-firefox/components/
+ ln -s ../../mozilla/components/vlcintf.xpt debian/mozilla-plugin-vlc/usr/lib/mozilla-firefox/components/
# 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/
+ debian/kvlc/usr/lib/vlc/gui/
mv debian/vlc/usr/share/vlc/ui.rc \
- debian/kvlc/usr/share/vlc
+ 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
-
- # Package: vlc-plugin-dv
- ln -s vlc debian/vlc-plugin-dv/usr/share/doc/vlc-plugin-dv
- mv debian/vlc/usr/lib/vlc/codec/libdv_plugin.so \
- debian/vlc-plugin-dv/usr/lib/vlc/codec
-
- # Package: vlc-plugin-a52
- ln -s vlc debian/vlc-plugin-a52/usr/share/doc/vlc-plugin-a52
- mv debian/vlc/usr/lib/vlc/audio_filter/liba52tofloat32_plugin.so \
- debian/vlc-plugin-a52/usr/lib/vlc/audio_filter
-
- # Package: vlc-plugin-dvb
- ln -s vlc debian/vlc-plugin-dvb/usr/share/doc/vlc-plugin-dvb
- mv debian/vlc/usr/lib/vlc/access/libsatellite_plugin.so \
- debian/vlc-plugin-dvb/usr/lib/vlc/access
-
- # Package: vlc-plugin-ogg
- ln -s vlc debian/vlc-plugin-ogg/usr/share/doc/vlc-plugin-ogg
- mv debian/vlc/usr/lib/vlc/demux/libogg_plugin.so \
- debian/vlc-plugin-ogg/usr/lib/vlc/demux
- mv debian/vlc/usr/lib/vlc/codec/libvorbis_plugin.so \
- debian/vlc-plugin-ogg/usr/lib/vlc/codec
+ debian/vlc-plugin-svgalib/usr/lib/vlc/video_output
+endif
# Package: wxvlc
mv debian/vlc/usr/bin/wxvlc 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/
+ debian/wxvlc/usr/lib/vlc/gui/
ln -s vlc.1.gz debian/wxvlc/usr/share/man/man1/wxvlc.1.gz
# Clean up
# dh_installdebconf
dh_installdocs -p vlc
# dh_installexamples
- dh_installmenu
+ 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
- cp ChangeLog debian/vlc/usr/share/doc/vlc/changelog
- cp debian/changelog debian/vlc/usr/share/doc/vlc/changelog.Debian
- dh_link
- dh_strip
- dh_compress
- dh_fixperms
- dh_makeshlibs
- dh_installdeb
+ 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 $(ARCH_EXCLUDE)
- dh_gencontrol $(ARCH_EXCLUDE)
- dh_md5sums $(ARCH_EXCLUDE)
- dh_builddeb $(ARCH_EXCLUDE)
+ 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