#!/usr/bin/make -f
# Made with the aid of debhelper by Joey Hess,
# based on the sample debian/rules file for GNU hello by Ian Jackson.
#
# This is free software; see the GNU General Public Licence
# version 2 or later for copying conditions.  There is NO warranty.
#
# Currently maintained by Anthony Fok <foka@debian.org>
# for Debian GNU/Linux.

package = lilypond1.3

SHELL = /bin/sh
r = debian/tmp
TMP = `pwd`/debian/tmp
d = usr/share/doc/$(package)

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# This is the debhelper compatibility version to use.
export DH_COMPAT=1

build: build-stamp
build-stamp:
	dh_testdir

	./configure --enable-checking --disable-debugging \
		--enable-printing --prefix=/usr --enable-optimise \
		--enable-shared \
		--infodir='$${prefix}/share/info' \
		--mandir='$${prefix}/share/man'
	$(MAKE) all
	$(MAKE) -C Documentation
	$(MAKE) -C Documentation/user ps
	$(MAKE) -C Documentation/pictures pngs

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp
	-$(MAKE) distclean
	# Remove obsolete files which are still in the upstream tarball (1.3.42)
	rm -f debian/control.in debian/doc-base debian/prerm
	dh_clean

	# Correct the owner of the out/dummy.dep files when built with sudo.
	if [ -n "$$SUDO_USER" -a -n "$$SUDO_GID" ]; then \
		find . -user root | xargs -r chown --dereference $$SUDO_USER.$$SUDO_GID; \
	fi

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs usr/share/doc/texmf \
		$(d)/examples \
		usr/share/emacs/site-lisp \
		usr/share/texmf/tex \
		usr/share/texmf/fonts/source/public \
		usr/share/texmf/fonts/afm/public \
		usr/share/texmf/fonts/tfm/public
	ln -fs ../$(package) $(r)/usr/share/doc/texmf/lilypond

	$(MAKE) prefix=$(TMP)/usr install

	ln -s ../../lilypond/tex $(r)/usr/share/texmf/tex/lilypond
	ln -s ../../../../lilypond/mf $(r)/usr/share/texmf/fonts/source/public/lilypond
	ln -s ../../../../lilypond/afm $(r)/usr/share/texmf/fonts/afm/public/lilypond
	ln -s ../../../../lilypond/tfm $(r)/usr/share/texmf/fonts/tfm/public/lilypond

	# Change from an absolute symlink to a relative symlink (Lintian)
	if [ -L $(r)/usr/share/lilypond/cmtfm ]; then \
		rm -f $(r)/usr/share/lilypond/cmtfm; \
		ln -s ../texmf/fonts/tfm/public/cm $(r)/usr/share/lilypond/cmtfm; \
	fi

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

binary-arch: build install
	dh_testdir
	dh_testroot
	cp -av lilypond-mode.el lilypond-font-lock.el \
		$(r)/usr/share/emacs/site-lisp/
	dh_installdocs DEDICATION NEWS ROADMAP *.txt \
		Documentation/pictures/out/*.png \
		Documentation/out/*.txt \
		Documentation/*/out/[a-z]*.dvi \
		Documentation/*/out/*.ps
	mkdir $(r)/$(d)/bibliography $(r)/$(d)/misc
	cp -a Documentation/bibliography/*.bib $(r)/$(d)/bibliography/
	cp -a Documentation/misc/[ACN]* $(r)/$(d)/misc/
#	dh_installexamples input
	cp -aP `find input mutopia \( -name '*.*ly' -o -name '*.abc' -o -name '*.tex' -o -name 'TODO' \)` \
		$(r)/$(d)/examples
	for i in `find $(r)/$(d)/examples/ -type d -name out`; do \
		mv -fv $$i/* $$i/..; rmdir $$i; done
#	dh_installmenu
	dh_installemacsen
#	dh_installcron
#	dh_installmanpages
#	dh_undocumented
#	dh_installchangelogs -k CHANGES
#	dh_installchangelogs CHANGES
# These give all errrors.
# Strange, in the maint-guide, it says add the upstream changelog name.
# Let's install as doc, then.  --jcn
	dh_installdocs CHANGES
	dh_installchangelogs
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
#	dh_suidregister
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
#	dh_makeshlibs
	dh_md5sums
	dh_builddeb

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