-# -*- coding: euc-jp; -*-
+# Makefile.am -- Makefile for the m17n library documentation.
+# -*- coding: euc-jp; -*-
+# Copyright (C) 2003
+# National Institute of Advanced Industrial Science and Technology (AIST)
+# Registration Number H15PRO112
+
+# This file is part of the m17n library documentation, a sub-part of
+# the m17n library.
+
+# The m17n library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+
+# The m17n library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with the m17n library; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+## Process this file with Automake to create Makefile.in
+
+pkgdata_DATA = \
+ usr/html/index.html \
+ usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps \
+ man/man1/m17nconfig.1 \
+ man/man3/m17nIntro.3m17n \
+ man/man5/mdbGeneral.5
+
+pkgdatadir = $(datadir)/m17n-lib
+
+EXTRA_DIST = usr/html usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps \
+ man/man1 man/man3 man/man5
+
+install-pkgdataDATA: $(pkgdata_DATA)
+ $(mkinstalldirs) $(pkgdatadir)/html
+ $(mkinstalldirs) $(mandir)/man1 $(mandir)/man3 $(mandir)/man5
+ $(INSTALL_DATA) usr/latex/m17n-lib.dvi $(pkgdatadir)/m17n-lib.dvi
+ $(INSTALL_DATA) usr/latex/m17n-lib.ps $(pkgdatadir)/m17n-lib.ps
+ cd usr/html; \
+ for f in *.html; do $(INSTALL_DATA) $$f $(pkgdatadir)/html/$$f; done
+ cd usr/html; \
+ for f in *.png; do $(INSTALL_DATA) $$f $(pkgdatadir)/html/$$f; done
+ cd man/man1; \
+ for f in *.1; do $(INSTALL_DATA) $$f $(mandir)/man1/$$f; done
+ cd man/man3; \
+ for f in *.3m17n; do $(INSTALL_DATA) $$f $(mandir)/man3/$$f; done
+ cd man/man5; \
+ for f in *.5; do $(INSTALL_DATA) $$f $(mandir)/man5/$$f; done
+
+#
+# The followings are for maintainers only.
+#
+if MAINTAINER_MODE
-EXTRA_DIST = dev usr ja smallmule.gif
+PROJECT_NAME_EN = "The M17N Library"
+PROJECT_NAME_JA = "M17N ¿¸À¸ì¥é¥¤¥Ö¥é¥ê"
+PROJECT_VERSION = @PACKAGE_VERSION@
-# The followings are for maintainers only.
+DOXYGEN = doxygen
-if MAINTAINER_MODE
+EXAMPLE_PROGS = \
+ @M17NLIB@/example/mconv.c \
+ @M17NLIB@/example/mview.c \
+ @M17NLIB@/example/mdate.c \
+ @M17NLIB@/example/mdump.c \
+ @M17NLIB@/example/medit.c \
+ @M17NLIB@/example/mimx-anthy.c \
+ @M17NLIB@/example/mimx-ispell.c
-SRCFILES = $(shell echo @M17NLIB@/src/*.[ch])
+EXAMPLE_MIMS = \
+ @M17NLIB@/example/anthy.mim \
+ @M17NLIB@/example/ispell.mim
-STYLEPATH = @abs_srcdir@/styles
-UTILPATH = @abs_srcdir@/utils
+DBFORMAT = \
+ @M17NDB@/FORMATS
-LATEX_JA = ${STYLEPATH}/doxygen-m17n.sty \
- @abs_srcdir@/data-ja/header.tex \
- @abs_srcdir@/data-ja/introduction.tex \
- @abs_srcdir@/data-ja/m17n-basicC.tex \
- @abs_srcdir@/data-ja/m17n-X.tex \
- @abs_srcdir@/data-ja/m17n-database.tex \
- @abs_srcdir@/data-ja/conclusion.tex
+MAN1 = data/m17n-config.txt ${EXAMPLE_PROGS}
-LATEX_USR = ${STYLEPATH}/doxygen-m17n.sty \
- @abs_srcdir@/data-usr/header.tex \
- @abs_srcdir@/data-usr/conclusion.tex
+MAN3 = @M17NLIB@/src/m17n-core.h \
+ @M17NLIB@/src/m17n.h \
+ @M17NLIB@/src/m17n-gui.h \
+ @M17NLIB@/src/m17n-X.h \
+ @M17NLIB@/src/m17n-err.h \
+ @M17NLIB@/src
-LATEX_DEV = ${STYLEPATH}/doxygen-m17n.sty \
- @abs_srcdir@/data-dev/header.tex \
- @abs_srcdir@/data-dev/conclusion.tex
+MAN5 = ${DBFORMAT}
-DOXYGEN = doxygen
+SRCALL = \
+ mainpage.txt \
+ ${MAN3} \
+ data/m17n-config.txt data/exprog.txt data/exmim.txt data/dbformat.txt
-PROJECT_NAME_EN = "Multilingual Library for Unix/Linux"
-PROJECT_NAME_JA = "Unix/Linux ÍÑ¿¸À¸ì¥é¥¤¥Ö¥é¥ê"
+HTML_USR_TARGET = usr/html/index.html usr/html/parrot.png
+HTML_JA_TARGET = ja/html/index.html ja/html/parrot.png
+HTML_DEV_TARGET = dev/html/index.html dev/html/parrot.png
+HTML_TARGET = ${HTML_USR_TARGET} ${HTML_JA_TARGET} ${HTML_DEV_TARGET}
-notarget:
- @echo "Please specify one of the following targets:"
- @echo " usr-latex ja-latex dev-latex"
- @echo " usr-html ja-html dev-html"
- @echo " usr ja dev"
- @echo " all"
+usr-html html-usr: ${HTML_USR_TARGET}
+ja-html html-ja: ${HTML_JA_TARGET}
+dev-html html-dev: ${HTML_DEV_TARGET}
-all: usr ja dev man
+LATEX_USR_TARGET = usr/latex/m17n-lib.dvi usr/latex/m17n-lib.ps
+LATEX_JA_TARGET = ja/latex/m17n-lib.dvi ja/latex/m17n-lib.ps
+LATEX_DEV_TARGET = dev/latex/m17n-lib.dvi dev/latex/m17n-lib.ps
+LATEX_TARGET = ${LATEX_USR_TARGET} ${LATEX_JA_TARGET} ${LATEX_DEV_TARGET}
-usr-html html-usr: usr/html/index.html
-ja-html html-ja: ja/html/index.html
-dev-html html-dev: dev/html/index.html
+usr-latex latex-usr: ${LATEX_USR_TARGET}
+ja-latex latex-ja: ${LATEX_JA_TARGET}
+dev-latex latex-dev: ${LATEX_DEV_TARGET}
-usr-latex latex-usr: usr/latex/refman.ps
-ja-latex latex-ja: ja/latex/refman.ps
-dev-latex latex-dev: dev/latex/refman.ps
+MAN_USR_TARGET = man/man1/m17n-config.1 man/man3/m17nIntro.3m17n man/man5/m17nDBgeneral.5
+MAN_JA_TARGET = man/ja//man1/m17n-config.1 man/ja//man3/m17nIntro.3m17n man/ja/man5/m17nDatabaseFormat.5
+MAN_TARGET = ${MAN_USR_TARGET} ${MAN_JA_TARGET}
-usr-man man-usr: man/man3m/m17nIntro.3m
+usr-man man-usr: ${MAN_USR_TARGET}
+ja-man man-ja: ${MAN_JA_TARGET}
-usr: html-usr latex-usr man-usr
-ja: html-ja latex-ja
-dev: html-dev latex-dev
+TARGET = ${HTML_TARGET} ${LATEX_TARGET} ${MAN_TARGET}
-doxyfile-html.usr: doxyfile
- sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
- -e 's/%USR_JA_DEV%/usr/' \
- -e 's/%INPUT_FILTER%/usr/' \
- -e 's/%OUTPUT_LANGUAGE%/English/' \
+usr: usr-html usr-latex usr-man
+ja: ja-html ja-latex ja-man
+dev: dev-html dev-latex
+
+html: usr-html ja-html dev-html
+latex: usr-latex ja-latex dev-latex
+man: usr-man ja-man
+
+doxyfile-html: doxyfile
+ sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
+ -e 's|%INPUT%|${SRCALL}|' \
-e 's|%GENERATE_HTML%|YES|' \
-e 's|%GENERATE_LATEX%|NO|' \
-e 's|%GENERATE_MAN%|NO|' \
< $< >$@
-doxyfile-html.dev: doxyfile
+doxyfile-html.usr: doxyfile-html
sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
- -e 's/%USR_JA_DEV%/dev/' \
- -e 's/%INPUT_FILTER%/dev/' \
+ -e 's/%USR_JA_DEV%/usr/g' \
-e 's/%OUTPUT_LANGUAGE%/English/' \
- -e 's|%GENERATE_HTML%|YES|' \
- -e 's|%GENERATE_LATEX%|NO|' \
- -e 's|%GENERATE_MAN%|NO|' \
< $< >$@
-doxyfile-html.ja: doxyfile
+doxyfile-html.dev: doxyfile-html
+ sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+ -e 's/%USR_JA_DEV%/dev/g' \
+ -e 's/%OUTPUT_LANGUAGE%/English/' \
+ < $< >$@
+
+doxyfile-html.ja: doxyfile-html
sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
- -e 's/%USR_JA_DEV%/ja/' \
- -e 's/%INPUT_FILTER%/ja/' \
+ -e 's/%USR_JA_DEV%/ja/g' \
-e 's/%OUTPUT_LANGUAGE%/Japanese/' \
- -e 's|%GENERATE_HTML%|YES|' \
- -e 's|%GENERATE_LATEX%|NO|' \
- -e 's|%GENERATE_MAN%|NO|' \
< $< >$@
-doxyfile-latex.usr: doxyfile Makefile
- sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
- -e 's/%USR_JA_DEV%/usr/' \
- -e 's/%INPUT_FILTER%/usr/' \
- -e 's/%OUTPUT_LANGUAGE%/English/' \
+doxyfile-latex: doxyfile
+ sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
+ -e 's|%INPUT%|${SRCALL}|' \
-e 's|%GENERATE_HTML%|NO|' \
-e 's|%GENERATE_LATEX%|YES|' \
-e 's|%GENERATE_MAN%|NO|' \
< $< >$@
-doxyfile-latex.dev: doxyfile
+doxyfile-latex.usr: doxyfile-latex
sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
- -e 's/%USR_JA_DEV%/dev/' \
- -e 's/%INPUT_FILTER%/dev/' \
+ -e 's/%USR_JA_DEV%/usr/g' \
+ -e 's/%OUTPUT_LANGUAGE%/English/' \
+ < $< >$@
+
+doxyfile-latex.dev: doxyfile-latex
+ sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+ -e 's/%USR_JA_DEV%/dev/g' \
-e 's/%OUTPUT_LANGUAGE%/English/' \
- -e 's|%GENERATE_HTML%|NO|' \
- -e 's|%GENERATE_LATEX%|YES|' \
- -e 's|%GENERATE_MAN%|NO|' \
< $< >$@
-doxyfile-latex.ja: doxyfile
+doxyfile-latex.ja: doxyfile-latex
sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
- -e 's/%USR_JA_DEV%/ja/' \
- -e 's/%INPUT_FILTER%/ja/' \
+ -e 's/%USR_JA_DEV%/ja/g' \
-e 's/%OUTPUT_LANGUAGE%/Japanese/' \
+ < $< >$@
+
+doxyfile-man1: doxyfile
+ sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
+ -e 's|%INPUT%|${MAN1}|' \
-e 's|%GENERATE_HTML%|NO|' \
- -e 's|%GENERATE_LATEX%|YES|' \
- -e 's|%GENERATE_MAN%|NO|' \
+ -e 's|%GENERATE_LATEX%|NO|' \
+ -e 's|%GENERATE_MAN%|YES|' \
+ -e 's|%MAN_EXTENSION%|.1|' \
< $< >$@
-doxyfile-man.usr: doxyfile
- sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
- -e 's/%USR_JA_DEV%/usr/' \
- -e 's/%INPUT_FILTER%/usr/' \
- -e 's/%OUTPUT_LANGUAGE%/English/' \
+doxyfile-man3: doxyfile
+ sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
+ -e 's|%INPUT%|${MAN3}|' \
-e 's|%GENERATE_HTML%|NO|' \
-e 's|%GENERATE_LATEX%|NO|' \
-e 's|%GENERATE_MAN%|YES|' \
+ -e 's|%MAN_EXTENSION%|.3m17n|' \
+ < $< >$@
+
+doxyfile-man5: doxyfile
+ sed -e 's|%PROJECT_NUMBER%|@PACKAGE_VERSION@|' \
+ -e 's|%INPUT%|${MAN5}|' \
+ -e 's|%GENERATE_HTML%|NO|' \
+ -e 's|%GENERATE_LATEX%|NO|' \
+ -e 's|%GENERATE_MAN%|YES|' \
+ -e 's|%MAN_EXTENSION%|.5|' \
+ < $< >$@
+
+doxyfile-man%.usr: doxyfile-man%
+ sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+ -e 's/%USR_JA_DEV%/usr/g' \
+ -e 's/%OUTPUT_LANGUAGE%/English/' \
< $< >$@
-%/html/index.html: doxyfile-html.% ${SRCFILES}
+data/exprog.txt: ${EXAMPLE_PROGS} utils/exprog.sh
+ utils/exprog.sh ${EXAMPLE_PROGS} > $@
+
+data/exmim.txt: ${EXAMPLE_MIMS} utils/exmim.sh
+ utils/exmim.sh ${EXAMPLE_MIMS} > $@
+
+data/dbformat.txt: ${DBFORMAT} utils/dbformat.sh
+ utils/dbformat.sh ${DBFORMAT}/*.txt > $@
+
+data/m17n-config.txt: @M17NLIB@/m17n-config.in
+ sed -n -e '/\/\*\*\*/,/\*\// p' < $< > $@
+
+%/html/index.html: doxyfile-html.% ${SRCALL} \
+ header.html footer.html \
+ utils/%_filter.rb m17n-lib.css
+ rm -f `dirname $@`/*.html
${DOXYGEN} $<
+ echo 'code { font-weight: bold }' >> `dirname $@`/doxygen.css
-%/latex/refman.tex: doxyfile-latex.% ${UTILPATH}/refman-filter.awk ${SRCFILES}
- ${DOXYGEN} $<; \
- awk -f ${UTILPATH}/refman-filter.awk < $@ > temp; \
- mv temp $@
+%/html/parrot.png: parrot.png
+ cp $< $@
-ja/latex/refman.ps: ja/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_JA}
- ${UTILPATH}/run-latex.sh @abs_srcdir@ ja
- emacs -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji ja
+%/latex/refman.tex: doxyfile-latex.% ${SRCALL} utils/%_filter.rb
+ rm -rf `dirname $@`
+ ${DOXYGEN} $<
+
+%/latex/m17n-lib.tex: %/latex/refman.tex utils/refman-filter.sed
+ sed -f utils/refman-filter.sed < $< > $@
-usr/latex/refman.ps: usr/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_USR}
- ${UTILPATH}/run-latex.sh @abs_srcdir@ usr
- emacs -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji usr
+%/latex/m17n-lib.dvi: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
+ utils/latex.sh `dirname $@` latex
-dev/latex/refman.ps: dev/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_DEV}
- ${UTILPATH}/run-latex.sh @abs_srcdir@ dev
- emacs -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji dev
+%/latex/m17n-lib.ps: %/latex/m17n-lib.dvi utils/dvips.sh
+ utils/dvips.sh `dirname $@` dvips
+# emacs -batch -q -l utils/mokuji.el -f write-mokuji $@
-doxyhead.txt: sample.c ${UTILPATH}/mkheaderlist.rb
+%/latex/m17n-lib.pdf: %/latex/m17n-lib.tex data-%/m17n-lib.sty utils/latex.sh
+ utils/latex.sh `dirname $@` pdflatex
+
+%/man/man1/m17n-config.1: doxyfile-man1.% ${MAN1} utils/%_filter.rb
+ rm -rf `dirname $@`
+ ${DOXYGEN} $<
+
+%/man/man3/m17nIntro.3m17n: doxyfile-man3.% ${MAN3} utils/%_filter.rb
+ rm -rf `dirname $@`
+ ${DOXYGEN} $<
+
+%/man/man5/m17nDBgeneral.5: doxyfile-man5.% ${MAN5} utils/%_filter.rb
+ rm -rf `dirname $@`
+ ${DOXYGEN} $<
+
+sample/man3/SampleGroup.3: sample.c
+ [ -d sample ] || mkdir sample
+ [ -d sample/man3 ] || mkdir sample/man3
-${DOXYGEN} -g doxytemp
echo "INPUT = sample.c" >> doxytemp
echo "GENERATE_LATEX = NO" >> doxytemp
echo "GENERATE_HTML = NO" >> doxytemp
echo "GENERATE_MAN = YES" >> doxytemp
echo "MAN_OUTPUT = sample" >> doxytemp
+ echo "OPTIMIZE_OUTPUT_FOR_C = yes" >> doxytemp
${DOXYGEN} doxytemp
- (cd sample/man3; ruby ${UTILPATH}/mkheaderlist.rb) > $@
+ rm -rf doxytemp
+
+man/man1/%: usr/man/man1/% sample/man3/SampleGroup.3 utils/mkman.rb
+ $(mkinstalldirs) man/man1
+ rm -rf doxywork man/man1/*
+ ruby utils/mkman.rb 1 usr/man/man1 man/man1
+
+man/man3/%: usr/man/man3/% sample/man3/SampleGroup.3 utils/mkman.rb
+ $(mkinstalldirs) man/man3
+ rm -rf doxywork man/man3/*
+ ruby utils/mkman.rb 3m17n usr/man/man3 man/man3
+
+man/man5/%: usr/man/man5/% sample/man3/SampleGroup.3 utils/mkman.rb
+ $(mkinstalldirs) man/man5
+ rm -rf doxywork man/man5/*
+ ruby utils/mkman.rb 5 usr/man/man5 man/man5
+
+ja/man3m/%.3m: ja/man/man3/%.3m sample-ja.c utils/mkman.rb
+ -${DOXYGEN} -g doxytemp
+ echo "INPUT = sample.c" >> doxytemp
+ echo "GENERATE_LATEX = NO" >> doxytemp
+ echo "GENERATE_HTML = NO" >> doxytemp
+ echo "GENERATE_MAN = YES" >> doxytemp
+ echo "MAN_OUTPUT = sample" >> doxytemp
+ echo "OPTIMIZE_OUTPUT_FOR_C = yes" >> doxytemp
+ ${DOXYGEN} doxytemp
+ [ -d "ja/man3m" ] || mkdir -p ja/man3m
+ rm -rf ja/man3m/index.*
+ ruby utils/mkman.rb ja
rm -rf doxytemp sample
-%/man/man3/m17nIntro.3m: doxyfile-man.% ${SRCFILES}
- ${DOXYGEN} $<
+CLEANFILES=doxyfile-* ${TARGET} *.tar.gz warning *~
-man/man3m/m17nIntro.3m: usr/man/man3/m17nIntro.3m doxyhead.txt ${UTILPATH}/mkman.rb
- [ -d "man/man3m" ] || mkdir -p man/man3m
- ruby ${UTILPATH}/mkman.rb usr
+clean-local:
+ rm -rf usr dev ja man doxywork
-man/ja/man3m/m17nIntro.3m: ja/man/man3/m17nIntro.3m doxyhead.txt ${UTILPATH}/mkman.rb
- [ -d "man/ja/man3m" ] || mkdir -p man/ja/man3m
- ruby ${UTILPATH}/mkman.rb ja
+WEBDIR = /project/web/extra/m17n-lib/m17n-docs
+FTPDIR = /ftp/pub/m17n-lib
-.PRECIOUS: %/latex/refman.tex
+release: dist
+ [ -d ${WEBDIR} ] || mkdir ${WEBDIR}
+ cp usr/html/* ${WEBDIR}
+ cp ${distdir}.tar.gz ${FTPDIR}
-CLEANFILES = doxyfile doxyfile-*.* m17n.tag warning \
- */html/index.html */latex/refman.*
-DISTCLEANFILES = doxyfile *~
+.PRECIOUS: usr/latex/refman.tex usr/latex/m17n-lib.tex %/man/man3/m17nIntro.3m ${SRCALL}
endif