X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=debian%2Frules;h=1381798aa3910a5264f974b65831cb016d8ec48e;hb=414e6ba6630d111217f0887ae3bb203a44506ddb;hp=448324c93d093ef0f015a336688f3458364edcd8;hpb=9b59c303f902ebbeeeca6f84ff9f3d3544a92945;p=lilypond.git diff --git a/debian/rules b/debian/rules old mode 100644 new mode 100755 index 448324c93d..1381798aa3 --- a/debian/rules +++ b/debian/rules @@ -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,9 +11,18 @@ 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) @@ -31,12 +39,13 @@ 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 @@ -44,11 +53,20 @@ 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) + # ignore test failures on architectures which aren't i386 or + # amd64 until we properly fix failures when /dev/tty doesn't + # exist (#572290) + if dpkg-architecture -eamd64 || dpkg-architecture -ei386; then \ + $(MAKE) test; \ + else \ + $(MAKE) test || true; \ + fi; touch build-stamp @@ -56,8 +74,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 @@ -65,12 +86,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 # Still not clean enough? Let's use... BRUTE STRENGTH! :-) find . -type d -name 'out' -o -name 'out-www' | xargs rm -rf - rm -f debian/lilypond.links + 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 @@ -79,85 +108,76 @@ 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 + + #find input \( -name '*.*ly' -o -name '*.abc' -o -name '*.tex' -o -name 'TODO' \) ! -regex '.*/out-www/.*' \ + # -exec cp -a --parents '{}' $(r_data)/$(d)/examples ';' + 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/ + +# mv $(r_data)/usr/share/lilypond/$(VERSION)/fonts/map/lilypond.map \ +# $(r_data)/etc/texmf/dvips/lilypond.map + + 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 lilypond-indent.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 - find input \( -name '*.*ly' -o -name '*.abc' -o -name '*.tex' -o -name 'TODO' \) \ - -exec cp -a --parents '{}' $(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 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)/dvips/lilypond.map \ - usr/share/texmf/dvips/config/lilypond.map + dh_installchangelogs Documentation/misc/CHANGES* Documentation/misc/ChangeLog* + dh_strip dh_compress dh_fixperms dh_installdeb dh_shlibdeps dh_gencontrol -# dh_makeshlibs dh_md5sums dh_builddeb