]> git.donarmstrong.com Git - lilypond.git/blobdiff - debian/rules
Properly remove empty /usr/share/info/lilypond directory and replace with symlink
[lilypond.git] / debian / rules
index d8dfa0a75558fb59090f4306d04553309c8ba940..ac50d8b899cca72ac29b52150cafd620897f08e5 100755 (executable)
@@ -1,6 +1,5 @@
 #!/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.
+# debian/rules for LilyPond in Debian.
 #
 # This is free software; see the GNU General Public Licence
 # version 2 or later for copying conditions.  There is NO warranty.
@@ -12,25 +11,41 @@ package = lilypond
 
 SHELL = /bin/sh
 r = debian/$(package)
+r_data = debian/$(package)-data
 r_doc = debian/$(package)-doc
 d = usr/share/doc/$(package)
 
+# since I'm building this a few times on my 8-way machine, try to
+# build it faster
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    MAKEFLAGS += -j$(NUMJOBS) CPU_COUNT=$(NUMJOBS)
+endif
+
+
+include VERSION
+VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(PATCH_LEVEL)
+
 # "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 extra_mem_top = 100000
+# export extra_mem_bot = 100000
+# But now, building lilypond.dvi requires increased pool_size (2002-02-18)
+# export pool_size = 500000
+# But now, it seems that none of the above is needed in 1.4.11  (2002-02-24)
 export MODE = ljfour
 export BDPI = 600
 export USER_CFLAGS = -DDEBIAN
 export DEB_BUILD = yes
 export MAILADDRESS = lilypond@packages.debian.org
 
+# fontconfig blows chunks if it can't write $HOME; and some buildd's
+# set it to a bogus value.
+export HOME = /tmp
+
 # 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
 
@@ -38,11 +53,13 @@ build: build-stamp
 build-stamp:
        dh_testdir
 
-       ./configure --enable-checking --disable-debugging \
-               --prefix=/usr --enable-optimise \
+       cp -f /usr/share/misc/config.guess /usr/share/misc/config.sub ./stepmake/bin/
+       ./configure --disable-checking --enable-debugging \
+               --prefix=/usr --enable-optimising \
                --infodir='$${prefix}/share/info' \
                --mandir='$${prefix}/share/man'
-       $(MAKE) MAKE_PFA_FILES=1
+       $(MAKE)
+       $(MAKE) test;
 
        touch build-stamp
 
@@ -50,8 +67,11 @@ build-doc: build build-doc-stamp
 build-doc-stamp:
        dh_testdir
 
-       $(MAKE) -C Documentation
-       $(MAKE) web
+       # make html
+       # unfortunatly, this does not work well with multiple processors
+       $(MAKE) -j1 doc WEB_TARGETS="offline"
+       # make info
+       $(MAKE) info
 
        touch build-doc-stamp
 
@@ -59,11 +79,20 @@ clean:
        dh_testdir
        dh_testroot
        rm -f build-stamp build-doc-stamp
-       -$(MAKE) WWW-clean top-WWW-clean
-       -$(MAKE) distclean
+       [ ! -f Makefile ] || $(MAKE) web-clean
+       [ ! -f Makefile ] || $(MAKE) distclean
+       rm -f lib/python
+       rm -f ./stepmake/bin/config.guess ./stepmake/bin/config.guess.sub ./stepmake/bin/config.sub
 
        # Still not clean enough?  Let's use... BRUTE STRENGTH!  :-)
        find . -type d -name 'out' -o -name 'out-www' | xargs rm -rf
+       rm -f buildscripts/*.pyc
+       rm -f lib/lilypond/python examples.html
+       rm -f debian/emacsen-startup
+       rm -f debian/lilypond1.7*.dirs debian/lilypond.dirs
+       rm -f debian/postinst debian/prerm debian/postrm
+       rm -f debian/lilypond-data.doc-base debian/lilypond.doc-base
+       rm -f GNUmakefile config.log config.make config.status config.hh
 
        dh_clean
 
@@ -72,76 +101,72 @@ install: build
        dh_testdir
        dh_testroot
        dh_clean -k
+       dh_installdirs
 
        # Add here commands to install the package into debian/tmp.
-       dh_installdirs
-       $(MAKE) prefix=$(PWD)/$(r)/usr  MAKE_PFA_FILES=1 install
+       $(MAKE) install prefix=$(CURDIR)/debian/tmp/usr
 
-       # 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
+       dh_install --sourcedir=debian/tmp --list-missing
 
 # Build architecture-independent files here.
 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)/
+       # Install LilyPond web documentation...
+       $(MAKE) install-doc prefix=$(CURDIR)/debian/lilypond-doc/usr/
+       # it installs a random dir-dep file for no reason
+       rm -f $(CURDIR)/debian/lilypond-doc/usr/share/info/*-dir-dep*
+
        dh_installdocs
+       find $(CURDIR)/debian/lilypond-doc/usr/share/doc/lilypond/html \
+               -type d -empty -delete
+       dh_installemacsen
+
+       install -m 644 debian/xiao-haizi-guai-guai.ly debian/sakura-sakura.ly \
+               $(r_data)/$(d)/examples
        dh_installchangelogs
-       dh_link
-       dh_compress -Xusr/share/doc/lilypond/html/
+
+       dh_link usr/share/lilypond/$(VERSION)/tex \
+                       usr/share/texmf/tex/lilypond \
+               usr/share/lilypond/$(VERSION)/fonts/source \
+                       usr/share/texmf/fonts/source/public/lilypond \
+               usr/share/lilypond/$(VERSION)/fonts/afm \
+                       usr/share/texmf/fonts/afm/public/lilypond \
+               usr/share/lilypond/$(VERSION)/fonts/tfm \
+                       usr/share/texmf/fonts/tfm/public/lilypond \
+               usr/share/lilypond/$(VERSION)/fonts/type1 \
+                       usr/share/texmf/fonts/type1/public/lilypond \
+               etc/texmf/dvips/lilypond.map \
+                       usr/share/lilypond/$(VERSION)/dvips/lilypond.map
+
+       dh_pysupport /usr/share/lilypond/${VERSION}/python
+
+       dh_compress -X$(d)/html/
        dh_fixperms
        dh_installdeb
        dh_gencontrol
        dh_md5sums
        dh_builddeb
 
-binary-arch: DH_OPTIONS=-a
+binary-arch: DH_OPTIONS=-s
 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
-
-#      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_installdocs AUTHORS.txt NEWS.txt README.txt \
+               DEDICATION THANKS 
+
+
        dh_installemacsen
-#      dh_installcron
-#      dh_installman
-#      dh_undocumented
-       dh_installchangelogs -k CHANGES
-       dh_link
+       dh_installchangelogs Documentation/misc/CHANGES* Documentation/misc/ChangeLog*
+
        dh_strip
+       dh_pysupport /usr/share/lilypond/${VERSION}/python
        dh_compress
        dh_fixperms
        dh_installdeb
        dh_shlibdeps
        dh_gencontrol
-#      dh_makeshlibs
        dh_md5sums
        dh_builddeb