Home | History | Annotate | Line # | Download | only in mk
bsd.man.mk revision 1.21
      1 #	$NetBSD: bsd.man.mk,v 1.21 1995/11/25 19:53:33 perry Exp $
      2 #	@(#)bsd.man.mk	5.2 (Berkeley) 5/11/90
      3 
      4 MANTARGET?=	cat
      5 
      6 .if !target(.MAIN)
      7 .if exists(${.CURDIR}/../Makefile.inc)
      8 .include "${.CURDIR}/../Makefile.inc"
      9 .endif
     10 
     11 .MAIN: all
     12 .endif
     13 
     14 .SUFFIXES: .1 .2 .3 .4 .5 .6 .7 .8 .9 .cat1 .cat2 .cat3 .cat4 .cat5 .cat6 \
     15 	.cat7 .cat8 .cat9
     16 
     17 .9.cat9 .8.cat8 .7.cat7 .6.cat6 .5.cat5 .4.cat4 .3.cat3 .2.cat2 .1.cat1:
     18 	@echo "nroff -mandoc ${.IMPSRC} > ${.TARGET}"
     19 	@nroff -mandoc ${.IMPSRC} > ${.TARGET} || ( rm -f ${.TARGET} ; false )
     20 
     21 .if defined(MAN) && !empty(MAN)
     22 MANALL=	${MAN:S/.1$/.cat1/g:S/.2$/.cat2/g:S/.3$/.cat3/g:S/.4$/.cat4/g:S/.5$/.cat5/g:S/.6$/.cat6/g:S/.7$/.cat7/g:S/.8$/.cat8/g:S/.9$/.cat9/g}
     23 .endif
     24 
     25 MINSTALL=	install ${COPY} -o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
     26 .if defined(MANZ)
     27 # chown and chmod are done afterward automatically
     28 MCOMPRESS=	gzip -cf
     29 MCOMPRESSSUFFIX= .gz
     30 .endif
     31 
     32 maninstall:
     33 .if defined(MANALL)
     34 	@for page in ${MANALL}; do \
     35 		dir=${DESTDIR}${MANDIR}`expr $$page : '.*\.cat\([1-9]\)'`; \
     36 		instpage=$${dir}${MANSUBDIR}/`expr $$page : '\(.*\)\.cat[1-9]'`.0${MCOMPRESSSUFFIX}; \
     37 		if [ X"${MCOMPRESS}" = X ]; then \
     38 			echo ${MINSTALL} $$page $$instpage; \
     39 			${MINSTALL} $$page $$instpage; \
     40 		else \
     41 			rm -f $$instpage; \
     42 			echo ${MCOMPRESS} $$page \> $$instpage; \
     43 			${MCOMPRESS} $$page > $$instpage; \
     44 			chown ${MANOWN}:${MANGRP} $$instpage; \
     45 			chmod ${MANMODE} $$instpage; \
     46 		fi \
     47 	done
     48 .endif
     49 .if defined(MLINKS) && !empty(MLINKS)
     50 	@set ${MLINKS}; \
     51 	while test $$# -ge 2; do \
     52 		name=$$1; \
     53 		shift; \
     54 		dir=${DESTDIR}${MANDIR}`expr $$name : '.*\.\(.*\)'`; \
     55 		l=$${dir}${MANSUBDIR}/`expr $$name : '\(.*\)\..*'`.0${MCOMPRESSSUFFIX}; \
     56 		name=$$1; \
     57 		shift; \
     58 		dir=${DESTDIR}${MANDIR}`expr $$name : '.*\.\(.*\)'`; \
     59 		t=$${dir}${MANSUBDIR}/`expr $$name : '\(.*\)\..*'`.0${MCOMPRESSSUFFIX}; \
     60 		echo $$t -\> $$l; \
     61 		rm -f $$t; \
     62 		ln $$l $$t; \
     63 	done
     64 .endif
     65 
     66 .if defined(MANALL)
     67 all: ${MANALL}
     68 
     69 cleandir: cleanman
     70 cleanman:
     71 	rm -f ${MANALL}
     72 .endif
     73