summaryrefslogtreecommitdiff
path: root/mk/help/help.mk
blob: d3224bae417bac7f95cd5076bf9c82ac4ba56f64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# $NetBSD: help.mk,v 1.7 2007/03/09 01:34:50 rillig Exp $
#

# This is the integrated pkgsrc online help system. To query for the
# meaning of a variable, run "make help TOPIC=VARNAME". All variables from
# certain pkgsrc Makefile fragments that have inline comments are eligible
# for querying.

.if !defined(_PKGSRC_HELP_MK)
_PKGSRC_HELP_MK=	# defined

_HELP_FILES=		Makefile
_HELP_FILES+=		mk/*.mk mk/*/*.mk mk/*/*/*.mk
_HELP_FILES+=		mk/defaults/mk.conf
_HELP_FILES+=		lang/perl5/*.mk lang/php/*.mk lang/python/*.mk
_HELP_FILES+=		lang/ruby/*.mk
_HELP_FILES+=		mk/*/*.help

.if defined(VARNAME)
TOPIC?=		${VARNAME}
.endif
.if defined(topic)
TOPIC?=		${topic}
.endif

.PHONY: help
help:
.if !defined(TOPIC)
	@${PRINTF} "usage: %s help topic=<topic>\\n" ${MAKE:Q}
	@${PRINTF} "\\n"
	@${PRINTF} "\\t<topic> may be a variable name or a make target,\\n"
	@${PRINTF} "\\tfor example CONFIGURE_DIRS or patch. For convenience,\\n"
	@${PRINTF} "\\tyou don't need to use uppercase letters when typing\\n"
	@${PRINTF} "\\tvariable names.\\n"
	@${PRINTF} "\\n"
.else
	${RUN} cd ${PKGSRCDIR};						\
	env TOPIC=${TOPIC:Q} ${AWK} -f ${PKGSRCDIR}/mk/help/help.awk ${_HELP_FILES}
.endif

.endif