bsd.doc.mk revision 1.53 1 # $NetBSD: bsd.doc.mk,v 1.53 2001/11/02 05:21:50 tv Exp $
2 # @(#)bsd.doc.mk 8.1 (Berkeley) 8/14/93
3
4 .include <bsd.init.mk>
5
6 ##### Basic targets
7 .PHONY: cleandoc docinstall print spell
8 clean: cleandoc
9 realinstall: docinstall
10
11 ##### Default values
12 BIB?= bib
13 EQN?= eqn
14 GREMLIN?= grn
15 GRIND?= vgrind -f
16 INDXBIB?= indxbib
17 PIC?= pic
18 REFER?= refer
19 ROFF?= groff -Tps
20 SOELIM?= soelim
21 TBL?= tbl
22
23 ##### Build rules
24 .if !target(paper.ps)
25 paper.ps: ${SRCS}
26 ${ROFF} ${MACROS} ${PAGES} ${.ALLSRC} > ${.TARGET}
27 .endif
28
29 .if ${MKSHARE} != "no"
30 realall: paper.ps
31 .endif
32
33 ##### Install rules
34 docinstall:: # ensure existence
35 .if ${MKDOC} != "no"
36
37 __docinstall: .USE
38 ${INSTALL_FILE} -o ${DOCOWN} -g ${DOCGRP} -m ${DOCMODE} \
39 ${.ALLSRC} ${.TARGET}
40
41 FILES?= ${SRCS}
42
43 .for F in Makefile ${FILES:O:u} ${EXTRA}
44 _F:= ${DESTDIR}${DOCDIR}/${DIR}/${F} # installed path
45
46 ${_F}: ${F} __docinstall # install rule
47 docinstall:: ${_F}
48 .PRECIOUS: ${_F} # keep if install fails
49 .PHONY: ${UPDATE:U${_F}} # clobber unless UPDATE
50 .if !defined(BUILD) && !make(all) && !make(${F})
51 ${_F}: .MADE # no build at install
52 .endif
53 .endfor
54
55 .undef _F
56 .endif # ${MKDOC} != "no"
57
58 ##### Clean rules
59 cleandoc:
60 rm -f paper.* [eE]rrs mklog ${CLEANFILES}
61
62 ##### Custom rules
63 .if !target(print)
64 print: paper.ps
65 lpr -P${PRINTER} ${.ALLSRC}
66 .endif
67
68 spell: ${SRCS}
69 spell ${.ALLSRC} | sort | comm -23 - spell.ok > paper.spell
70
71 ##### Pull in related .mk logic
72 .include <bsd.obj.mk>
73
74 ${TARGETS}: # ensure existence
75