]> git.saurik.com Git - apt.git/blame - buildlib/po4a_manpage.mak
use only one xsl file (and therefore utf-8) for all languages
[apt.git] / buildlib / po4a_manpage.mak
CommitLineData
b01390ea
DK
1# -*- make -*-
2
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
6
7# Input
8# $(LC) - The language code of the translation
9
10# See defaults.mak for information about LOCAL
11
12# generate a list of accepted man page translations
13SOURCE = $(patsubst %.xml,%,$(wildcard *.$(LC).?.xml))
14INCLUDES = apt.ent
15
16# Do not use XMLTO, build the manpages directly with XSLTPROC
17ifdef XSLTPROC
18
bcf91c1b 19STYLESHEET=../manpage-style.xsl
b01390ea
DK
20
21LOCAL := po4a-manpage-$(firstword $(SOURCE))
22$(LOCAL)-LIST := $(SOURCE)
23
24# Install generation hooks
25doc: $($(LOCAL)-LIST)
26veryclean: veryclean/$(LOCAL)
27
28$($(LOCAL)-LIST) :: % : %.xml $(INCLUDES)
29 echo Creating man page $@
30 $(XSLTPROC) -o $@ $(STYLESHEET) $< # why xsltproc doesn't respect the -o flag here???
31 mv -f $(subst .$(LC),,$@) $@
32
33# Clean rule
34.PHONY: veryclean/$(LOCAL)
35veryclean/$(LOCAL):
36 -rm -rf $($(@F)-LIST) apt.ent apt.$(LC).8 \
37 $(addsuffix .xml,$($(@F)-LIST))
38
39HAVE_PO4A=yes
40endif
41
42# take care of the rest
43SOURCE := $(SOURCE) apt.$(LC).8
44INCLUDES :=
45
46ifndef HAVE_PO4A
47# Strip from the source list any man pages we dont have compiled already
48SOURCE := $(wildcard $(SOURCE))
49endif
50
51# Chain to the manpage rule
52ifneq ($(words $(SOURCE)),0)
53include $(MANPAGE_H)
54endif