#!/usr/bin/make -f
-# Made with the aid of debhelper by by Joey Hess,
+# 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
# Currently maintained by Anthony Fok <foka@debian.org>
# for Debian GNU/Linux.
-package=lilypond
+package = lilypond
-SHELL=/bin/bash
+SHELL = /bin/sh
+r = debian/$(package)
+r_doc = debian/$(package)-doc
+d = usr/share/doc/$(package)
+
+# "main_memory = 263000" in /etc/texmf/texmf.cnf isn't large enough
+# for latex to process standchen.dvi.latex, so adding extra_mem_* ...
+export extra_mem_top = 100000
+export extra_mem_bot = 100000
+export MODE = ljfour
+export BDPI = 600
+export USER_CFLAGS = -DDEBIAN
+export DEB_BUILD = yes
+export MAILADDRESS = lilypond@packages.debian.org
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
+# This is the debhelper compatibility version to use.
+export DH_COMPAT=3
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS
+
build: build-stamp
build-stamp:
dh_testdir
- ./configure --disable-checking --disable-debugging \
- --enable-printing --prefix=/usr --enable-optimise \
- --enable-shared
- make all
+
+ ./configure --enable-checking --disable-debugging \
+ --prefix=/usr --enable-optimise \
+ --infodir='$${prefix}/share/info' \
+ --mandir='$${prefix}/share/man'
+ $(MAKE) MAKE_PFA_FILES=1
+
touch build-stamp
+build-doc: build build-doc-stamp
+build-doc-stamp:
+ dh_testdir
+
+ $(MAKE) -C Documentation
+ $(MAKE) web
+
+ touch build-doc-stamp
+
clean:
dh_testdir
dh_testroot
- rm -f build-stamp
+ rm -f build-stamp build-doc-stamp
+ -$(MAKE) WWW-clean top-WWW-clean
-$(MAKE) distclean
- # Don't put dh_clean before "make distclean"! dh_clean is
- # "too smart" and it deletes too many files!
+
+ # Still not clean enough? Let's use... BRUTE STRENGTH! :-)
+ find . -type d -name 'out' -o -name 'out-www' | xargs rm -rf
+
dh_clean
- rm -f {,*/}out/{*,.build} flower/config.{log,status}
+
+install: DH_OPTIONS=
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+
+ # Add here commands to install the package into debian/tmp.
+ dh_installdirs
+ $(MAKE) prefix=$(PWD)/$(r)/usr MAKE_PFA_FILES=1 install
+
+ # 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
-# We have nothing to do by default.
+binary-indep: DH_OPTIONS=-i
+binary-indep: build-doc install
+ dh_testdir
+ dh_testroot
+ # Extract LilyPond website tarball ...
+ tar -C $(r_doc)/$(d)/html -xvzf out/web.tar.gz
+ # Add symlinks to the PostScript docs and LilyPond logo PNGs ...
+ cd $(r_doc)/$(d) \
+ && cp -s `find html/Documentation -name '*.ps.gz'` . \
+ && cp -s html/Documentation/pictures/out-www/*.png .
+ # Copy the DVI docs too ...
+ cp -a `find Documentation -name '*.dvi' ! -name 'lily-[0-9]*.dvi'` \
+ $(r_doc)/$(d)/
+ dh_installdocs
+ dh_installchangelogs
+ dh_link
+ dh_compress -Xusr/share/doc/lilypond/html/
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
-binary-arch: build
+binary-arch: DH_OPTIONS=-a
+binary-arch: build install
dh_testdir
dh_testroot
- dh_installdirs usr/lib/texmf/doc
- $(MAKE) prefix=`pwd`/debian/tmp/usr install
- ln -fs ../../../doc/lilypond debian/tmp/usr/lib/texmf/doc/lilypond
- dh_installdocs ANNOUNCE ANNOUNCE-0.1 README NEWS ONEWS DEDICATION \
- BUGS TODO \
- Documentation/out/*.text Documentation/*.doc \
- Documentation/lelie_logo.xpm bin/ly2dvi.sh
- dh_installexamples input/*.ly input/*.tex
+ cp -av lilypond-mode.el lilypond-font-lock.el \
+ $(r)/usr/share/emacs/site-lisp/
+ dh_installdocs DEDICATION NEWS ROADMAP *.txt
+
+# dh_installdocs DEDICATION NEWS ROADMAP *.txt \
+# Documentation/pictures/out/*.png
+# Documentation/out/*.txt
+# $(DVI_FILES) $(PS_FILES)
+# 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_installman
# dh_undocumented
- dh_installchangelogs
+ dh_installchangelogs -k CHANGES
+ dh_link
dh_strip
dh_compress
dh_fixperms
- dh_suidregister
dh_installdeb
dh_shlibdeps
dh_gencontrol
# dh_makeshlibs
- dh_du
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary
+.PHONY: build clean install binary-indep binary-arch binary