bsd.doc.mk revision 100872
189051Sjake#	from: @(#)bsd.doc.mk	5.3 (Berkeley) 1/2/91
289051Sjake# $FreeBSD: head/share/mk/bsd.doc.mk 100872 2002-07-29 09:40:17Z ru $
3182916Smarius#
489051Sjake# The include file <bsd.doc.mk> handles installing BSD troff documents.
589051Sjake#
689051Sjake#
789051Sjake# +++ variables +++
889051Sjake#
989051Sjake# LPR		Printer command. [lpr]
1089051Sjake#
1189051Sjake# 	[incomplete]
1289051Sjake#
1389051Sjake# +++ targets +++
1489051Sjake#
1589051Sjake# 	[incomplete]
1689051Sjake
1789051Sjake.include <bsd.init.mk>
1889051Sjake
1989051SjakePRINTERDEVICE?=	ascii
2089051Sjake
2189051SjakeBIB?=		bib
2289051SjakeEQN?=		eqn -T${PRINTERDEVICE}
2389051SjakeGREMLIN?=	grn
2489051SjakeGRIND?=		vgrind -f
2589051SjakeINDXBIB?=	indxbib
2689051SjakePIC?=		pic
2789051SjakeREFER?=		refer
28114188Sjake.if ${PRINTERDEVICE} == "ascii"
29114188SjakeROFF?=          groff -mtty-char ${TRFLAGS} ${MACROS} -o${PAGES}
30114188Sjake.else
3189051SjakeROFF?=		groff ${TRFLAGS} ${MACROS} -o${PAGES}
3289051Sjake.endif
3389051SjakeSOELIM?=	soelim
3489051SjakeSOELIMPP=	sed ${SOELIMPPARGS}
35166105SmariusSOELIMPPARGS0=	${SRCS} ${EXTRA}
3691617SjakeSOELIMPPARGS1=	${SOELIMPPARGS0:S/^/-e\\ \'s:\(\.so[\\ \\	][\\ \\	]*\)\(/}
37182730SmariusSOELIMPPARGS2=	${SOELIMPPARGS1:S/$/\)\$:\1${SRCDIR}\/\2:\'/}
3889051SjakeSOELIMPPARGS=	${SOELIMPPARGS2:S/\\'/'/g}
3989051SjakeTBL?=		tbl
4089051Sjake
4189051SjakeDOC?=		paper
4289051SjakeLPR?=		lpr
4389051Sjake
4491617SjakeTRFLAGS+=	-T${PRINTERDEVICE}
45100899Sjake.if defined(USE_EQN)
46182916SmariusTRFLAGS+=	-e
47203833Smarius.endif
48203833Smarius.if defined(USE_TBL)
49203833SmariusTRFLAGS+=	-t
50203833Smarius.endif
51203833Smarius.if defined(USE_PIC)
52203833SmariusTRFLAGS+=	-p
53182916Smarius.endif
54182916Smarius.if defined(USE_SOELIM)
55182916SmariusTRFLAGS+=	-s
56182916Smarius.endif
57182916Smarius.if defined(USE_REFER)
58182916SmariusTRFLAGS+=	-R
59182916Smarius.endif
60182916Smarius
61182916SmariusDCOMPRESS_EXT?=	${COMPRESS_EXT}
62182916Smarius.if defined(NODOCCOMPRESS) || ${PRINTERDEVICE} == "html"
63182916SmariusDFILE=	${DOC}.${PRINTERDEVICE}
64182916SmariusDCOMPRESS_CMD=	cat
65182916Smarius.else
66182916SmariusDFILE=	${DOC}.${PRINTERDEVICE}${DCOMPRESS_EXT}
67182916SmariusDCOMPRESS_CMD?=	${COMPRESS_CMD}
68182916Smarius.endif
69182916Smarius
70182916SmariusPAGES?=		1-
71182916Smarius
72182916SmariusUNROFF?=	unroff
73203833SmariusHTML_SPLIT?=	yes
74182916SmariusUNROFFFLAGS?=	-fhtml
75182916Smarius.if ${HTML_SPLIT} == "yes"
76182916SmariusUNROFFFLAGS+=	split=1
77182916Smarius.endif
78182916Smarius
79182916Smarius# Compatibility mode flag for groff.  Use this when formatting documents with
80182916Smarius# Berkeley me macros.
81182916SmariusCOMPAT?=	-C
82182916Smarius
83182916Smarius.PATH: ${.CURDIR} ${SRCDIR}
84182916Smarius
85182916Smariusall:	${DFILE}
86182916Smarius
87182916Smarius.if !target(print)
88182916Smariusprint: ${DFILE}
89182916Smarius.if defined(NODOCCOMPRESS)
90182916Smarius	${LPR} ${DFILE}
91182916Smarius.else
92182916Smarius	${DCOMPRESS_CMD} -d ${DFILE} | ${LPR}
93182916Smarius.endif
94182916Smarius.endif
95182916Smarius
96182916Smarius.if ${PRINTERDEVICE} != "ascii" && ${PRINTERDEVICE} != "ps"
97182916SmariusCLEANFILES+=	${DOC}.${PRINTERDEVICE} ${DOC}.${PRINTERDEVICE}${DCOMPRESS_EXT}
98182916Smarius.endif
99203833SmariusCLEANFILES+=	${DOC}.ascii ${DOC}.ascii${DCOMPRESS_EXT} \
100182916Smarius		${DOC}.ps ${DOC}.ps${DCOMPRESS_EXT} \
101182916Smarius		${DOC}.html ${DOC}-*.html
102182916Smarius
103182916Smariusrealinstall:
104182916Smarius.if ${PRINTERDEVICE} == "html"
105182916Smarius	cd ${SRCDIR}; \
106182916Smarius		${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
107182916Smarius		${DOC}*.html ${DESTDIR}${BINDIR}/${VOLUME}
108182916Smarius.else
109182916Smarius	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
110182916Smarius		${DFILE} ${DESTDIR}${BINDIR}/${VOLUME}
111182916Smarius.endif
112182916Smarius
113182916Smariusspell: ${SRCS}
114182916Smarius	(cd ${.CURDIR};  spell ${SRCS} ) | sort | \
115182916Smarius		comm -23 - ${.CURDIR}/spell.ok > ${DOC}.spell
116182916Smarius
11791617SjakeBINDIR?=	/usr/share/doc
118182916SmariusBINMODE=        444
119182916Smarius
12091617SjakeSRCDIR?=	${.CURDIR}
12191617Sjake
12291617Sjake.if !target(${DFILE})
123102040Sjake_stamp.extraobjs: ${EXTRA} ${OBJS}
124102040Sjake	touch ${.TARGET}
12591617SjakeCLEANFILES+=	_stamp.extraobjs
12691617Sjake${DFILE}: ${SRCS} _stamp.extraobjs
12791617Sjake.if ${PRINTERDEVICE} == "html"
128182916Smarius	cd ${SRCDIR}; ${UNROFF} ${MACROS} ${UNROFFFLAGS} \
129182916Smarius	    document=${DOC} ${SRCS}
130182916Smarius.elif defined(USE_SOELIMPP)
131182916Smarius	${SOELIMPP} ${.ALLSRC:N_stamp.extraobjs} | ${ROFF} | \
132182916Smarius	    ${DCOMPRESS_CMD} > ${.TARGET}
133182916Smarius.else
134182916Smarius	(cd ${SRCDIR}; ${ROFF} ${.ALLSRC:N_stamp.extraobjs}) | \
135182916Smarius	    ${DCOMPRESS_CMD} > ${.TARGET}
136182916Smarius.endif
137182916Smarius.endif
138182916Smarius
139182916SmariusDISTRIBUTION?=	doc
140182916Smarius
141203833Smarius.include <bsd.obj.mk>
142182916Smarius