]> git.donarmstrong.com Git - lilypond.git/blob - make/doclang-targets.make
13c32dab1f452c51b7e7a014b48a52d376e001c8
[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)/lilypond.nexi: $(ITELY_FILES) $(ITEXI_FILES)
14
15 MAKEINFO = LANG=$(ISOLANG) $(MAKEINFO_PROGRAM) --force
16
17 $(outdir)/lilypond/index.html: png-ln $(outdir)/lilypond.nexi doc-po
18         mkdir -p $(dir $@)
19         -$(MAKEINFO) -I$(outdir) --output=$(outdir)/lilypond --css-include=$(top-src-dir)/Documentation/texinfo.css --html $<
20         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)
21
22 # we don't make the big page until the whole manual is translated
23 # if this happens, we'll have to define local-WWW differently for this language
24 #$(outdir)/lilypond.html: $(outdir)/lilypond.nexi
25 #       -$(MAKEINFO) -I$(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split --no-headers $< 
26
27 $(outdir)/%.pdf: $(outdir)/%.texi $(outdir)/lilypond/index.html
28         $(PYTHON) $(buildscript-dir)/texi-gettext.py $(buildscript-dir) $(top-build-dir)/Documentation/po/$(outdir) $(ISOLANG) $(<)
29         cd $(outdir); texi2pdf -I $(top-build-dir)/Documentation/user/$(outdir) --batch $(TEXINFO_PAPERSIZE_OPTION) $(<F)
30
31 local-WWW: $(outdir)/lilypond/index.html $(outdir)/lilypond.pdf lang-merge
32
33 lang-merge: $(outdir)/lilypond/index.html $(outdir)/lilypond.pdf
34         $(foreach i, $(shell find $(outdir) -name '*.html' | xargs grep -L --label="" 'UNTRANSLATED NODE: IGNORE ME'), ln -f $(i) $(i:$(outdir)/%.html=$(depth)/Documentation/user/$(outdir)/%.$(ISOLANG).html) &&) ln -f $(outdir)/lilypond.pdf $(depth)/Documentation/user/$(outdir)/lilypond.$(ISOLANG).pdf && true
35
36 LINKED_PNGS = henle-flat-gray.png baer-flat-gray.png lily-flat-bw.png
37
38 # makeinfo is broken, it MUST have PNGs in output dir
39 # strangely, this is not true for ly PNGs
40 # symlinking PNGs...
41 png-ln:
42         mkdir -p $(outdir)/lilypond
43         cd $(outdir) && $(foreach i, $(LINKED_PNGS), ln -sf ../$(depth)/Documentation/user/$(i) $(i) &&) true
44         cd $(outdir)/lilypond && $(foreach i, $(LINKED_PNGS), ln -sf ../../$(depth)/Documentation/user/$(i) $(i) &&) true
45
46 local-WWW-clean: deep-WWW-clean
47
48 deep-WWW-clean:
49         rm -rf $(outdir)/lilypond
50
51 web-clean: clean
52         $(MAKE) out=www local-WWW-clean
53
54 doc-po:
55         $(MAKE) -C $(depth)/Documentation/po messages