# This is the debhelper compatability version to use.
export DH_COMPAT=3
+#
# Compilation options
-export CONFIG_FLAGS="--enable-release --prefix=/usr --enable-gnome --enable-gtk --enable-fb --with-ggi --enable-sdl --enable-esd --enable-qt"
-export LIBDVDCSS_FLAGS="--with-dvdcss=local-shared"
-export VIDDIR="usr/share/videolan"
-export PIXDIR="usr/share/pixmaps"
-export GNOMEDIR="usr/share/gnome/apps/Multimedia"
+#
-# Library options
-version=$(shell grep '^ *LIBDVDCSS_VERSION=[0-9]' configure.in | head -1 | cut -f2 -d=)
-major=$(shell echo "$(version)" | cut -f1 -d.)
+CONFIG_FLAGS = --enable-release --prefix=/usr
+CONFIG_FLAGS += \
+ --enable-gnome \
+ --enable-gtk \
+ --enable-familiar \
+ --enable-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 \
+ --enable-satellite \
+ --enable-ogg \
+ --enable-vorbis \
+ --enable-wxwindows \
+ --enable-slp \
+ --enable-flac \
+ --enable-skins \
+ --disable-basic-skins \
+ --disable-freetype \
+ --disable-mkv \
+ $(NULL)
-build: build-stamp
+# 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-libmpeg2 --with-libmpeg2-tree=extras/mpeg2dec
+
+# Glide is 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 \
+ && 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 `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
- case $(DEB_BUILD_ARCH) in \
- i386) \
- ARCH_FLAGS="--enable-alsa --with-glide" ;; \
- alpha|ia64|m68k|powerpc) \
- ARCH_FLAGS="--enable-alsa" ;; \
- *) \
- ARCH_FLAGS="" ;; \
- esac ;\
- ./configure $$ARCH_FLAGS --mandir=$${prefix}/share/man \
- --infodir=$${prefix}/share/info \
- $(shell echo $(CONFIG_FLAGS)) $(shell echo $(LIBDVDCSS_FLAGS))
+ # Build only VLC, with the non-PIC libs
+ $(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 >Makefile.pic \
+ && $(MAKE) -f Makefile.pic \
+ && rm -f Makefile.pic; \
+ fi
+ # HACKETY HACKETY HACK
+ if test ! -d CVS; then \
+ cd extras/faad/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
$(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
+ # 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
+
+ # Remove spurious autotools stuff
+ rm -f config.log confdefs.h
-$(MAKE) distclean
DESTDIR=`pwd`/debian/vlc/ $(MAKE) install prefix=/usr
- # make symlinks for packages and install plugins
- case $(DEB_BUILD_ARCH) in \
- i386) \
- ARCH_ALIASES="ggi gtk gnome esd sdl qt alsa glide" ;; \
- alpha|ia64|m68k|powerpc) \
- ARCH_ALIASES="ggi gtk gnome esd sdl qt alsa" ;; \
- *) \
- ARCH_ALIASES="ggi gtk gnome esd sdl qt" ;; \
- esac ;\
- for alias in $$ARCH_ALIASES ; do \
- ln -s vlc debian/vlc-$$alias/usr/share/doc/vlc-$$alias ; \
- mv debian/vlc/usr/lib/videolan/vlc/$$alias.so \
- debian/vlc-$$alias/usr/lib/videolan/vlc/ ; done
-
- mv debian/vlc/usr/bin/gvlc debian/vlc-gtk/usr/bin/
- mv debian/vlc/usr/bin/gnome-vlc debian/vlc-gnome/usr/bin/
- mv debian/vlc/usr/bin/qvlc debian/vlc-qt/usr/bin/
-
- mv debian/vlc/$(VIDDIR)/vlc.png debian/vlc/$(PIXDIR)
- mv debian/vlc/$(VIDDIR)/gvlc.xpm debian/vlc-gtk/$(VIDDIR)
- mv debian/vlc/$(VIDDIR)/gvlc.png debian/vlc-gtk/$(PIXDIR)
- mv debian/vlc/$(VIDDIR)/gnome-vlc.xpm debian/vlc-gnome/$(VIDDIR)
- mv debian/vlc/$(VIDDIR)/gnome-vlc.png debian/vlc-gnome/$(PIXDIR)
- mv debian/vlc/$(VIDDIR)/qvlc.xpm debian/vlc-qt/$(VIDDIR)
- mv debian/vlc/$(VIDDIR)/qvlc.png debian/vlc-qt/$(PIXDIR)
-
- cp debian/vlc.desktop debian/vlc/$(GNOMEDIR)
- cp debian/gvlc.desktop debian/vlc-gtk/$(GNOMEDIR)
- cp debian/gnome-vlc.desktop debian/vlc-gnome/$(GNOMEDIR)
+ # 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)
- #gzip -9 < doc/vlc.1 >| debian/vlc/usr/share/man/man1/vlc.1.gz
- ln -s vlc.1.gz debian/vlc-gtk/usr/share/man/man1/gvlc.1.gz
- ln -s vlc.1.gz debian/vlc-gnome/usr/share/man/man1/gnome-vlc.1.gz
- ln -s vlc.1.gz debian/vlc-qt/usr/share/man/man1/qvlc.1.gz
+ cp doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc
+ strfile doc/fortunes.txt debian/vlc/usr/share/games/fortunes/vlc.dat
-# libdvdcss start
- mv debian/vlc/usr/include/videolan/dvdcss.h \
- debian/libdvdcss$(major)-dev/usr/include/videolan
+ # 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
- mv debian/vlc/usr/lib/*.a debian/libdvdcss$(major)-dev/usr/lib
- mv debian/vlc/usr/lib/*.so debian/libdvdcss$(major)-dev/usr/lib
- mv debian/vlc/usr/lib/*.so.* debian/libdvdcss$(major)/usr/lib
- ln -s libdvdcss$(major) debian/libdvdcss$(major)-dev/usr/share/doc/libdvdcss$(major)-dev
-# libdvdcss stop
+ 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/
+ 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
+
+ # 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
dh_testdir
dh_testroot
# dh_installdebconf
- dh_installdocs
+ dh_installdocs -p vlc
# dh_installexamples
- dh_installmenu
-# dh_installemacsen
-# dh_installpam
-# dh_installinit
-# dh_installcron
- dh_installman doc/vlc.1
-# dh_installinfo
-# dh_undocumented
- dh_installchangelogs -Nvlc-gnome -Nvlc-gtk -Nvlc-ggi -Nvlc-glide -Nvlc-esd -Nvlc-alsa -Nvlc-sdl -Nvlc-qt ChangeLog
-# libdvdcss start
- dh_installchangelogs -Nvlc-gnome -Nvlc-gtk -Nvlc-ggi -Nvlc-glide -Nvlc-esd -Nvlc-alsa -Nvlc-sdl -Nvlc-qt ChangeLog.libdvdcss
-# libdvdcss stop
- dh_link
- dh_strip
- dh_compress
- dh_fixperms
- dh_makeshlibs
- dh_installdeb
+ 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 -s
+ dh_strip -s
+ dh_compress -s
+ dh_fixperms -s
+ dh_makeshlibs -s
+ dh_installdeb -s
# dh_perl
-
- case $(DEB_BUILD_ARCH) in \
- i386) \
- ARCH_EXCLUDE="" ;; \
- alpha|ia64|m68k|powerpc) \
- ARCH_EXCLUDE="-Nvlc-glide" ;; \
- *) \
- ARCH_EXCLUDE="-Nvlc-glide -Nvlc-alsa" ;; \
- esac ;\
- 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