]> git.decadent.org.uk Git - ion3.git/blob - doc/Makefile
[svn-upgrade] Integrating new upstream version, ion3 (20070506)
[ion3.git] / doc / Makefile
1 # Settings
2 ######################################
3
4 TOPDIR=../ion-3
5
6 include $(TOPDIR)/build/system-inc.mk
7
8 L2H=latex2html -show_section_numbers -short_index -local_icons -noaddress \
9     -up_url http://iki.fi/tuomov/ion/ -up_title "Ion homepage" -nofootnode\
10 ##    -style greyviolet.css
11
12
13 # Function documentation to build
14 ######################################
15
16 DOCS=ionconf ionnotes
17
18 FNTEXES=ioncore.exports mod_tiling.exports \
19         mod_query.exports de.exports mod_menu.exports \
20         mod_dock.exports mod_sp.exports mod_statusbar.exports
21
22 # Generic rules
23 ######################################
24
25 nothing:
26         @ echo "Please read the README first."
27
28 %.ps: %.dvi
29         dvips $<
30
31 %.pdf: %.dvi
32         dvipdfm -p a4 $<
33
34 %.dvi: %.tex
35         latex $<
36
37 # Install
38 ######################################
39
40 install:
41         $(INSTALLDIR) $(DOCDIR); \
42         for d in $(DOCS); do \
43             for e in ps pdf dvi; do \
44               test -f $$d.$$e && $(INSTALL) -m $(DATA_MODE) $$d.$$e $(DOCDIR); \
45             done; \
46             $(INSTALLDIR) $(DOCDIR)/$$d; \
47             for i in $$d/*; do \
48                 $(INSTALL) -m $(DATA_MODE) $$i $(DOCDIR)/$$i; \
49             done; \
50         done
51
52 # ionconf rules
53 ######################################
54 ionconf-dvi-full:
55         latex ionconf
56         latex ionconf
57         latex ionconf
58         makeindex ionconf.idx
59         latex ionconf
60
61 ionconf-html: 
62         $(L2H) -split 3 ionconf
63
64 fntexes: $(FNTEXES)
65
66 ionconf-all: fntexes fnlist.tex ionconf-dvi-full ionconf-html
67
68 # ionnotes rules
69 ######################################
70
71 ionnotes-dvi-full:
72         latex ionnotes
73         latex ionnotes
74         latex ionnotes
75         makeindex ionnotes.idx
76         latex ionnotes
77
78 ionnotes-html: 
79         $(L2H) -split 4 ionnotes
80
81 ionnotes-all: ionnotes-dvi-full ionnotes-html
82
83 # More generic rules
84 ######################################
85
86 all: ionconf-all ionnotes-all
87
88 all-ps: ionconf.ps ionnotes.ps
89
90 all-pdf: ionconf.pdf ionnotes.pdf
91
92
93 # Clean
94 ######################################
95
96 clean:
97         rm -f $(FNTEXES) fnlist.tex
98         rm -f *.aux *.toc *.log
99         rm -f *.idx *.ild *.ilg *.ind
100         
101 realclean: clean
102         rm -f *.ps *.pdf *.dvi
103         rm -rf $(DOCS)
104
105
106 # Function reference rules
107 ######################################
108
109 include $(TOPDIR)/libmainloop/rx.mk
110
111 $(TOPDIR)/%/exports.tex:
112         $(MAKE) -C $$(dirname $@) _exports_doc
113
114 %.exports: $(TOPDIR)/%/exports.tex
115         cp $< $@
116
117 # Function list
118 ######################################
119
120 fnlist.tex: $(FNTEXES)
121         grep hyperlabel $+ | \
122         sed 's/.*fn:\([^}]*\).*/\\fnlisti{\1}/;'|sort -d -f \
123         > $@