X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=debian%2Frules;h=dd2c897ca24fcaae85bd00c7ca25655672f3c1ee;hb=dfabc3a3867d18bac34327d239b30fe4b892b80c;hp=e6824545958dccd68fe96a5423706ea942ec9804;hpb=ae55f2a34e4799a66d4612821874618cc2b91c9d;p=developers-reference.git diff --git a/debian/rules b/debian/rules index e682454..dd2c897 100755 --- a/debian/rules +++ b/debian/rules @@ -1,5 +1,5 @@ #!/usr/bin/make -f -# rules file for sgml-data +# rules file for developers-reference # # I do not use debstd, debhelper, or any of that stuff. # I believe in stripped down rules files; nothing that is not required @@ -8,106 +8,116 @@ package := developers-reference # directory abstraction -PREFIX := debian/tmp -docdir := $(PREFIX)/usr/doc/$(package) -libdir := $(PREFIX)/usr/lib/$(package) -sharedir := $(PREFIX)/usr/share/$(package) -menudir := $(PREFIX)/usr/lib/menu -docbasedir := $(PREFIX)/usr/share/doc-base +prefix := debian/tmp +docdir := $(prefix)/usr/share/doc/$(package) +sharedir := $(prefix)/usr/share/$(package) +docbasedir := $(prefix)/usr/share/doc-base # tool abstraction install_file := install -o root -g root -m 644 -p -install_program := install -o root -g root -m 755 -p +install_script := install -o root -g root -m 755 -p make_directory := install -d -o root -g root -m 755 compress := gzip -9f # version abstraction -DEB_VERSION := $(shell LC_ALL=C dpkg-parsechangelog | grep ^Version: | sed 's/^Version: *//') -DATE := $(shell date +"%Y-%m-%d") +DEB_VERSION := $(shell LC_ALL=C dpkg-parsechangelog | grep '^Version: ' | sed 's/^Version: *//') +# pretty-print the date +DATE := $(shell LC_ALL=C date --date="`dpkg-parsechangelog | grep '^Date: ' | sed 's/^Date: *//'`" '+%d %B, %Y') -.PHONY: version.ent -version.ent: +build: developers-reference.sgml $(checkdir) rm -f version.ent echo "" >> version.ent echo "" >> version.ent - -build: version.ent - $(checkdir) - nsgmls -gues developers-reference.sgml # check SGML syntax - debiandoc2html developers-reference.sgml - debiandoc2text developers-reference.sgml + nsgmls -wall -s -E20 $^ # check SGML syntax + debiandoc2html $^ + debiandoc2text $^ + debiandoc2latexpdf -p letter $^ touch build clean: $(checkdir) rm -f build rm -rf developers-reference.html - rm -f developers-reference.text* - rm -f developers-reference.lout* lout.li - rm -f version.ent + rm -f developers-reference.txt* developers-reference.ps \ + developers-reference.pdf developers-reference.lout* lout.li \ + developers-reference.sasp* developers-reference.tex \ + developers-reference.aux developers-reference.toc \ + developers-reference.idx version.ent rm -f `find . -name "*~"` - rm -rf $(PREFIX) + rm -rf $(prefix) rm -f debian/files* core debian/substvars -binary-indep: checkroot build +binary-indep: build $(checkdir) - rm -rf $(PREFIX) - $(make_directory) $(PREFIX)/DEBIAN - $(make_directory) $(docdir) - $(make_directory) $(libdir) - $(make_directory) $(sharedir) - - $(install_file) developers-reference.html $(docdir) - $(install_file) developers-reference.text $(docdir) - $(install_file) developers-reference.sgml $(docdir) - $(install_file) debian/copyright $(docdir) - $(install_file) debian/changelog $(docdir) - $(install_file) debian/menu $(menudir)/$(package) + $(checkroot) + rm -rf $(prefix) + $(make_directory) $(prefix)/DEBIAN + $(make_directory) $(docdir) $(sharedir) $(docbasedir) + + $(make_directory) $(docdir)/developers-reference.html + $(install_file) developers-reference.html/* \ + $(docdir)/developers-reference.html/ + $(install_file) developers-reference.txt $(docdir)/ + $(install_file) developers-reference.pdf $(docdir)/ + $(install_file) developers-reference.sgml version.ent common.ent $(docdir)/ + $(install_file) debian/copyright $(docdir)/ + $(install_file) debian/changelog $(docdir)/ $(install_file) developers-reference.desc $(docbasedir)/$(package) - # make sure control files are good - sh -n debian/preinst +# make sure control files are good sh -n debian/postinst sh -n debian/prerm - # install the control files - $(install_script) debian/control debian/postinst debian/prerm \ - $(PREFIX)/DEBIAN/ + $(install_script) debian/postinst debian/prerm $(prefix)/DEBIAN/ - # compress docdir (policy) - find $(docdir) -type f \( -size +4k -or -iname "change*" \) \ - ! -name "*.html" ! -name "*.gif" \ - ! -name "copyright" | xargs $(compress) +# compress docdir (policy) + find $(docdir) -type f \( -size +4k -or -iname "change*" \) \ + ! -name "*.html" ! -name "*.gif" ! -name "*.pdf" \ + ! -name "copyright" | xargs $(compress) dpkg-gencontrol -isp +# be tricky about putting the TOC sections into the description of the package + perl -ne '/^\d+\.\s/ && print " $$_";' < developers-reference.txt \ + >> $(prefix)/DEBIAN/control + dpkg --build $(prefix) .. - # some extra-package files - debiandoc2ps -pletter -1 developers-reference.sgml - $(compress) ../developers-reference.ps - dpkg-distaddfile -fdebian/files developers-reference.ps.gz byhand - - GZIP=-9v tar czf ../developers-reference.html.tar.gz developers-reference.html - dpkg-distaddfile -fdebian/files developers-reference.html.tar.gz byhand - - $(install_file) developers-reference.text .. - $(compress) developers-reference.text - dpkg-distaddfile -fdebian/files developers-reference.text.gz byhand - - -binary-arch: checkroot build - $(checkdir) +# some extra-package files + $(install_file) developers-reference.pdf \ + ../developers-reference.pdf.$(DEB_VERSION) + dpkg-distaddfile -fdebian/files developers-reference.pdf.$(DEB_VERSION) byhand - + GZIP=-9 tar czf ../developers-reference.html.tar.gz.$(DEB_VERSION)\ + developers-reference.html + dpkg-distaddfile -fdebian/files developers-reference.html.tar.gz.$(DEB_VERSION)\ + byhand - + $(install_file) developers-reference.txt \ + ../developers-reference.txt + $(compress) ../developers-reference.txt + mv ../developers-reference.txt.gz \ + ../developers-reference.txt.gz.$(DEB_VERSION) + dpkg-distaddfile -fdebian/files \ + developers-reference.txt.gz.$(DEB_VERSION) byhand - + +binary-arch: build # There are no architecture-dependent files to be uploaded # generated by this package. If there were any they would be # made here. define checkdir test -f debian/rules + test -f developers-reference.sgml endef # Below here is fairly generic really +define checkroot + test `id -u` = 0 +endef + binary: binary-indep binary-arch -checkroot: - $(checkdir) - test root = "`whoami`" +.PHONY: binary binary-arch binary-indep clean -.PHONY: binary binary-arch binary-indep clean checkroot +#Local variables: +#mode: makefile +#End: