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
|
# -*- make -*-
# This handles man pages with po4a. We convert to the respective
# output in the source directory then copy over to the final dest. This
# means po4a is only needed if compiling from bzr
# Input
# $(LC) - The language code of the translation
# See defaults.mak for information about LOCAL
# generate a list of accepted man page translations
SOURCE = $(patsubst %.xml,%,$(wildcard *.$(LC).?.xml))
INCLUDES = apt.ent apt-verbatim.ent apt-vendor.ent
manpages:
%.xsl: ../%.xsl
cp -a $< .
# Do not use XMLTO, build the manpages directly with XSLTPROC
ifdef XSLTPROC
STYLESHEET=manpage-style.xsl
LOCAL := po4a-manpage-$(firstword $(SOURCE))
$(LOCAL)-LIST := $(SOURCE)
# Install generation hooks
manpages: $($(LOCAL)-LIST)
clean: clean/$(LOCAL)
veryclean: veryclean/$(LOCAL)
apt-verbatim.ent: ../apt-verbatim.ent
cp -a ../apt-verbatim.ent .
apt-vendor.ent: ../apt-vendor.ent
cp -a ../apt-vendor.ent .
$($(LOCAL)-LIST) :: % : %.xml $(STYLESHEET) $(INCLUDES)
echo Creating man page $@
$(XSLTPROC) \
--stringparam l10n.gentext.default.language $(LC) \
-o $@ $(STYLESHEET) $< || exit 200 # why xsltproc doesn't respect the -o flag here???
test -f $(subst .$(LC),,$@) || echo 'FIXME: xsltproc respects the -o flag now, workaround can be removed'
mv -f $(subst .$(LC),,$@) $@
# Clean rule
.PHONY: clean/$(LOCAL) veryclean/$(LOCAL)
clean/$(LOCAL):
rm -f $($(@F)-LIST) apt.ent apt-verbatim.ent
veryclean/$(LOCAL):
# we are nuking the directory we are working in as it is auto-generated
rm -rf $(shell readlink -f .)
HAVE_PO4A=yes
endif
# take care of the rest
SOURCE := $(SOURCE) $(wildcard apt.$(LC).8)
INCLUDES :=
ifndef HAVE_PO4A
# Strip from the source list any man pages we dont have compiled already
SOURCE := $(wildcard $(SOURCE))
endif
# Chain to the manpage rule
ifneq ($(words $(SOURCE)),0)
include $(MANPAGE_H)
endif
# DocBook XML Documents
SOURCE := $(wildcard *.$(LC).dbk)
include $(DOCBOOK_H)
|