Merge master.
[dcpomatic.git] / doc / manual / Makefile
1 # DCP-o-matic manual makefile
2
3 all:    html pdf
4
5 DIAGRAMS := 
6
7 SCREENSHOTS := file-new.png video-new-film.png still-new-film.png click-content-selector.png video-select-content-file.png \
8                still-select-content-file.png examine-thumbs.png \
9                calculate-audio-gain.png prefs.png making-dcp.png filters.png film-tab.png video-tab.png audio-tab.png subtitles-tab.png
10
11 XML := dcpomatic.xml
12
13 GRAPHICS := 
14
15 #
16 # For the HTML, default to copying the screenshots direct
17 #
18 html/screenshots/%.png: screenshots/%.png
19         mkdir -p html/screenshots
20         cp $< $@
21
22 #
23 # Some need resizing...
24 #
25 html/screenshots/editor.png: screenshots/editor.png
26         mkdir -p html/screenshots
27         convert -resize 50% $< $@
28 html/screenshots/mixer.png: screenshots/mixer.png
29         mkdir -p html/screenshots
30         convert -resize 50% $< $@
31 html/screenshots/default-folder-for-new-sessions.png: screenshots/default-folder-for-new-sessions.png
32         mkdir -p html/screenshots
33         convert -resize 75% $< $@
34 html/screenshots/welcome-to-ardour.png: screenshots/welcome-to-ardour.png
35         mkdir -p html/screenshots
36         convert -resize 75% $< $@
37 html/screenshots/monitoring-choices.png: screenshots/monitoring-choices.png
38         mkdir -p html/screenshots
39         convert -resize 75% $< $@
40 html/screenshots/monitor-section.png: screenshots/monitor-section.png
41         mkdir -p html/screenshots
42         convert -resize 75% $< $@
43 html/screenshots/audio-midi-setup-device.png: screenshots/audio-midi-setup-device.png
44         mkdir -p html/screenshots
45         convert -resize 75% $< $@
46 html/screenshots/new-session.png: screenshots/new-session.png
47         mkdir -p html/screenshots
48         convert -resize 75% $< $@
49 html/screenshots/export-dialogue.png: screenshots/export-dialogue.png
50         mkdir -p html/screenshots
51         convert -resize 75% $< $@
52
53 # For HTML: convert graphics from SVG to PNG
54 graphics/%.png: graphics/%.svg
55         inkscape -z -f $< --export-png $@ --export-area-drawing
56
57 # For LaTeX/PDF: convert graphics from SVG to PDF
58 graphics/%.pdf: graphics/%.svg
59         inkscape -z -f $< --export-pdf $@ --export-area-drawing
60
61 # For HTML: convert diagrams from SVG to PNG
62 diagrams/%.png: diagrams/%.svg
63         inkscape -z -f $< --export-png $@ --export-area-drawing
64
65 # For LaTeX/PDF: convert diagrams from SVG to PDF
66 diagrams/%.pdf: diagrams/%.svg
67         inkscape -z -f $< --export-pdf $@ --export-area-drawing
68
69 #
70 # HTML
71 #
72
73 html:   $(XML) dcpomatic-html.xsl extensions-html.ent dcpomatic.css \
74         $(addprefix html/screenshots/,$(SCREENSHOTS)) \
75         $(subst .svg,.png,$(addprefix diagrams/,$(DIAGRAMS))) \
76         $(subst .svg,.png,$(addprefix graphics/,$(GRAPHICS))) \
77
78 #       The DocBook needs to know what file extensions to look for
79 #       for screenshots and diagrams; use the correct file to tell it.
80         cp extensions-html.ent extensions.ent
81
82 #       DocBoox -> html
83         xmlto html -m dcpomatic-html.xsl dcpomatic.xml --skip-validation -o html
84
85 #       Copy graphics and CSS in
86 #       mkdir -p html/diagrams html/graphics
87 #       cp diagrams/*.png html/diagrams
88 #       cp graphics/*.png html/graphics
89         cp dcpomatic.css html
90
91 #
92 # PDF
93 #
94
95 pdf:    $(XML) dcpomatic-pdf.xsl extensions-pdf.ent screenshots/*.png $(subst .svg,.pdf,$(addprefix diagrams/,$(DIAGRAMS)))
96
97 #       The DocBook needs to know what file extensions to look for
98 #       for screenshots and diagrams; use the correct file to tell it.
99         cp extensions-pdf.ent extensions.ent
100
101         mkdir -p pdf
102
103         dblatex -p dcpomatic-pdf.xsl -s dcpomatic.sty -r pptex.py -T native dcpomatic.xml -t pdf -o pdf/dcpomatic.pdf
104
105
106 #
107 # LaTeX (handy for debugging)
108 #
109
110 tex:    $(XML) dcpomatic-pdf.xsl extensions-pdf.ent
111
112 #       The DocBook needs to know what file extensions to look for
113 #       for screenshots and diagrams; use the correct file to tell it.
114         cp extensions-pdf.ent extensions.ent
115
116         mkdir -p tex
117
118 #       -P <foo> removes the revhistory table
119         dblatex -P doc.collab.show=0 -P latex.output.revhistory=0 -p dcpomatic-pdf.xsl -s dcpomatic.sty -r pptex.py -T native dcpomatic.xml -t tex -o tex/dcpomatic.tex
120
121
122 clean:; rm -rf html pdf diagrams/*.pdf diagrams/*.png graphics/*.png *.aux dcpomatic.cb dcpomatic.cb2 dcpomatic.glo dcpomatic.idx dcpomatic.ilg
123         rm -rf dcpomatic.ind dcpomatic.lof dcpomatic.log dcpomatic.tex dcpomatic.toc extensions.ent dcpomatic.out