1 # -*- coding: euc-jp; -*-
2 # This makefile is for maintainer only.
6 SRCFILES = $(shell echo @M17NLIB@/src/*.[ch])
8 PROJECT_NAME_EN = "The M17N Library"
9 PROJECT_NAME_JA = "M17N ¿¸À¸ì¥é¥¤¥Ö¥é¥ê"
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
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
23 usr-man man-usr: man/man3m/m17nIntro.3m
25 usr: html-usr latex-usr man-usr
27 dev: html-dev latex-dev
29 doxyfile-html: doxyfile Makefile
30 sed -e 's|%GENERATE_HTML%|YES|' \
31 -e 's|%GENERATE_LATEX%|NO|' \
32 -e 's|%GENERATE_MAN%|NO|' \
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/' \
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/' \
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/' \
53 doxyfile-latex: doxyfile Makefile
54 sed -e 's|%GENERATE_HTML%|NO|' \
55 -e 's|%GENERATE_LATEX%|YES|' \
56 -e 's|%GENERATE_MAN%|NO|' \
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/' \
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/' \
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/' \
77 doxyfile-man: doxyfile Makefile
78 sed -e 's|%GENERATE_HTML%|NO|' \
79 -e 's|%GENERATE_LATEX%|NO|' \
80 -e 's|%GENERATE_MAN%|YES|' \
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/' \
89 %/html/index.html: doxyfile-html.% ${SRCFILES} data-%/mainpage.txt data-%/dbformat.txt \
90 utils/%_filter.rb m17n-lib.css
94 %/latex/refman.tex: doxyfile-latex.% ${SRCFILES} data-%/mainpage.txt data-%/dbformat.txt \
99 %/latex/m17n-lib.tex: %/latex/refman.tex utils/refman-filter.sed
100 sed -f utils/refman-filter.sed < $< > $@
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 $@
106 %/latex/m17n-lib.pdf: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
107 utils/latex.sh `dirname $@ `pdflatex
109 %/man/man3/m17nIntro.3m: doxyfile-man.% ${SRCFILES} utils/%_filter.rb
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
122 [ -d man/man3m ] || mkdir -p man/man3m
124 ruby utils/mkman.rb usr
125 rm -rf doxytemp sample
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
136 [ -d "man/ja/man3m" ] || mkdir -p man/ja/man3m
138 ruby utils/mkman.rb ja
139 rm -rf doxytemp sample
141 CLEANFILES = doxyfile doxyfile-*.* m17n.tag warning \
142 */html/index.html */latex/refman.*
144 DISTCLEANFILES = doxyfile *~
146 html/index.html: usr/html/index.html
147 [ -d html ] || mkdir html
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
155 pack: latex/m17n-lib.ps html/index.html man/man3m/m17nIntro.3m dist
157 .PRECIOUS: %/latex/m17n-lib.tex
160 DISTFILES = latex html man