]> git.donarmstrong.com Git - lilypond.git/blob - make/doclang-targets.make
Merge branch 'master' of git://git.sv.gnu.org/lilypond
[lilypond.git] / make / doclang-targets.make
1 # one assumes depth and ISOLANG are defined
2
3 OUT_ITEXI_FILES = $(ITELY_FILES:%.itely=$(outdir)/%.itexi)
4
5 TEXINFO_PAPERSIZE_OPTION= $(if $(findstring $(PAPERSIZE),a4),,-t @afourpaper)
6
7 LILYPOND_BOOK_INCLUDES += \
8   -I$(top-src-dir)/Documentation/user \
9   -I$(top-build-dir)/Documentation/user/$(outdir)
10
11 default:
12
13 $(outdir)/%.nexi: $(ITELY_FILES) $(ITEXI_FILES)
14
15 MAKEINFO_FLAGS += --force
16
17 $(outdir)/%/index.html: $(outdir)/%.nexi $(outdir)/user-ln doc-po
18         mkdir -p $(dir $@)
19         -$(MAKEINFO) $(MAKEINFO_FLAGS) -I$(outdir) --output=$(outdir)/$* --css-include=$(top-src-dir)/Documentation/texinfo.css --html $<
20
21 # we don't make the big page until the whole manual is translated
22 # if this happens, we'll have to define local-WWW differently for this language
23 #$(outdir)/lilypond.html: $(outdir)/lilypond.nexi
24 #       -$(MAKEINFO) $(MAKEINFO_FLAGS) -I$(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split --no-headers $< 
25
26 $(outdir)/%.pdf: $(outdir)/%.texi $(outdir)/user-ln doc-po
27         $(PYTHON) $(buildscript-dir)/texi-gettext.py $(buildscript-dir) $(top-build-dir)/Documentation/po/$(outdir) $(ISOLANG) $<
28         cd $(outdir); texi2pdf --batch $(TEXINFO_PAPERSIZE_OPTION) $(notdir $*).pdftexi
29
30 TELY_FILES = $(call src-wildcard,*.tely)
31 DEEP_HTML_FILES = $(TELY_FILES:%.tely=$(outdir)/%/index.html)
32 PDF_FILES = $(TELY_FILES:%.tely=$(outdir)/%.pdf)
33
34 local-WWW: $(DEEP_HTML_FILES) $(PDF_FILES)
35         find $(outdir) -name '*.html' | xargs grep -L 'UNTRANSLATED NODE: IGNORE ME' | xargs $(PYTHON) $(buildscript-dir)/html-gettext.py $(buildscript-dir) $(top-build-dir)/Documentation/po/$(outdir) $(ISOLANG)
36         find $(outdir) -name '*.html' | xargs grep -L --label="" 'UNTRANSLATED NODE: IGNORE ME' | sed 's!$(outdir)/!!g' | xargs $(PYTHON) $(buildscript-dir)/mass-link.py --prepend-suffix .$(ISOLANG) hard $(outdir) $(top-build-dir)/Documentation/user/$(outdir) $(TELY_FILES:%.tely=%.pdf)
37         find $(outdir) \( -name 'lily-??????????.png' -o -name 'lily-??????????.ly' \) -a -not -type l | sed 's!$(outdir)/!!g' | xargs $(PYTHON) $(buildscript-dir)/mass-link.py hard $(outdir) $(top-build-dir)/Documentation/user/$(outdir)
38
39 LINKED_PNGS = henle-flat-gray.png baer-flat-gray.png lily-flat-bw.png
40
41 # makeinfo MUST have PNGs in cwd for info images to work
42 # symlinking PNGs...
43 # texi2pdf -I flag confuses pdfetex with .aux and other files
44 # from English manual
45 # symlinking lily-*...
46 $(outdir)/user-ln: $(top-build-dir)/Documentation/user/$(outdir)
47         $(PYTHON) $(buildscript-dir)/mass-link.py symbolic $(top-build-dir)/Documentation/user/$(outdir) $(outdir) 'lily-*.pdf' 'lily-*.tex' 'lily-*.texi' 'lily-*.ly' 'lily-*.txt' 'lily-*.png' 'henle-flat-gray.*' 'baer-flat-gray.*' 'lily-flat-bw.*' 'context-example.*'
48         mkdir -p $(outdir)/lilypond
49         cd $(outdir)/lilypond && $(foreach i, $(LINKED_PNGS), ln -sf ../../$(depth)/Documentation/user/$(i) $(i) &&) true
50         touch -mr $(top-build-dir)/Documentation/user/$(outdir) $@
51
52 local-WWW-clean: deep-WWW-clean
53
54 deep-WWW-clean:
55         rm -rf $(outdir)/lilypond*
56
57 web-clean: clean
58         $(MAKE) out=www local-WWW-clean
59
60 doc-po:
61         $(MAKE) -C $(depth)/Documentation/po messages