*** empty log message ***
[m17n/m17n-docs.git] / Makefile.am
1 #       -*- coding: euc-jp; -*-
2 # This makefile is for maintainer only.
3
4 if MAINTAINER_MODE
5
6 SRCFILES = $(shell echo @M17NLIB@/src/*.[ch])
7
8 PROJECT_NAME_EN = "The M17N Library"
9 PROJECT_NAME_JA = "M17N Â¿¸À¸ì¥é¥¤¥Ö¥é¥ê"
10
11 DOXYGEN = doxygen
12
13 all: usr ja dev
14
15 usr-html html-usr: usr/html/index.html
16 ja-html html-ja: ja/html/index.html
17 dev-html html-dev: dev/html/index.html
18
19 usr-latex latex-usr: usr/latex/m17n-lib.ps
20 ja-latex latex-ja: ja/latex/m17n-lib.ps
21 dev-latex latex-dev: dev/latex/m17n-lib.ps
22
23 usr-man man-usr: man/man3m/m17nIntro.3m
24
25 usr: html-usr latex-usr man-usr
26 ja: html-ja latex-ja
27 dev: html-dev latex-dev
28
29 doxyfile-html: doxyfile Makefile
30         sed -e 's|%GENERATE_HTML%|YES|' \
31             -e 's|%GENERATE_LATEX%|NO|' \
32             -e 's|%GENERATE_MAN%|NO|' \
33           < $< >$@
34
35 doxyfile-html.usr: doxyfile-html Makefile
36         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
37             -e 's/%USR_JA_DEV%/usr/g' \
38             -e 's/%OUTPUT_LANGUAGE%/English/' \
39           < $< >$@
40
41 doxyfile-html.dev: doxyfile-html Makefile
42         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
43             -e 's/%USR_JA_DEV%/dev/g' \
44             -e 's/%OUTPUT_LANGUAGE%/English/' \
45           < $< >$@
46
47 doxyfile-html.ja: doxyfile-html Makefile
48         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
49             -e 's/%USR_JA_DEV%/ja/g' \
50             -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
51           < $< >$@
52
53 doxyfile-latex: doxyfile Makefile
54         sed -e 's|%GENERATE_HTML%|NO|' \
55             -e 's|%GENERATE_LATEX%|YES|' \
56             -e 's|%GENERATE_MAN%|NO|' \
57           < $< >$@
58
59 doxyfile-latex.usr: doxyfile-latex Makefile
60         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
61             -e 's/%USR_JA_DEV%/usr/g' \
62             -e 's/%OUTPUT_LANGUAGE%/English/' \
63           < $< >$@
64
65 doxyfile-latex.dev: doxyfile-latex Makefile
66         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
67             -e 's/%USR_JA_DEV%/dev/g' \
68             -e 's/%OUTPUT_LANGUAGE%/English/' \
69           < $< >$@
70
71 doxyfile-latex.ja: doxyfile-latex Makefile
72         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
73             -e 's/%USR_JA_DEV%/ja/g' \
74             -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
75           < $< >$@
76
77 doxyfile-man: doxyfile Makefile
78         sed -e 's|%GENERATE_HTML%|NO|' \
79             -e 's|%GENERATE_LATEX%|NO|' \
80             -e 's|%GENERATE_MAN%|YES|' \
81           < $< >$@
82
83 doxyfile-man.usr: doxyfile-man Makefile
84         sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
85             -e 's/%USR_JA_DEV%/usr/g' \
86             -e 's/%OUTPUT_LANGUAGE%/English/' \
87           < $< >$@
88
89 %/html/index.html: doxyfile-html.% ${SRCFILES} data-%/mainpage.txt data-%/dbformat.txt \
90                         utils/%_filter.rb m17n-lib.css
91         rm -rf `dirname $@`
92         ${DOXYGEN} $<
93
94 %/latex/refman.tex: doxyfile-latex.% ${SRCFILES} data-%/mainpage.txt data-%/dbformat.txt \
95                         utils/%_filter.rb
96         rm -rf `dirname $@`
97         ${DOXYGEN} $<
98
99 %/latex/m17n-lib.tex: %/latex/refman.tex utils/refman-filter.sed
100         sed -f utils/refman-filter.sed < $< > $@
101
102 %/latex/m17n-lib.ps: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
103         utils/latex.sh `dirname $@` platex
104         emacs -batch -q -l utils/mokuji.el -f write-mokuji $@
105
106 %/latex/m17n-lib.pdf: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
107         utils/latex.sh `dirname $@ `pdflatex
108
109 %/man/man3/m17nIntro.3m: doxyfile-man.% ${SRCFILES} utils/%_filter.rb
110         rm -rf `dirname $@`
111         ${DOXYGEN} $<
112
113 man/man3m/%.3m: usr/man/man3/%.3m sample.c utils/mkman.rb 
114         -${DOXYGEN} -g doxytemp
115         echo "INPUT = sample.c" >> doxytemp
116         echo "GENERATE_LATEX = NO" >> doxytemp
117         echo "GENERATE_HTML = NO" >> doxytemp
118         echo "GENERATE_MAN = YES" >> doxytemp
119         echo "MAN_OUTPUT = sample" >> doxytemp
120         echo "OPTIMIZE_OUTPUT_FOR_C  = yes" >> doxytemp
121         ${DOXYGEN} doxytemp
122         [ -d man/man3m ] || mkdir -p man/man3m
123         rm -rf man/index.*
124         ruby utils/mkman.rb usr
125         rm -rf doxytemp sample
126
127 man/ja/man3m/%.3m: ja/man/man3/%.3m sample-ja.c utils/mkman.rb 
128         -${DOXYGEN} -g doxytemp
129         echo "INPUT = sample.c" >> doxytemp
130         echo "GENERATE_LATEX = NO" >> doxytemp
131         echo "GENERATE_HTML = NO" >> doxytemp
132         echo "GENERATE_MAN = YES" >> doxytemp
133         echo "MAN_OUTPUT = sample" >> doxytemp
134         echo "OPTIMIZE_OUTPUT_FOR_C  = yes" >> doxytemp
135         ${DOXYGEN} doxytemp
136         [ -d "man/ja/man3m" ] || mkdir -p man/ja/man3m
137         rm -rf man/index.*
138         ruby utils/mkman.rb ja
139         rm -rf doxytemp sample
140
141 CLEANFILES = doxyfile doxyfile-*.* m17n.tag warning \
142         */html/index.html */latex/refman.*
143
144 DISTCLEANFILES = doxyfile *~
145
146 html/index.html: usr/html/index.html
147         [ -d html ] || mkdir html
148         cp usr/html/* html
149
150 latex/m17n-lib.ps: usr/latex/m17n-lib.ps
151         [ -d latex ] || mkdir latex
152         cp usr/latex/m17n-lib.dvi latex
153         cp usr/latex/m17n-lib.ps latex
154
155 pack: latex/m17n-lib.ps html/index.html man/man3m/m17nIntro.3m dist
156
157 .PRECIOUS: %/latex/m17n-lib.tex
158
159 endif
160 DISTFILES = latex html man