1# from: @(#)bsd.doc.mk 5.3 (Berkeley) 1/2/91 2# $FreeBSD$ 3# 4# The include file <bsd.doc.mk> handles installing BSD troff documents. 5# 6# 7# +++ variables +++ 8# 9# DCOMPRESS_CMD Program to compress troff documents. Output is to stdout. 10# [${COMPRESS_CMD}] 11# 12# DESTDIR Change the tree where the documents get installed. [not set] 13# 14# DOC Document name. [paper] 15# 16# EXTRA Extra files (not SRCS) that make up the document. [not set] 17# 18# LPR Printer command. [lpr] 19# 20# MACROS Macro packages used to build the document. [not set] 21# 22# WITHOUT_DOCCOMPRESS If you do not want formatted troff documents to be 23# compressed when they are installed. [not set] 24# 25# PRINTERDEVICE Indicates which output formats will be generated 26# (ascii, ps, html). [ascii] 27# 28# SRCDIR Directory where source files live. [${.CURDIR}] 29# 30# SRCS List of source files. [not set] 31# 32# TRFLAGS Additional flags to groff(1). [not set] 33# 34# USE_EQN If set, preprocess with eqn(1). [not set] 35# 36# USE_PIC If set, preprocess with pic(1). [not set] 37# 38# USE_REFER If set, preprocess with refer(1). [not set] 39# 40# USE_SOELIM If set, preprocess with soelim(1). [not set] 41# 42# USE_TBL If set, preprocess with tbl(1). [not set] 43# 44# VOLUME Volume the document belongs to. [not set] 45 46.include <bsd.init.mk> 47 48PRINTERDEVICE?= ascii 49 50BIB?= bib 51GREMLIN?= grn 52GRIND?= vgrind -f 53INDXBIB?= indxbib 54PIC?= pic 55REFER?= refer 56.for _dev in ${PRINTERDEVICE:Mascii} 57ROFF.ascii?= groff -Tascii -P-c ${TRFLAGS} -mtty-char ${MACROS} ${PAGES:C/^/-o/1} 58.endfor 59.for _dev in ${PRINTERDEVICE:Nascii} 60ROFF.${_dev}?= groff -T${_dev} ${TRFLAGS} ${MACROS} ${PAGES:C/^/-o/1} 61.endfor 62SOELIM?= soelim 63TBL?= tbl 64 65DOC?= paper 66LPR?= lpr 67 68.if defined(USE_EQN) 69TRFLAGS+= -e 70.endif 71.if defined(USE_PIC) 72TRFLAGS+= -p 73.endif 74.if defined(USE_REFER) 75TRFLAGS+= -R 76.endif 77.if defined(USE_SOELIM) 78TRFLAGS+= -I${.CURDIR} 79.endif 80.if defined(USE_TBL) 81TRFLAGS+= -t 82.endif 83 84DCOMPRESS_EXT?= ${COMPRESS_EXT} 85DCOMPRESS_CMD?= ${COMPRESS_CMD} 86.for _dev in ${PRINTERDEVICE:Mhtml} 87DFILE.html= ${DOC}.html 88.endfor 89.for _dev in ${PRINTERDEVICE:Nhtml} 90.if ${MK_DOCCOMPRESS} == "no" 91DFILE.${_dev}= ${DOC}.${_dev} 92.else 93DFILE.${_dev}= ${DOC}.${_dev}${DCOMPRESS_EXT} 94.endif 95.endfor 96 97UNROFF?= unroff 98HTML_SPLIT?= yes 99UNROFFFLAGS?= -fhtml 100.if ${HTML_SPLIT} == "yes" 101UNROFFFLAGS+= split=1 102.endif 103 104# Compatibility mode flag for groff. Use this when formatting documents with 105# Berkeley me macros (orig_me(7)). 106COMPAT?= -C 107 108.PATH: ${.CURDIR} ${SRCDIR} 109 110.for _dev in ${PRINTERDEVICE} 111all: ${DFILE.${_dev}} 112.endfor 113 114.if !target(print) 115.for _dev in ${PRINTERDEVICE} 116print: ${DFILE.${_dev}} 117.endfor 118print: 119.for _dev in ${PRINTERDEVICE} 120.if ${MK_DOCCOMPRESS} == "no" 121 ${LPR} ${DFILE.${_dev}} 122.else 123 ${DCOMPRESS_CMD} -d ${DFILE.${_dev}} | ${LPR} 124.endif 125.endfor 126.endif 127 128.for _dev in ${PRINTERDEVICE:Nascii:Nps:Nhtml} 129CLEANFILES+= ${DOC}.${_dev} ${DOC}.${_dev}${DCOMPRESS_EXT} 130.endfor 131CLEANFILES+= ${DOC}.ascii ${DOC}.ascii${DCOMPRESS_EXT} \ 132 ${DOC}.ps ${DOC}.ps${DCOMPRESS_EXT} \ 133 ${DOC}.html ${DOC}-*.html 134 135realinstall: 136.for _dev in ${PRINTERDEVICE:Mhtml} 137 cd ${SRCDIR}; \ 138 ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ 139 ${DOC}*.html ${DESTDIR}${BINDIR}/${VOLUME} 140.endfor 141.for _dev in ${PRINTERDEVICE:Nhtml} 142 ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ 143 ${DFILE.${_dev}} ${DESTDIR}${BINDIR}/${VOLUME} 144.endfor 145 146spell: ${SRCS} 147 (cd ${.CURDIR}; spell ${SRCS} ) | sort | \ 148 comm -23 - ${.CURDIR}/spell.ok > ${DOC}.spell 149 150BINDIR?= /usr/share/doc 151BINMODE= 444 152 153SRCDIR?= ${.CURDIR} 154 155.if defined(EXTRA) && !empty(EXTRA) 156_stamp.extra: ${EXTRA} 157 touch ${.TARGET} 158.endif 159 160CLEANFILES+= _stamp.extra 161.for _dev in ${PRINTERDEVICE:Nhtml} 162.if !target(${DFILE.${_dev}}) 163.if target(_stamp.extra) 164${DFILE.${_dev}}: _stamp.extra 165.endif 166${DFILE.${_dev}}: ${SRCS} 167.if ${MK_DOCCOMPRESS} == "no" 168 ${ROFF.${_dev}} ${.ALLSRC:N_stamp.extra} > ${.TARGET} 169.else 170 ${ROFF.${_dev}} ${.ALLSRC:N_stamp.extra} | ${DCOMPRESS_CMD} > ${.TARGET} 171.endif 172.endif 173.endfor 174 175.for _dev in ${PRINTERDEVICE:Mhtml} 176.if !target(${DFILE.html}) 177.if target(_stamp.extra) 178${DFILE.html}: _stamp.extra 179.endif 180${DFILE.html}: ${SRCS} 181.if defined(MACROS) && !empty(MACROS) 182 cd ${SRCDIR}; ${UNROFF} ${MACROS} ${UNROFFFLAGS} \ 183 document=${DOC} ${SRCS} 184.else # unroff(1) requires a macro package as an argument 185 cd ${SRCDIR}; ${UNROFF} -ms ${UNROFFFLAGS} \ 186 document=${DOC} ${SRCS} 187.else 188.endif 189.endif 190.endfor 191 192DISTRIBUTION?= doc 193 194.include <bsd.obj.mk> 195