docs/master
annotate makefile @ 151:ff3a6a0e6255
Added system for references within the document. Macros: .Id and .Cf.
``.Id foo'' places a marker at that place.
``.Cf foo'' puts the section number of the marked place there.
``.Cf foo.page'' puts the page number of the marked place there.
author | markus schnalke <meillo@marmaro.de> |
---|---|
date | Fri, 06 Jul 2012 14:59:08 +0200 |
parents | 472aa79f9b6f |
children | db199d51d5b0 |
rev | line source |
---|---|
meillo@0 | 1 NAME = thesis |
meillo@79 | 2 CHAPS = style front.roff dedication.roff abstract.roff toc.roff \ |
meillo@147 | 3 preface.roff intro.roff discussion.roff future.roff refs.roff \ |
meillo@147 | 4 official.roff colophon.roff |
meillo@0 | 5 PDFFLAGS = -sPAPERSIZE=a4 -dPDFSETTINGS=/prepress |
meillo@150 | 6 REFER = refer -n -p bib -p rfcs -e -P -sLAD -l,2 -k |
meillo@0 | 7 |
meillo@0 | 8 all: $(NAME).ps |
meillo@0 | 9 |
meillo@151 | 10 $(NAME).ps: $(CHAPS) makefile bib rfcs toc.ig refs |
meillo@150 | 11 export TROFFONTS=fonts;\ |
meillo@150 | 12 soelim $(CHAPS) | $(REFER) | \ |
meillo@92 | 13 grap | pic | troff -Tps -ms 2>err.ig | dpost >$@ |
meillo@79 | 14 |
meillo@79 | 15 err.ig: $(CHAPS) |
meillo@150 | 16 export TROFFONTS=fonts;\ |
meillo@150 | 17 soelim $(CHAPS) | $(REFER) | \ |
meillo@92 | 18 grap | pic | troff -Tps -ms -rZ1 -z 2>$@ |
meillo@79 | 19 |
meillo@79 | 20 toc.ig: err.ig |
meillo@113 | 21 sed -n '/^TOC____/s///p' err.ig >$@ |
meillo@0 | 22 |
meillo@151 | 23 refs: err.ig |
meillo@151 | 24 awk '/^REF____/{ \ |
meillo@151 | 25 sub(/^REF____/,""); \ |
meillo@151 | 26 printf $$2 >"refs/"$$1; close("refs/$$1"); \ |
meillo@151 | 27 printf $$3 >"refs/"$$1".page"; close("refs/$$1.page");\ |
meillo@151 | 28 }' err.ig |
meillo@151 | 29 |
meillo@0 | 30 pdf: $(NAME).pdf |
meillo@0 | 31 $(NAME).pdf: $(NAME).ps |
meillo@115 | 32 ps2pdf $(PDFFLAGS) $(NAME).ps 2>/dev/null |
meillo@0 | 33 |
meillo@0 | 34 book: book.pdf |
meillo@0 | 35 book.pdf: book.ps |
meillo@115 | 36 ps2pdf $(PDFFLAGS) book.ps 2>/dev/null |
meillo@0 | 37 book.ps: $(NAME).ps |
meillo@0 | 38 psbook -s16 $(NAME).ps | psnup -2 -m2mm >$@ |
meillo@0 | 39 |
meillo@0 | 40 clean: |
meillo@0 | 41 rm -f $(NAME).ps $(NAME).pdf book.ps book.pdf |
meillo@151 | 42 rm -f refs/* |
meillo@79 | 43 rm -f *.ig |
meillo@111 | 44 |
meillo@111 | 45 spell: |
meillo@121 | 46 sort -u -o terms terms |
meillo@111 | 47 spell +terms *.roff | egrep -v '[0-9a-f]{40}' |