xref: /illumos-gate/usr/src/man/Makefile.man (revision 287247a826fa2ab8d01f6c8f276d405eb08420f8)
1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet
9# at http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright 2011, Richard Lowe
14# Copyright 2014 Nexenta Systems, Inc.  All rights reserved.
15#
16
17MANDOC=		$(ONBLD_TOOLS)/bin/${MACH}/mandoc
18ROOTMAN=	$(ROOT)/usr/share/man
19ROOTHASMAN=	$(ROOT)/usr/has/man
20FILEMODE=	0444
21
22# The manual section being built, client Makefiles must set this to, for e.g.
23# "3perl", with case matching that of the section name as installed.
24#
25# MANSECT=
26
27MANCHECKS=	$(MANFILES:%=%.check)
28ROOTMANFILES= 	$(MANFILES:%=$(ROOTMAN)/man$(MANSECT)/%)
29ROOTMANLINKS=	$(MANLINKS:%=$(ROOTMAN)/man$(MANSECT)/%)
30
31$(ROOTMAN)/man$(MANSECT)/% $(ROOTHASMAN)/man$(MANSECT)/%: %
32		$(INS.file)
33
34#
35# Note that new mandoc adds some checks for lots of extra whitespace.
36# We don't want to check our legacy pages for that.  There are thousands
37# and thousands of them in our man pages.  Please still check them
38# manually when editing (git pbchk will do so for you.)
39#
40$(MANCHECKS):
41		@$(EGREP) -q "^.TH" $(@:%.check=%) || \
42		( $(ECHO) "checking $(@:%.check=%)"; \
43		$(MANDOC) -Tlint $(@:%.check=%) )
44
45$(MANLINKS):
46		$(RM) $@; $(SYMLINK) $(LINKSRC) $@
47
48$(ROOTMANLINKS): $(MANLINKS)
49		$(RM) $@; $(CP) -RP $(@F) $(@D)
50
51all:
52
53check:		$(MANCHECKS)
54
55clean:
56
57clobber:
58		$(RM) $(MANLINKS)
59
60.PARALLEL:
61
62FRC:
63