aboutsummaryrefslogtreecommitdiff
path: root/share/mk/doc.common.mk
blob: 3404ab36f9eca6e14791196eb4eae1c5df0f02fb (plain) (blame)
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#
# $FreeBSD$
#
# This include file <doc.common.mk> provides targets and variables for
# documents commonly used in doc/ and www/ tree.
#

AWK?=		/usr/bin/awk
GREP?=		/usr/bin/grep
REALPATH?=	/bin/realpath
SED?=		/usr/bin/sed
# a hack to keep tidy from converting tabs to spaces
# replace them with &#09; before calling tidy
REINPLACE_TABS_CMD?=	${SED} -i "" -e 's/	/\&\#09;/g'

# ------------------------------------------------------------------------
#
# Work out the language and encoding used for this document.
#
# Liberal default of maximum of 10 directories below to find it.
#

.if defined(DOC_PREFIX) && !empty(DOC_PREFIX)
DOC_PREFIX_NAME!=	${REALPATH} ${DOC_PREFIX}
DOC_PREFIX_NAME:=	${DOC_PREFIX_NAME:T}
.else
DOC_PREFIX_NAME?=	head
.endif

.if (!defined(LANGCODE) || empty(LANGCODE))
# Calculate _LANGCODE.
_LANGCODE:=	${.CURDIR}
. for _ in 1 2 3 4 5 6 7 8 9 10
.  if !(${_LANGCODE:H:T} == ${DOC_PREFIX_NAME})
_LANGCODE:=	${_LANGCODE:H}
.  endif
. endfor
_LANGCODE:=	${_LANGCODE:T}
.else # (!defined(LANGCODE) || empty(LANGCODE))
# when LANGCODE is defined, use the value.
_LANGCODE?=	${LANGCODE}
.endif # (!defined(LANGCODE) || empty(LANGCODE))

LANGCODE?=	${_LANGCODE}

# normalize DOC_PREFIX
DOC_PREFIX!=	${REALPATH} ${DOC_PREFIX}

.if !defined(URL_RELPREFIX)
URLS_ABSOLUTE=	YES
.elif !defined(URLS_ABSOLUTE)
_URL_RELPREFIX_LEVEL!=	set -- ${URL_RELPREFIX:S,/$,,:S,/, ,g}; echo "$$\#"
URL_RELPREFIX_ENT=	freebsd.urls.relprefix.${_URL_RELPREFIX_LEVEL}
.endif

#
# when URLS_ABSOLUTE is specified, make
# %freebsd.urls.absolute; "INCLUDE".
#
.if defined(URLS_ABSOLUTE)
HTMLFLAGS+=	-ifreebsd.urls.absolute
SGMLNORMFLAGS+=	-ifreebsd.urls.absolute
NSGMLSFLAGS+=	-ifreebsd.urls.absolute
.elif defined(URL_RELPREFIX_ENT) && !empty(URL_RELPREFIX_ENT)
HTMLFLAGS+=	-i${URL_RELPREFIX_ENT}
SGMLNORMFLAGS+=	-i${URL_RELPREFIX_ENT}
NSGMLSFLAGS+=	-i${URL_RELPREFIX_ENT}
.endif

# for ascii and printable format, always use URLS_ABSOLUTE.
PRINTFLAGS+=	-ifreebsd.urls.absolute
HTMLTXTFLAGS+=	-ifreebsd.urls.absolute
OTHERFLAGS+=	-ifreebsd.urls.absolute

# for packages, always use URLS_ABSOLUTE.
PKGMAKEFLAGS+=	URLS_ABSOLUTE=yes