# $Header: Man.mk,v 1.0 90/03/05 09:21:28 brad Exp $

###
# target directories
###
MAN1=	man1
MAN3=	man3
LOCALMAN=	local_man
MANDIR=	/usr/man/${LOCALMAN}
CATMANDIR=	/usr/catman/${LOCALMAN}

###
# commands
###
COL=	col
COLFLAGS=	-b
SOELIM=	/usr/ucb/soelim
MANTOCATMAN=	/usr/ucb/mantocatman
TROFF=	roff
TRFLAGS=	-man -dimagen1
NROFF=	nroff
NRFLAGS=	-man
SPELL=	spell
COPY=	/bin/cp
DEL=	/bin/rm -f

###
# files used
###
INCS=	*.inc
SRCS=	argtype.man3  parseargs.man1  parseargs.man3  parsecntl.man3
MANIFEST=	Manifest
MAN3FILES=	argtype.3  parseargs.3  parsecntl.3
MAN1FILES=	parseargs.1
CATMAN3FILES=	argtype.3.z  parseargs.3.z  parsecntl.3.z
CATMAN1FILES=	parseargs.1.z

###
# target dependencies
###
.SUFFIXES: .man1 .man3 .1 .3

.man1.1:
	${SOELIM} $< >$*.1
	${MANTOCATMAN} $*.1

.man3.3:
	${SOELIM} $< >$*.3
	${MANTOCATMAN} $*.3

###
# give a usage message if no target is given
###
usage:
	@echo "Usage: make <target>"
	@echo " "
	@echo "where <target> is one of the following: "
	@echo " "
	@echo "   install  -- to install the documentation"
	@echo "   print    -- to print the documentation"
	@echo "   view     -- to view the documentation"
	@echo "   text     -- to build text copies of the documentation"
	@echo "   spell    -- to spell check the documentation"
	@echo "   clean    -- to remove files"

###
# installation dependencies
###
install: man1  man3

man1: ${MAN1FILES}
	${COPY} ${MAN1FILES} ${MANDIR}/${MAN1}
	${COPY} ${CATMAN1FILES} ${CATMANDIR}/${MAN1}

man3: ${MAN3FILES}
	${COPY} ${MAN3FILES} ${MANDIR}/${MAN3}
	${COPY} ${CATMAN3FILES} ${CATMANDIR}/${MAN3}

###
# include dependencies
###
argtype.3:
parseargs.1:
parseargs.3:
parsecntl.3:


###
# maintenance dependencies
###
clean:
	${DEL} ${MAN1FILES} ${MAN3FILES} ${CATMAN1FILES} ${CATMAN3FILES}

clobber: clean
	${DEL} *.txt

spell: ${INCS} ${SRCS}}
	${SPELL} ${SPELLFLAGS} ${INCS} ${SRCS}

print: ${MANFILES} ${INCS}
	${TROFF} ${TRFLAGS} ${SRCS}

text: ascii
txt: ascii
ascii:
	${NROFF} ${NRFLAGS} argtype.man3 | ${COL} ${COLFLAGS} >argtype3.txt
	${NROFF} ${NRFLAGS} parseargs.man1 | ${COL} ${COLFLAGS} >parseargs1.txt
	${NROFF} ${NRFLAGS} parseargs.man3 | ${COL} ${COLFLAGS} >parseargs3.txt
	${NROFF} ${NRFLAGS} parsecntl.man3 | ${COL} ${COLFLAGS} >parsecntl3.txt

view: ${MANFILES} ${INCS}
	${NROFF} ${NRFLAGS} ${SRCS}

