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 84.if defined(NO_ROOT) 85.if !defined(TAGS) || ! ${TAGS:Mpackage=*} 86TAGS+= package=${PACKAGE:Uutilities} 87.endif 88TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} 89.endif 90 91DCOMPRESS_EXT?= ${COMPRESS_EXT} 92DCOMPRESS_CMD?= ${COMPRESS_CMD} 93.for _dev in ${PRINTERDEVICE:Mhtml} 94DFILE.html= ${DOC}.html 95.endfor 96.for _dev in ${PRINTERDEVICE:Nhtml} 97.if ${MK_DOCCOMPRESS} == "no" 98DFILE.${_dev}= ${DOC}.${_dev} 99.else 100DFILE.${_dev}= ${DOC}.${_dev}${DCOMPRESS_EXT} 101.endif 102.endfor 103 104UNROFF?= unroff 105HTML_SPLIT?= yes 106UNROFFFLAGS?= -fhtml 107.if ${HTML_SPLIT} == "yes" 108UNROFFFLAGS+= split=1 109.endif 110 111# Compatibility mode flag for groff. Use this when formatting documents with 112# Berkeley me macros (orig_me(7)). 113COMPAT?= -C 114 115.PATH: ${.CURDIR} ${SRCDIR} 116 117.if !defined(_SKIP_BUILD) 118.for _dev in ${PRINTERDEVICE} 119all: ${DFILE.${_dev}} 120.endfor 121.endif 122 123.if !target(print) 124.for _dev in ${PRINTERDEVICE} 125print: ${DFILE.${_dev}} 126.endfor 127print: 128.for _dev in ${PRINTERDEVICE} 129.if ${MK_DOCCOMPRESS} == "no" 130 ${LPR} ${DFILE.${_dev}} 131.else 132 ${DCOMPRESS_CMD} -d ${DFILE.${_dev}} | ${LPR} 133.endif 134.endfor 135.endif 136 137.for _dev in ${PRINTERDEVICE:Nascii:Nps:Nhtml} 138CLEANFILES+= ${DOC}.${_dev} ${DOC}.${_dev}${DCOMPRESS_EXT} 139.endfor 140CLEANFILES+= ${DOC}.ascii ${DOC}.ascii${DCOMPRESS_EXT} \ 141 ${DOC}.ps ${DOC}.ps${DCOMPRESS_EXT} \ 142 ${DOC}.html ${DOC}-*.html 143 144realinstall: 145.if ${PRINTERDEVICE:Mhtml} 146 cd ${SRCDIR}; \ 147 ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},docs} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ 148 ${DOC}*.html ${DESTDIR}${BINDIR}/${VOLUME}/ 149.endif 150.for _dev in ${PRINTERDEVICE:Nhtml} 151 ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},docs} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ 152 ${DFILE.${_dev}} ${DESTDIR}${BINDIR}/${VOLUME}/ 153.endfor 154 155spell: ${SRCS} 156 (cd ${.CURDIR}; spell ${SRCS} ) | sort | \ 157 comm -23 - ${.CURDIR}/spell.ok > ${DOC}.spell 158 159BINDIR?= /usr/share/doc 160BINMODE= 444 161 162SRCDIR?= ${.CURDIR} 163 164.if defined(EXTRA) && !empty(EXTRA) 165_stamp.extra: ${EXTRA} 166 touch ${.TARGET} 167.endif 168 169CLEANFILES+= _stamp.extra 170.for _dev in ${PRINTERDEVICE:Nhtml} 171.if !target(${DFILE.${_dev}}) 172.if target(_stamp.extra) 173${DFILE.${_dev}}: _stamp.extra 174.endif 175${DFILE.${_dev}}: ${SRCS} 176.if ${MK_DOCCOMPRESS} == "no" 177 ${ROFF.${_dev}} ${.ALLSRC:N_stamp.extra} > ${.TARGET} 178.else 179 ${ROFF.${_dev}} ${.ALLSRC:N_stamp.extra} | ${DCOMPRESS_CMD} > ${.TARGET} 180.endif 181.endif 182.endfor 183 184.for _dev in ${PRINTERDEVICE:Mhtml} 185.if !target(${DFILE.html}) 186.if target(_stamp.extra) 187${DFILE.html}: _stamp.extra 188.endif 189${DFILE.html}: ${SRCS} 190.if defined(MACROS) && !empty(MACROS) 191 cd ${SRCDIR}; ${UNROFF} ${MACROS} ${UNROFFFLAGS} \ 192 document=${DOC} ${SRCS} 193.else # unroff(1) requires a macro package as an argument 194 cd ${SRCDIR}; ${UNROFF} -ms ${UNROFFFLAGS} \ 195 document=${DOC} ${SRCS} 196.endif 197.endif 198.endfor 199 200DISTRIBUTION?= doc 201 202.include <bsd.obj.mk> 203