xref: /freebsd/share/mk/bsd.doc.mk (revision df7f5d4de4592a8948a25ce01e5bddfbb7ce39dc)
1#	from: @(#)bsd.doc.mk	5.3 (Berkeley) 1/2/91
2#	$Id: bsd.doc.mk,v 1.34 1997/03/02 15:52:34 wosch Exp $
3
4PRINTERDEVICE?=	ascii
5
6BIB?=		bib
7EQN?=		eqn -T${PRINTERDEVICE}
8GREMLIN?=	grn
9GRIND?=		vgrind -f
10INDXBIB?=	indxbib
11PIC?=		pic
12REFER?=		refer
13.if ${PRINTERDEVICE} == "ascii"
14ROFF?=          groff -mtty-char ${TRFLAGS} ${MACROS} -o${PAGES}
15.else
16ROFF?=		groff ${TRFLAGS} ${MACROS} -o${PAGES}
17.endif
18SOELIM?=	soelim
19SOELIMPP=	sed ${SOELIMPPARGS}
20SOELIMPPARGS0=	${SRCS} ${EXTRA}
21SOELIMPPARGS1=	${SOELIMPPARGS0:S/^/-e\\ \'s:\(\.so[\\ \\	][\\ \\	]*\)\(/}
22SOELIMPPARGS2=	${SOELIMPPARGS1:S/$/\)\$:\1${SRCDIR}\/\2:\'/}
23SOELIMPPARGS=	${SOELIMPPARGS2:S/\\'/'/g}
24TBL?=		tbl
25
26DOC?=		paper
27
28TRFLAGS+=	-T${PRINTERDEVICE}
29.if defined(USE_EQN)
30TRFLAGS+=	-e
31.endif
32.if defined(USE_TBL)
33TRFLAGS+=	-t
34.endif
35.if defined(USE_PIC)
36TRFLAGS+=	-p
37.endif
38.if defined(USE_SOELIM)
39TRFLAGS+=	-s
40.endif
41.if defined(USE_REFER)
42TRFALGS+=	-R
43.endif
44
45DCOMPRESS_EXT?=	${COMPRESS_EXT}
46.if defined(NODOCCOMPRESS) || ${PRINTERDEVICE} == "html"
47DFILE=	${DOC}.${PRINTERDEVICE}
48DCOMPRESS_CMD=	cat
49.else
50DFILE=	${DOC}.${PRINTERDEVICE}${DCOMPRESS_EXT}
51DCOMPRESS_CMD?=	${COMPRESS_CMD}
52.endif
53
54PAGES?=		1-
55
56UNROFF?=	unroff
57HTML_SPLIT?=	yes
58UNROFFFLAGS?=	-fhtml
59.if ${HTML_SPLIT} == "yes"
60UNROFFFLAGS+=	split=1
61.endif
62
63# Compatibility mode flag for groff.  Use this when formatting documents with
64# Berkeley me macros.
65COMPAT?=	-C
66
67.PATH: ${.CURDIR} ${SRCDIR}
68
69.MAIN:	all
70all:	${DFILE}
71
72.if !target(print)
73print: ${DFILE}
74.if defined(NODOCCOMPRESS)
75	lpr ${DFILE}
76.else
77	${DCOMPRESS_CMD} -d ${DFILE} | lpr
78.endif
79.endif
80
81CLEANFILES+=	${DOC}.${PRINTERDEVICE} \
82		${DOC}.${PRINTERDEVICE}${DCOMPRESS_EXT} \
83		${DOC}.ascii ${DOC}.ascii${DCOMPRESS_EXT} \
84		${DOC}.ps ${DOC}.ps${DCOMPRESS_EXT} \
85		${DOC}.html ${DOC}-*.html
86
87
88FILES?=	${SRCS}
89realinstall:
90.if ${PRINTERDEVICE} == "html"
91	${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
92		${DOC}*.html ${DESTDIR}${BINDIR}/${VOLUME}
93.else
94	${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
95		${DFILE} ${DESTDIR}${BINDIR}/${VOLUME}
96.endif
97
98install:	beforeinstall realinstall afterinstall
99
100.if !target(beforeinstall)
101beforeinstall:
102
103.endif
104.if !target(afterinstall)
105afterinstall:
106
107.endif
108
109DISTRIBUTION?=	doc
110.if !target(distribute)
111distribute:
112	cd ${.CURDIR} ; $(MAKE) install DESTDIR=${DISTDIR}/${DISTRIBUTION} SHARED=copies
113.endif
114
115spell: ${SRCS}
116	(cd ${.CURDIR};  spell ${SRCS} ) | sort | \
117		comm -23 - ${.CURDIR}/spell.ok > ${DOC}.spell
118
119BINDIR?=	/usr/share/doc
120BINMODE=        444
121
122SRCDIR?=	${.CURDIR}
123
124.if !target(${DFILE})
125.if ${PRINTERDEVICE} == "html"
126${DFILE}:	${SRCS} ${EXTRA} ${OBJS}
127	cd ${SRCDIR}; ${UNROFF} ${MACROS} ${UNROFFFLAGS} \
128		document=${.OBJDIR}/${DOC} ${SRCS}
129.else
130
131${DFILE}::	${SRCS} ${EXTRA} ${OBJS}
132# XXX ${.ALLSRC} doesn't work unless there are a lot of .PATH.foo statements.
133ALLSRCS=	${SRCS:S;^;${SRCDIR}/;}
134${DFILE}::	${SRCS}
135.if defined(USE_SOELIMPP)
136	${SOELIMPP} ${ALLSRCS} | ${ROFF} | ${DCOMPRESS_CMD} > ${.TARGET}
137.else
138	(cd ${SRCDIR}; ${ROFF} ${.ALLSRC}) | ${DCOMPRESS_CMD} > ${.TARGET}
139.endif
140.else
141.if !defined(NODOCCOMPRESS)
142${DFILE}:	${DOC}.${PRINTERDEVICE}
143	${DCOMPRESS_CMD} ${DOC}.${PRINTERDEVICE} > ${.TARGET}
144.endif
145.endif
146.endif
147
148.if !target(depend)
149depend:
150.endif
151
152.if !target(maninstall)
153maninstall:
154.endif
155
156.include <bsd.dep.mk>
157.include <bsd.obj.mk>
158