xref: /freebsd/share/mk/bsd.man.mk (revision 8e6b01171e30297084bb0b4457c4183c2746aacc)
1#	$Id: bsd.man.mk,v 1.6 1995/10/14 08:16:04 bde Exp $
2
3.if exists(${.CURDIR}/../Makefile.inc)
4.include "${.CURDIR}/../Makefile.inc"
5.endif
6
7MANGRP?=	bin
8MANOWN?=	bin
9MANMODE?=	444
10
11MANDIR?=	/usr/share/man/man
12MANSRC?=	${.CURDIR}
13MINSTALL=	${INSTALL} ${COPY} -o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
14
15MCOMPRESS=	gzip -c
16ZEXTENSION=	.gz
17
18SECTIONS=	1 2 3 3f 4 5 6 7 8
19
20.for sect in ${SECTIONS}
21.if defined(MAN${sect}) && !empty(MAN${sect})
22.SUFFIXES: .${sect}
23.PATH.${sect}: ${MANSRC}
24.endif
25.endfor
26
27all-man: ${MANDEPEND}
28
29.if defined(NOMANCOMPRESS)
30
31COPY=		-c
32ZEXT=
33
34.else
35
36ZEXT=		${ZEXTENSION}
37
38.for sect in ${SECTIONS}
39.if defined(MAN${sect}) && !empty(MAN${sect})
40CLEANFILES+=	${MAN${sect}:T:S/$/${ZEXTENSION}/g}
41.for page in ${MAN${sect}}
42.for target in ${page:T:S/$/${ZEXTENSION}/}
43all-man: ${target}
44${target}: ${page}
45	${MCOMPRESS} ${.ALLSRC} > ${.TARGET}
46.endfor
47.endfor
48.endif
49.endfor
50
51.endif
52
53maninstall::
54.for sect in ${SECTIONS}
55.if defined(MAN${sect}) && !empty(MAN${sect})
56maninstall:: ${MAN${sect}}
57.if defined(NOMANCOMPRESS)
58	${MINSTALL} ${.ALLSRC} ${DESTDIR}${MANDIR}${sect}${MANSUBDIR}
59.else
60	${MINSTALL} ${.ALLSRC:T:S/$/${ZEXTENSION}/g} \
61		${DESTDIR}${MANDIR}${sect}${MANSUBDIR}
62.endif
63.endif
64.endfor
65
66.if defined(MLINKS) && !empty(MLINKS)
67	@set ${MLINKS}; \
68	while test $$# -ge 2; do \
69		name=$$1; \
70		shift; \
71		sect=`expr $$name : '.*\.\([^.]*\)'`; \
72		dir=${DESTDIR}${MANDIR}$$sect; \
73		l=$${dir}${MANSUBDIR}/$$name; \
74		name=$$1; \
75		shift; \
76		sect=`expr $$name : '.*\.\([^.]*\)'`; \
77		dir=${DESTDIR}${MANDIR}$$sect; \
78		t=$${dir}${MANSUBDIR}/$$name; \
79		${ECHO} $${t}${ZEXT} -\> $${l}${ZEXT}; \
80		rm -f $${t} $${t}${ZEXTENSION}; \
81		ln $${l}${ZEXT} $${t}${ZEXT}; \
82	done; true
83.endif
84