1 # Makefile.am -- Makefile for the m17n library documentation.
2 # Copyright (C) 2003, 2004, 2005, 2006
3 # National Institute of Advanced Industrial Science and Technology (AIST)
4 # Registration Number H15PRO112
6 # This file is part of the m17n library documentation, a sub-part of
9 # The m17n library is free software; you can redistribute it and/or
10 # modify it under the terms of the GNU General Public License as
11 # published by the Free Software Foundation; either version 2, or (at
12 # your option) any later version.
14 # The m17n library is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
19 # You should have received a copy of the GNU General Public License
20 # along with the m17n library; see the file COPYING. If not, write to
21 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
22 # Boston, MA 02111-1307, USA.
24 ## Process this file with Automake to create Makefile.in
30 usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps \
31 man/man1/m17n-config.1 \
32 man/man3/m17nIntro.3m17n \
35 pkgdatadir = $(datadir)/m17n/docs
37 EXTRA_DIST = usr/html usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps \
38 man/man1 man/man3 man/man5 \
39 ja/html ja/latex/m17n-lib-ja.dvi ja/latex/m17n-lib-ja.ps
41 install-pkgdataDATA: $(pkgdata_DATA)
42 $(mkinstalldirs) $(pkgdatadir)/html
43 $(mkinstalldirs) $(mandir)/man1 $(mandir)/man3 $(mandir)/man5
44 $(INSTALL_DATA) usr/latex/m17n-lib.dvi $(pkgdatadir)/m17n-lib.dvi
45 $(INSTALL_DATA) usr/latex/m17n-lib.ps $(pkgdatadir)/m17n-lib.ps
47 for f in *.html *.png; do \
48 $(INSTALL_DATA) $$f $(pkgdatadir)/html/$$f; \
51 for f in *.1; do $(INSTALL_DATA) $$f $(mandir)/man1/$$f; done
53 for f in *.3m17n; do $(INSTALL_DATA) $$f $(mandir)/man3/$$f; done
55 for f in *.5; do $(INSTALL_DATA) $$f $(mandir)/man5/$$f; done
58 # The followings are for maintainers only.
62 PROJECT_NAME_EN = "The m17n Library"
63 PROJECT_NAME_JA = "m17n ライブラリ"
64 PROJECT_VERSION = @PACKAGE_VERSION@
69 @M17NLIB@/example/mconv.c \
70 @M17NLIB@/example/mview.c \
71 @M17NLIB@/example/mdate.c \
72 @M17NLIB@/example/mdump.c \
73 @M17NLIB@/example/medit.c \
74 @M17NLIB@/example/mimx-anthy.c \
75 @M17NLIB@/example/mimx-ispell.c
80 MAN1 = data/m17n-config.txt data/m17n-db.txt ${EXAMPLE_PROGS}
82 MAN3 = @M17NLIB@/src/m17n-core.h \
83 @M17NLIB@/src/m17n.h \
84 @M17NLIB@/src/m17n-flt.h \
85 @M17NLIB@/src/m17n-gui.h \
86 @M17NLIB@/src/m17n-X.h \
87 @M17NLIB@/src/m17n-misc.h \
95 data/m17n-config.txt data/m17n-db.txt data/exprog.txt \
96 data/dbformat.txt data/dbtutorial.txt fdl.txt
98 SRC_EN = ${SRC_COMMON} data/dbdata-en.txt
99 SRC_JA = ${SRC_COMMON} data/dbdata-ja.txt
100 SRCALL = ${SRC_COMMON} data/dbdata-en.txt data/dbdata-ja.txt
102 DBDATA = $(shell echo @M17NDB@/*.{fst,tbl} @M17NDB@/MIM/*.mimx @M17NDB@/FLT/*.flt @M17NDB@/LANGDATA/LANGUAGE.tbl)
103 DBIMAGE = $(shell echo images/*.png images/*.eps)
105 HTML_USR_TARGET = usr/html/index.html usr/html/parrot.png
106 HTML_JA_TARGET = ja/html/index.html ja/html/parrot.png
107 HTML_DEV_TARGET = dev/html/index.html dev/html/parrot.png
108 HTML_TARGET = ${HTML_USR_TARGET} ${HTML_JA_TARGET} ${HTML_DEV_TARGET}
110 usr-html html-usr: ${HTML_USR_TARGET}
111 ja-html html-ja: ${HTML_JA_TARGET}
112 dev-html html-dev: ${HTML_DEV_TARGET}
114 LATEX_USR_TARGET = usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps
115 LATEX_JA_TARGET = ja/latex/m17n-lib.dvi ja/latex/m17n-lib.ps
116 LATEX_DEV_TARGET = dev/latex/m17n-lib.dvi dev/latex/m17n-lib.ps
117 LATEX_TARGET = ${LATEX_USR_TARGET} ${LATEX_JA_TARGET} ${LATEX_DEV_TARGET}
119 usr-latex latex-usr: ${LATEX_USR_TARGET}
120 ja-latex latex-ja: ${LATEX_JA_TARGET}
121 dev-latex latex-dev: ${LATEX_DEV_TARGET}
124 man/man1/m17n-config.1 \
126 man/man3/m17nIntro.3m17n \
127 man/man5/mdbGeneral.5
129 usr-man man-usr: ${MAN_TARGET}
131 TARGET = ${HTML_TARGET} ${LATEX_TARGET} ${MAN_TARGET}
133 usr: usr-html usr-latex usr-man
135 dev: dev-html dev-latex
137 html: usr-html ja-html dev-html
138 latex: usr-latex ja-latex dev-latex
143 sed -e '/^PROJECT_NAME / s/=.*/= %PROJECT_NAME%/' \
144 -e '/^PROJECT_NUMBER / s/=.*/= %PROJECT_NUMBER%/' \
145 -e '/^OUTPUT_DIRECTORY / s/=.*/= %USR_JA_DEV%/' \
146 -e '/^OUTPUT_LANGUAGE / s/=.*/= %OUTPUT_LANGUAGE%/' \
147 -e '/^OPTIMIZE_OUTPUT_FOR_C / s/=.*/= YES/' \
148 -e '/^EXTRAXT_ALL / s/=.*/= YES/' \
149 -e '/^SHOW_INCLUDE_FILES / s/=.*/= NO/' \
150 -e '/^SHOW_MEMBER_DOCS / s/=.*/= NO/' \
151 -e '/^ENABLED_SECTIONS / s/=.*/= %ENABLED_SECTIONS%/' \
152 -e '/^SHOW_USED_FILES / s/=.*/= NO/' \
153 -e '/^INPUT / s/=.*/= %INPUT%/' \
154 -e '/^FILE_PATTERNS / s/=.*/= *.c *.txt/' \
155 -e '/^EXCLUDE_PATTERNS / s/=.*/= link*.c font-ft.c/' \
156 -e '/^EXAMPLE_PATH / s/=.*/= data-%USR_JA_DEV%/' \
157 -e '/^IMAGE_PATH / s/=.*/= images/' \
158 -e '/^INPUT_FILTER / s/=.*/= utils\/%USR_JA_DEV%_filter.sh/' \
159 -e '/^VERBATIM_HEADERS / s/=.*/= NO/' \
160 -e '/^ALPHABETICAL_INDEX / s/=.*/= YES/' \
161 -e '/^IGNORE_PREFIX / s/=.*/= m M/' \
162 -e '/^GENERATE_HTML / s/=.*/= %GENERATE_HTML%/' \
163 -e '/^HTML_HEADER / s/=.*/= header.%USR_JA_DEV%.html/' \
164 -e '/^HTML_FOOTER / s/=.*/= footer.%USR_JA_DEV%.html/' \
165 -e '/^DISABLE_INDEX / s/=.*/= YES/' \
166 -e '/^ENUM_VALUES_PER_LINE / s/=.*/= 1/' \
167 -e '/^GENERATE_LATEX / s/=.*/= %GENERATE_LATEX%/' \
168 -e '/^EXTRA_PACKAGES / s/=.*/= m17n-lib times/' \
169 -e '/^PDF_HYPERLINKS / s/=.*/= NO/' \
170 -e '/^USE_PDFLATEX / s/=.*/= NO/' \
171 -e '/^LATEX_HIDE_INDICES / s/=.*/= YES/' \
172 -e '/^GENERATE_MAN / s/=.*/= %GENERATE_MAN%/' \
173 -e '/^MAN_EXTENSION / s/=.*/= %MAN_EXTENSION%/' \
174 -e '/^PREDEFINED / s/=.*/= FOR_DOXYGEN/' \
175 -e '/^GENERATE_TAGFILE / s/=.*/= m17n.tag/' \
178 doxyfile-html: doxyfile
179 sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
180 -e 's|%GENERATE_HTML%|YES|' \
181 -e 's|%GENERATE_LATEX%|NO|' \
182 -e 's|%GENERATE_MAN%|NO|' \
183 -e 's|%ENABLED_SECTIONS%|FOR-HTML|' \
186 doxyfile-html.usr: doxyfile-html ${SRC_EN}
187 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
188 -e 's|%INPUT%|${SRC_EN}|' \
189 -e 's/%USR_JA_DEV%/usr/g' \
190 -e 's/%OUTPUT_LANGUAGE%/English/' \
193 doxyfile-html.dev: doxyfile-html ${SRC_EN}
194 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
195 -e 's|%INPUT%|${SRC_EN}|' \
196 -e 's/%USR_JA_DEV%/dev/g' \
197 -e 's/%OUTPUT_LANGUAGE%/English/' \
200 doxyfile-html.ja: doxyfile-html ${SRC_JA}
201 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
202 -e 's|%INPUT%|${SRC_JA}|' \
203 -e 's/%USR_JA_DEV%/ja/g' \
204 -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
207 doxyfile-latex: doxyfile
208 sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
209 -e 's|%GENERATE_HTML%|NO|' \
210 -e 's|%GENERATE_LATEX%|YES|' \
211 -e 's|%GENERATE_MAN%|NO|' \
212 -e 's|%ENABLED_SECTIONS%|FOR-LATEX|' \
215 doxyfile-latex.usr: doxyfile-latex ${SRC_EN}
216 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
217 -e 's|%INPUT%|${SRC_EN}|' \
218 -e 's/%USR_JA_DEV%/usr/g' \
219 -e 's/%OUTPUT_LANGUAGE%/English/' \
222 doxyfile-latex.dev: doxyfile-latex ${SRC_EN}
223 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
224 -e 's|%INPUT%|${SRC_EN}|' \
225 -e 's/%USR_JA_DEV%/dev/g' \
226 -e 's/%OUTPUT_LANGUAGE%/English/' \
229 doxyfile-latex.ja: doxyfile-latex ${SRC_JA}
230 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
231 -e 's|%INPUT%|${SRC_EN}|' \
232 -e 's/%USR_JA_DEV%/ja/g' \
233 -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
236 doxyfile-man1: doxyfile ${MAN1}
237 sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
238 -e 's|%INPUT%|${MAN1}|' \
239 -e 's|%GENERATE_HTML%|NO|' \
240 -e 's|%GENERATE_LATEX%|NO|' \
241 -e 's|%GENERATE_MAN%|YES|' \
242 -e 's|%MAN_EXTENSION%|.1|' \
243 -e 's|%ENABLED_SECTIONS%|FOR-MAN|' \
246 doxyfile-man3: doxyfile ${MAN3}
247 sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
248 -e 's|%INPUT%|${MAN3}|' \
249 -e 's|%GENERATE_HTML%|NO|' \
250 -e 's|%GENERATE_LATEX%|NO|' \
251 -e 's|%GENERATE_MAN%|YES|' \
252 -e 's|%MAN_EXTENSION%|.3m17n|' \
253 -e 's|%ENABLED_SECTIONS%|FOR-MAN|' \
256 doxyfile-man5: doxyfile ${MAN5}
257 sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
258 -e 's|%INPUT%|${MAN5}|' \
259 -e 's|%GENERATE_HTML%|NO|' \
260 -e 's|%GENERATE_LATEX%|NO|' \
261 -e 's|%GENERATE_MAN%|YES|' \
262 -e 's|%MAN_EXTENSION%|.5|' \
263 -e 's|%ENABLED_SECTIONS%|FOR-MAN|' \
266 doxyfile-man%.usr: doxyfile-man%
267 sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
268 -e 's/%USR_JA_DEV%/usr/g' \
269 -e 's/%OUTPUT_LANGUAGE%/English/' \
272 data/exprog.txt: ${EXAMPLE_PROGS} utils/exprog.sh
273 utils/exprog.sh ${EXAMPLE_PROGS} > $@
275 data/dbdata-en.txt: ${DBDATA} ${DBIMAGE} @M17NDB@/mdb.xml utils/expand-mdb.awk \
276 utils/description-en.xsl
277 [ -d data ] || mkdir data
278 @AWK@ -v M17NDB=@M17NDB@ -f utils/expand-mdb.awk @M17NDB@/mdb.xml > data/expanded-mdb.xml
279 xsltproc -xinclude utils/description-en.xsl data/expanded-mdb.xml > $@
280 ICONS=`sed -n 's/.*icon:<img src="icon-\([^"]*\)".*$$/\1/p' < $@`; \
281 for f in $${ICONS}; do \
282 S="@M17NDB@/icons/$$f";\
283 D="images/icon-$$f"; \
284 [ ! -f $${S} -o -f $${D} ] || convert -resize 50% $${S} $${D}; \
287 data/dbdata-ja.txt: ${DBDATA} ${DBIMAGE} @M17NDB@/mdb.xml utils/expand-mdb.awk \
288 utils/description-ja.xsl
289 [ -d data ] || mkdir data
290 @AWK@ -v M17NDB=@M17NDB@ -f utils/expand-mdb.awk @M17NDB@/mdb.xml > data/expanded-mdb.xml
291 xsltproc -xinclude utils/description-ja.xsl data/expanded-mdb.xml > $@
293 data/dbformat.txt: ${DBFORMAT} utils/dbformat.sh
294 utils/dbformat.sh ${DBFORMAT} > $@
296 data/dbtutorial.txt: ${DBFORMAT} utils/dbtutorial.sh
297 utils/dbtutorial.sh ${DBFORMAT} > $@
299 data/m17n-config.txt: @M17NLIB@/m17n-config.in
300 sed -n -e '/\/\*\*\*/,/\*\// p' < $< > $@
302 data/m17n-db.txt: @M17NDB@/m17n-db.in
303 sed -n -e '/\/\*\*\*/,/\*\// p' < $< > $@
305 %/html/index.html: doxyfile-html.% header.%.html footer.%.html ${SRCALL} \
306 utils/%_filter.rb m17n-lib.css
307 rm -f `dirname $@`/*.html
309 cp images/icon-*.png `dirname $@`
310 cd `dirname $@`; rm -f *_8c* *_8h* *_8txt* dirs.html dir_* files.html
311 echo 'code { font-weight: bold }' >> `dirname $@`/doxygen.css
313 %/html/parrot.png: parrot.png
316 %/latex/refman.tex: doxyfile-latex.% ${SRCALL} utils/%_filter.rb
319 cd `dirname $@`; rm -f *_8c* *_8h* *_8txt* dirs.tex dir_* files.tex
321 %/latex/m17n-lib.dvi: %/latex/refman.tex styles/m17n-lib.sty utils/latex.sh
322 -utils/latex.sh `dirname $@` latex
324 %/latex/m17n-lib.ps: %/latex/m17n-lib.dvi utils/dvips.sh
325 utils/dvips.sh `dirname $@` dvips
326 # emacs -batch -q -l utils/mokuji.el -f write-mokuji $@
328 %/latex/m17n-lib.pdf: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
329 utils/latex.sh `dirname $@` pdflatex
331 %/man/man1/m17n-config.1: doxyfile-man1.% ${MAN1} utils/%_filter.rb
333 cp doxyfile-man1.usr temp
335 cd `dirname $@`; rm -f _*.1 *.c.1 *.txt.1
337 %/man/man3/m17nIntro.3m17n: doxyfile-man3.% ${MAN3} utils/%_filter.rb
341 %/man/man5/mdbGeneral.5: doxyfile-man5.% ${MAN5} utils/%_filter.rb
345 sample/man3/SampleGroup.3: sample.c
346 [ -d sample ] || mkdir sample
347 [ -d sample/man3 ] || mkdir sample/man3
348 -${DOXYGEN} -g doxytemp
349 echo "INPUT = sample.c" >> doxytemp
350 echo "GENERATE_LATEX = NO" >> doxytemp
351 echo "GENERATE_HTML = NO" >> doxytemp
352 echo "GENERATE_MAN = YES" >> doxytemp
353 echo "MAN_OUTPUT = sample" >> doxytemp
354 echo "OPTIMIZE_OUTPUT_FOR_C = yes" >> doxytemp
358 man/man1/%: usr/man/man1/% sample/man3/SampleGroup.3 utils/mkman.rb
359 $(mkinstalldirs) man/man1
360 rm -rf doxywork man/man1/*
361 ruby utils/mkman.rb 1 usr/man/man1 man/man1
363 man/man3/%: usr/man/man3/% sample/man3/SampleGroup.3 utils/mkman.rb \
364 utils/reform-man3.sh utils/reform-man3.awk
365 $(mkinstalldirs) man/man3
366 rm -rf doxywork man/man3/*
367 ruby utils/mkman.rb 3m17n usr/man/man3m17n man/man3
368 utils/reform-man3.sh man/man3
370 man/man5/%: usr/man/man5/% sample/man3/SampleGroup.3 utils/mkman.rb
371 $(mkinstalldirs) man/man5
372 rm -rf doxywork man/man5/*
373 ruby utils/mkman.rb 5 usr/man/man5 man/man5
375 man/ja/man1/%: ja/man/man1/% sample/man3/SampleGroup.3 utils/mkman.rb
376 $(mkinstalldirs) man/ja/man1
377 rm -rf doxywork man/ja/man1/*
378 ruby utils/mkman.rb 1 ja/man/man1 man/ja/man1
380 man/ja/man3/%: ja/man/man3/% sample/man3/SampleGroup.3 utils/mkman.rb
381 $(mkinstalldirs) man/ja/man3
382 rm -rf doxywork man/ja/man3/*
383 ruby utils/mkman.rb 3m17n ja/man/man3 man/ja/man3
385 man/ja/man5/%: ja/man/man5/% sample/man3/SampleGroup.3 utils/mkman.rb
386 $(mkinstalldirs) man/ja/man5
387 rm -rf doxywork man/ja/man5/*
388 ruby utils/mkman.rb 5 ja/man/man5 man/ja/man5
390 CLEANFILES=doxyfile-* ${TARGET} *.tar.gz warning *~
393 rm -rf usr dev ja man doxywork
395 WEBDIR = /project/web/extra/m17n-lib
398 [ -d ${WEBDIR}/m17n-docs ] || mkdir ${WEBDIR}/m17n-docs
399 [ -d ${WEBDIR}/download ] || mkdir ${WEBDIR}/download
400 cd usr/html; for f in *; do \
401 case $$f in *8c*);; *8h*);; *8txt*);; dirs.html);; dir_*);; files.html);; *) cp $$f ${WEBDIR}/m17n-docs;; esac; \
403 [ -d ${WEBDIR}-ja2/m17n-docs ] || mkdir ${WEBDIR}-ja2/m17n-docs
404 cd ja/html; for f in *; do \
405 case $$f in *8c*);; *8h*);; *8txt*);; dirs.html);; dir_*);; files.html);; *) cp $$f ${WEBDIR}-ja2/m17n-docs;; esac; \
407 cp ${distdir}.tar.gz ${WEBDIR}/download
410 .PRECIOUS: %/latex/refman.tex %/man/man3/m17nIntro.3m ${SRCALL}