#!/usr/bin/make -f
# debian/rules for the VideoLAN Client - uses debhelper.
# 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
export CONFIG_FLAGS="--enable-release --prefix=/usr --enable-gnome --enable-gtk --enable-fb --with-ggi --with-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=' configure.in | cut -f2 -d=)
major=$(shell echo $(version) | cut -f1 -d.)

build: 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))

	$(MAKE)

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	-$(MAKE) distclean

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	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)

	#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

# libdvdcss start
	mv debian/vlc/usr/include/videolan/dvdcss.h \
				debian/libdvdcss$(version)-dev/usr/include/videolan
	rmdir debian/vlc/usr/include/videolan
	rmdir debian/vlc/usr/include
	mv debian/vlc/usr/lib/*.a debian/libdvdcss$(version)-dev/usr/lib
	mv debian/vlc/usr/lib/*.so debian/libdvdcss$(version)-dev/usr/lib
	mv debian/vlc/usr/lib/*.so.* debian/libdvdcss$(version)/usr/lib
	ln -s libdvdcss$(version) debian/libdvdcss$(version)-dev/usr/share/doc/libdvdcss$(version)-dev
# libdvdcss stop

# 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
#	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_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

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install