1# from: @(#)Makefile 5.9 (Berkeley) 7/1/91 2# $NetBSD: Makefile,v 1.19 2024/04/05 23:05:53 christos Exp $ 3 4# 5# Note: Needs ps2pdf to convert .ps to .pdf 6# 7 8.include <bsd.own.mk> 9 10.if ${MKSHARE} != "no" && ${MKMAKEMANDB} == "no" 11FILES= makewhatis.sed 12FILESDIR= /usr/share/man 13.endif 14 15SECTIONS?= 1 2 3 4 5 6 7 8 9 16 17MANSRCDIRS= "${.CURDIR}/../../.." ../../.. 18 19# Takes out some fluff from the PostScript files created by 20# grops which does some VM saving/restoring that bloats the 21# PDF file pdf2ps generates. By uwe@NetBSD.org. 22OPTIMIZE_PDF?= \ 23 -e '/^\/level0 0 def/d' \ 24 -e '/^\/level0 save/d' \ 25 -e '/^level0 restore/d' 26 27MAN0SRCS= 28.if ${MKMAN} != "no" 29MAN0SRCS+= all.files 30MAN0SRCS+= ${SECTIONS:@S@man${S}pages.files@} 31MAN0SRCS+= ${SECTIONS:@S@man${S}pages.ps @} 32MAN0SRCS+= ${SECTIONS:@S@man${S}pages.pdf@} 33.endif 34 35CLEANFILES+= ${MAN0SRCS} 36CLEANFILES+= *.tmp 37CLEANFILES+= toc? tocx? 38 39all: ${MAN0SRCS} 40 41all.files: 42 ${_MKTARGET_CREATE} 43 find ${MANSRCDIRS} -name '*.[1-9]' -print \ 44 | xargs ${TOOL_MKMAGIC} \ 45 | ${TOOL_GREP} troff \ 46 | ${TOOL_SED} 's/:[ ]*.*$$//' \ 47 | ${TOOL_GREP} -F -v -f "${.CURDIR}/noman" \ 48 | ${TOOL_GREP} -v '#' \ 49 | ${TOOL_GREP} -v '/obj\.' \ 50 | ${TOOL_GREP} -v '/destdir\.' \ 51 | ${TOOL_GREP} -v '/tooldir\.' \ 52 > ${.TARGET}.tmp \ 53 && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ 54 rm -f ${.TARGET}.tmp 55 56 57.for _S in ${SECTIONS} 58 59man${_S}pages.files: all.files 60 ${_MKTARGET_CREATE} 61 cat ${.ALLSRC} \ 62 | ${TOOL_GREP} "${_S}\$$" \ 63 | ${TOOL_SED} 's,\(.*/\)\([^/]*\),\2 \1\2,' \ 64 | sort \ 65 | ${TOOL_SED} 's/^.* //' \ 66 > ${.TARGET}.tmp \ 67 && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ 68 rm -f ${.TARGET}.tmp 69 70man${_S}pages.ps: man${_S}pages.files 71 ${_MKTARGET_CREATE} 72 for f in `${TOOL_GREP} "${_S}\$$" "${.CURDIR}/intros"` `cat ${.ALLSRC}` ; \ 73 do \ 74 if [ ! -f $${f} ]; then \ 75 continue ; \ 76 fi ; \ 77 if ${TOOL_GREP} -q ^\\.TS "${.CURDIR}/back" ; \ 78 then \ 79 ${_MKSHMSG_FORMAT} >&2 $${f} ; \ 80 cat $${f} | ${TOOL_TBL} | ${TOOL_GROFF} -Z -msafer -man -Tps ${ROFF_PAGESIZE}; \ 81 else \ 82 ${_MKSHMSG_FORMAT} >&2 $${f} "(tbl)"; \ 83 cat $${f} | ${TOOL_GROFF} -Z -msafer -man -Tps ${ROFF_PAGESIZE}; \ 84 fi ; \ 85 done > ${.TARGET}.troff.tmp \ 86 && cat ${.TARGET}.troff.tmp \ 87 | ${TOOL_GREP} -v '^x stop' \ 88 | ${TOOL_GROPS} \ 89 > ${.TARGET}.tmp \ 90 && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ 91 rm -f ${.TARGET}.tmp ${.TARGET}.troff.tmp 92 93man${_S}pages.pdf: man${_S}pages.ps 94 ${_MKTARGET_CREATE} 95 cat ${.ALLSRC} \ 96 | ${TOOL_SED} ${OPTIMIZE_PDF} \ 97 | ps2pdf - - \ 98 > ${.TARGET}.tmp \ 99 && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ 100 rm -f ${.TARGET}.tmp 101 102.endfor 103 104man.tgz: 105 tar plzvcf manpages-ps.tgz man?pages.ps 106 tar plzvcf manpages-pdf.tgz man?pages.pdf 107 108.include <bsd.files.mk> 109