3 # This handles man pages with po4a. We convert to the respective
4 # output in the source directory then copy over to the final dest. This
5 # means po4a is only needed if compiling from bzr
8 # $(LC) - The language code of the translation
10 # See defaults.mak for information about LOCAL
12 # generate a list of accepted man page translations
13 SOURCE
= $(patsubst %.xml
,%,$(wildcard *.
$(LC
).?.xml
))
14 INCLUDES
= apt.ent apt-verbatim.ent apt-vendor.ent
18 # Do not use XMLTO, build the manpages directly with XSLTPROC
21 STYLESHEET
=manpage-style.xsl
23 LOCAL
:= po4a-manpage-
$(firstword $(SOURCE
))
24 $(LOCAL
)-LIST
:= $(SOURCE
)
26 # Install generation hooks
27 manpages
: $($(LOCAL
)-LIST
)
29 veryclean
: veryclean
/$(LOCAL
)
31 apt-verbatim.ent
: ..
/apt-verbatim.ent
32 cp
-a ..
/apt-verbatim.ent .
34 apt-vendor.ent
: ..
/apt-vendor.ent
35 cp
-a ..
/apt-vendor.ent .
37 manpage-style.xsl
: ..
/manpage-style.xsl
38 sed
"/<!-- LANGUAGE -->/ i\
39 <xsl:param name=\"l10n.gentext.default.language\" select=\"'$(LC)'\" />" ..
/manpage-style.xsl
> manpage-style.xsl
41 $($(LOCAL
)-LIST
) :: % : %.xml
$(STYLESHEET
) $(INCLUDES
)
42 echo Creating man page
$@
43 $(XSLTPROC
) -o
$@
$(STYLESHEET
) $< || exit
200 # why xsltproc doesn't respect the -o flag here???
44 test -f
$(subst .
$(LC
),,$@
) || echo
'FIXME: xsltproc respects the -o flag now, workaround can be removed'
45 mv
-f
$(subst .
$(LC
),,$@
) $@
48 .PHONY
: clean/$(LOCAL
) veryclean
/$(LOCAL
)
50 rm -f
$($(@F
)-LIST
) apt.ent apt-verbatim.ent
52 # we are nuking the directory we are working in as it is auto-generated
53 rm -rf
$(shell readlink
-f .
)
58 # take care of the rest
59 SOURCE
:= $(SOURCE
) $(wildcard apt.
$(LC
).8)
63 # Strip from the source list any man pages we dont have compiled already
64 SOURCE
:= $(wildcard $(SOURCE
))
67 # Chain to the manpage rule
68 ifneq ($(words $(SOURCE
)),0)
72 # Debian Doc SGML Documents
73 SOURCE
:= $(wildcard *.
$(LC
).sgml
)
74 DEBIANDOC_HTML_OPTIONS
=-l
$(LC
).UTF-8
75 include $(DEBIANDOC_H
)