]>
Commit | Line | Data |
---|---|---|
1 | # -*- make -*- | |
2 | BASE=.. | |
3 | SUBDIR=doc | |
4 | ||
5 | # Bring in the default rules | |
6 | include ../buildlib/defaults.mak | |
7 | ||
8 | # Debian Doc SGML Documents | |
9 | SOURCE = $(wildcard *.sgml) | |
10 | DEBIANDOC_HTML_OPTIONS=-l en.UTF-8 | |
11 | include $(DEBIANDOC_H) | |
12 | ||
13 | doc: manpages debiandoc | |
14 | ||
15 | examples/sources.list: examples/sources.list.in apt-verbatim.ent | |
16 | sed -e 's#&stable-codename;#$(shell grep --max-count=1 '^<!ENTITY stable-codename "' apt-verbatim.ent | cut -d'"' -f 2)#g' examples/sources.list.in > examples/sources.list | |
17 | ||
18 | # Examples | |
19 | SOURCE = examples/apt.conf examples/sources.list examples/configure-index examples/apt-https-method-example.conf | |
20 | TO = $(DOC) | |
21 | TARGET = binary | |
22 | include $(COPY_H) | |
23 | ||
24 | .PHONY: clean clean/subdirs veryclean veryclean/subdirs manpages/subdirs debiandoc/subdirs all binary doc stats | |
25 | ||
26 | clean: clean/subdirs | |
27 | veryclean: veryclean/subdirs | |
28 | manpages: manpages/subdirs | |
29 | debiandoc: debiandoc/subdirs | |
30 | ||
31 | DOCUMENTATIONPO = $(patsubst %.po,%,$(notdir $(wildcard po/*.po))) | |
32 | DOCDIRLIST = $(addsuffix /makefile,$(DOCUMENTATIONPO)) | |
33 | ||
34 | dirs: $(DOCDIRLIST) | |
35 | $(DOCDIRLIST) :: %/makefile : lang.makefile | |
36 | test -d $(dir $@) || mkdir $(dir $@) | |
37 | sed "s#@@LANG@@#$(subst /,,$(dir $@))#" $< > $@ | |
38 | ||
39 | debiandoc/subdirs manpages/subdirs clean/subdirs veryclean/subdirs: | |
40 | for dir in en $(dir $(DOCDIRLIST)); do \ | |
41 | $(MAKE) -C $$dir $(patsubst %/subdirs,%,$@); \ | |
42 | done | |
43 | ||
44 | stats: | |
45 | for i in po/*.po; do echo -n "$$i: "; msgfmt --output-file=/dev/null --statistics $$i; done | |
46 | ||
47 | ifdef PO4A | |
48 | MANPAGEPOLIST = $(addprefix manpages-translation-,$(DOCUMENTATIONPO)) | |
49 | DEBIANDOCPOLIST = $(addprefix debiandoc-translation-,$(DOCUMENTATIONPO)) | |
50 | ||
51 | .PHONY: update-po po4a $(MANPAGEPOLIST) $(DEBIANDOCPOLIST) $(DOCDIRLIST) | |
52 | ||
53 | po4a: manpages/subdirs debiandoc/subdirs | |
54 | ||
55 | update-po: | |
56 | po4a --previous --no-backups --force --no-translations \ | |
57 | --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ | |
58 | --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf | |
59 | ||
60 | manpages/subdirs: $(MANPAGEPOLIST) | |
61 | $(MANPAGEPOLIST) :: manpages-translation-% : %/makefile po4a.conf | |
62 | # first line is for apt.8 (see Bug#696923) | |
63 | po4a --previous --no-backups --translate-only $(dir $<)apt.ent \ | |
64 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.8,%.$(subst /,,$(dir $<)).8,$(wildcard *.8))) \ | |
65 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.1.xml,%.$(subst /,,$(dir $<)).1.xml,$(wildcard *.1.xml))) \ | |
66 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.2.xml,%.$(subst /,,$(dir $<)).2.xml,$(wildcard *.2.xml))) \ | |
67 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.3.xml,%.$(subst /,,$(dir $<)).3.xml,$(wildcard *.3.xml))) \ | |
68 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.4.xml,%.$(subst /,,$(dir $<)).4.xml,$(wildcard *.4.xml))) \ | |
69 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.5.xml,%.$(subst /,,$(dir $<)).5.xml,$(wildcard *.5.xml))) \ | |
70 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.6.xml,%.$(subst /,,$(dir $<)).6.xml,$(wildcard *.6.xml))) \ | |
71 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.7.xml,%.$(subst /,,$(dir $<)).7.xml,$(wildcard *.7.xml))) \ | |
72 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.8.xml,%.$(subst /,,$(dir $<)).8.xml,$(wildcard *.8.xml))) \ | |
73 | --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ | |
74 | --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf | |
75 | ||
76 | debiandoc/subdirs: $(DEBIANDOCPOLIST) | |
77 | $(DEBIANDOCPOLIST) :: debiandoc-translation-% : %/makefile po4a.conf | |
78 | po4a --previous --no-backups --translate-only $(dir $<)apt.ent \ | |
79 | $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.sgml,%.$(subst /,,$(dir $<)).sgml,$(wildcard *.sgml))) \ | |
80 | --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ | |
81 | --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf | |
82 | endif | |
83 | ||
84 | ifdef DOXYGEN | |
85 | DOXYGEN_SOURCES = $(shell find $(BASE)/apt-pkg -not -name .\\\#* -and \( -name \*.cc -or -name \*.h \) ) | |
86 | ||
87 | clean: doxygen-clean | |
88 | ||
89 | doxygen-clean: | |
90 | rm -fr $(BUILD)/doc/doxygen | |
91 | rm -f $(BUILD)/doc/doxygen-stamp | |
92 | ||
93 | $(BUILD)/doc/doxygen-stamp: $(DOXYGEN_SOURCES) $(BUILD)/doc/Doxyfile | |
94 | rm -fr $(BUILD)/doc/doxygen | |
95 | mkdir $(BUILD)/doc/doxygen # some versions seem to not create this directory #628799 | |
96 | $(DOXYGEN) $(BUILD)/doc/Doxyfile | |
97 | touch $(BUILD)/doc/doxygen-stamp | |
98 | ||
99 | debiandoc: $(BUILD)/doc/doxygen-stamp | |
100 | endif |