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
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)
28 veryclean: veryclean/$(LOCAL)
30 apt-verbatim.ent: ../apt-verbatim.ent
31 cp ../apt-verbatim.ent .
33 manpage-style.xsl: ../manpage-style.xsl
34 sed "/<!-- LANGUAGE -->/ i\
35 <xsl:param name=\"l10n.gentext.default.language\" select=\"'$(LC)'\" />" ../manpage-style.xsl > manpage-style.xsl
37 $($(LOCAL)-LIST) :: % : %.xml $(STYLESHEET) $(INCLUDES)
38 echo Creating man page $@
39 $(XSLTPROC) -o $@ $(STYLESHEET) $< || exit 200 # why xsltproc doesn't respect the -o flag here???
40 test -f $(subst .$(LC),,$@) || echo FIXME: xsltproc respect the -o flag now, workaround can be removed
41 mv -f $(subst .$(LC),,$@) $@
44 .PHONY: veryclean/$(LOCAL)
46 -rm -rf $($(@F)-LIST) apt.ent apt-verbatim.ent apt.$(LC).8 \
47 $(addsuffix .xml,$($(@F)-LIST)) \
48 offline.$(LC).sgml guide.$(LC).sgml
53 # take care of the rest
54 SOURCE := $(SOURCE) $(wildcard apt.$(LC).8)
58 # Strip from the source list any man pages we dont have compiled already
59 SOURCE := $(wildcard $(SOURCE))
62 # Chain to the manpage rule
63 ifneq ($(words $(SOURCE)),0)
67 # Debian Doc SGML Documents
68 SOURCE := $(wildcard *.$(LC).sgml)
69 DEBIANDOC_HTML_OPTIONS=-l $(LC).UTF-8
70 include $(DEBIANDOC_H)