]> code.delx.au - gnu-emacs/blob - leim/Makefile.in
*** empty log message ***
[gnu-emacs] / leim / Makefile.in
1 # Makefile for leim subdirectory in GNU Emacs.
2 # Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
3 # Licensed to the Free Software Foundation.
4 # Copyright (C) 2003
5 # National Institute of Advanced Industrial Science and Technology (AIST)
6 # Registration Number H13PRO009
7
8 # This file is part of GNU Emacs.
9
10 # GNU Emacs is free software; you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 2, or (at your option)
13 # any later version.
14 #
15 # GNU Emacs is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
19 #
20 # You should have received a copy of the GNU General Public License
21 # along with GNU Emacs; see the file COPYING. If not, write to the
22 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 # Boston, MA 02111-1307, USA.
24
25 # Avoid trouble on systems where the `SHELL' variable might be
26 # inherited from the environment.
27 SHELL = /bin/sh
28
29 # Here are the things that we expect ../configure to edit.
30 version=@version@
31 prefix=@prefix@
32 datadir=@datadir@
33 srcdir=@srcdir@
34
35 # Where to install LEIM files.
36 INSTALLDIR=${datadir}/emacs/${version}/leim
37
38 # On Xenix and the IBM RS6000, double-dot gets screwed up.
39 dot = .
40
41 # Which Emacs to use to convert TIT files to Emacs Lisp files,
42 # byte-compile Emacs Lisp files, and generate the file leim-list.el.
43 BUILT-EMACS = ${dot}${dot}/src/emacs
44
45 buildlisppath=${srcdir}/${dot}${dot}/lisp
46
47 # How to run Emacs.
48 RUN-EMACS = EMACSLOADPATH=$(buildlisppath) LC_ALL=C \
49 ${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
50
51 # Subdirectories to be made if ${srcdir} is different from the current
52 # directory.
53 SUBDIRS=quail
54
55 # Files generated from TIT dictionaries for Chinese GB character set.
56 TIT-GB=\
57 quail/CCDOSPY.elc \
58 quail/Punct.elc \
59 quail/QJ.elc \
60 quail/SW.elc \
61 quail/TONEPY.elc
62
63 # Files generated from TIT dictionaries for Chinese BIG5 character set.
64 TIT-BIG5=\
65 quail/4Corner.elc \
66 quail/ARRAY30.elc \
67 quail/ECDICT.elc \
68 quail/ETZY.elc \
69 quail/Punct-b5.elc \
70 quail/PY-b5.elc \
71 quail/QJ-b5.elc \
72 quail/ZOZY.elc
73
74 CHINESE-TIT=${TIT-GB} ${TIT-BIG5}
75
76 NON-TIT-GB=${srcdir}/quail/py-punct.elc
77
78 NON-TIT-BIG5=${srcdir}/quail/pypunct-b5.elc
79
80 CHINESE-NON-TIT=${NON-TIT-GB} ${NON-TIT-BIG5}
81
82 CHINESE-GB=${TIT-GB} ${NON-TIT-GB}
83
84 CHINESE-BIG5=${TIT-BIG5} ${NON-TIT-BIG5}
85
86 JAPANESE=${srcdir}/quail/japanese.elc ${srcdir}/ja-dic/ja-dic.elc
87
88 KOREAN= ${srcdir}/quail/hangul.elc \
89 ${srcdir}/quail/hangul3.elc \
90 ${srcdir}/quail/hanja.elc \
91 ${srcdir}/quail/hanja3.elc \
92 ${srcdir}/quail/hanja-jis.elc \
93 ${srcdir}/quail/symbol-ksc.elc
94
95 THAI=${srcdir}/quail/thai.elc
96
97 VIETNAMESE=${srcdir}/quail/viqr.elc ${srcdir}/quail/vntelex.elc
98
99 LAO=${srcdir}/quail/lao.elc ${srcdir}/quail/lrt.elc
100
101 INDIAN=${srcdir}/quail/indian.elc
102
103 TIBETAN=${srcdir}/quail/tibetan.elc
104
105 LATIN= ${srcdir}/quail/latin-pre.elc \
106 ${srcdir}/quail/latin-post.elc \
107 ${srcdir}/quail/latin-alt.elc \
108 ${srcdir}/quail/latin-ltx.elc \
109 ${srcdir}/quail/welsh.elc
110
111 UNICODE=${srcdir}/quail/sgml-input.elc ${srcdir}/quail/rfc1345.elc \
112 ${srcdir}/quail/uni-input.elc
113
114 SLAVIC= \
115 ${srcdir}/quail/czech.elc \
116 ${srcdir}/quail/croatian.elc \
117 ${srcdir}/quail/slovak.elc
118
119 GREEK=${srcdir}/quail/greek.elc
120
121 RUSSIAN=${srcdir}/quail/cyrillic.elc ${srcdir}/quail/cyril-jis.elc
122
123 MISC= \
124 ${srcdir}/quail/ethiopic.elc \
125 ${srcdir}/quail/ipa.elc \
126 ${srcdir}/quail/hebrew.elc \
127 ${srcdir}/quail/georgian.elc
128
129 MISC-DIC=\
130 quail/tsang-b5.elc \
131 quail/quick-b5.elc \
132 quail/tsang-cns.elc \
133 quail/quick-cns.elc \
134 quail/PY.elc \
135 quail/ZIRANMA.elc \
136 quail/CTLau.elc \
137 quail/CTLau-b5.elc
138
139 CHINESE=${CHINESE-GB} ${CHINESE-BIG5}
140 EASTASIA=${CHINESE} ${JAPANESE} ${KOREAN}
141 ASIA=${EASTASIA} ${THAI} ${VIETNAMESE} ${LAO} ${INDIAN} ${TIBETAN}
142 EUROPEAN=${LATIN} ${SLAVIC} ${GREEK} ${RUSSIAN}
143 WORLD=${ASIA} ${EUROPEAN} ${MISC} ${MISC-DIC} ${UNICODE}
144
145 TIT=${CHINESE-TIT}
146 NON-TIT=${CHINESE-NON-TIT} ${JAPANESE} ${KOREAN} ${EUROPEAN} ${MISC}
147
148 .SUFFIXES: .elc .el
149
150 .el.elc:
151 ${RUN-EMACS} -f batch-byte-compile $<
152
153 all: ${BUILT-EMACS} ${SUBDIRS} ${TIT} ${MISC-DIC} leim-list.el
154
155 # To ensure that we can run Emacs. This target is ignored (never
156 # being hit) if a user changes default value of EMACS.
157 ${dot}${dot}/src/emacs:
158 cd ../src; ${MAKE} ${MFLAGS} emacs
159
160 ${SUBDIRS}:
161 mkdir $@
162 touch stamp-subdir
163
164 # The rules which generate ${TIT} and ${MISC-DIC} files create them all
165 # in one go. So we need to prevent parallel execution for that target,
166 # otherwise Emacs complains about files being locked. .NOTPARALLEL is
167 # for GNU Make, .NO_PARALLEL is for other Make's.
168 .NOTPARALLEL: ${TIT} ${MISC-DIC}
169
170 .NO_PARALLEL: ${TIT} ${MISC-DIC}
171
172 # Rule to generate quail/*.el from CXTERM-DIC/*.tit.
173 # The "if [ -f $@ ]; then true; " part prevents parallel Make's
174 # which don't honor .NOTPARALLEL, such as SGI's Make, from running
175 # this rule many times, one each for every file it creates.
176 ${TIT}:
177 if [ -d quail ]; then true; else make quail; fi
178 if [ -f $@ ]; then true; else \
179 ${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
180 --eval '(batch-titdic-convert t)' -dir quail ${srcdir}/CXTERM-DIC; fi
181 if [ -f $@ ]; then true; else \
182 ${RUN-EMACS} -l ${buildlisppath}/international/quail \
183 -f batch-byte-compile ${TIT:.elc=.el}; fi
184
185 # Rule to generate quail/*.el from MISC-DIC/*.
186 ${MISC-DIC}:
187 if [ -d quail ]; then true; else make quail; fi
188 if [ -f $@ ]; then true; else \
189 ${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
190 -f batch-miscdic-convert -dir quail ${srcdir}/MISC-DIC; fi
191 if [ -f $@ ]; then true; else \
192 ${RUN-EMACS} -l ${buildlisppath}/international/quail \
193 -f batch-byte-compile ${MISC-DIC:.elc=.el}; fi
194
195 leim-list.el: ${SUBDIRS} ${WORLD}
196 if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \
197 ${RUN-EMACS} -l ${buildlisppath}/international/quail \
198 --eval "(update-leim-list-file \".\")" ; \
199 else \
200 ${RUN-EMACS} -l ${buildlisppath}/international/quail \
201 --eval "(update-leim-list-file \".\" \"${srcdir}\")" ; \
202 fi
203
204 install: all
205 if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \
206 rm -rf ${INSTALLDIR}/leim-list.el; \
207 rm -rf ${INSTALLDIR}/quail ${INSTALLDIR}/ja-dic ; \
208 echo "Copying leim files to ${INSTALLDIR} ..." ; \
209 if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \
210 tar -chf - leim-list.el quail ja-dic \
211 | (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
212 else \
213 tar -chf - leim-list.el quail \
214 | (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
215 cd ${srcdir}; \
216 tar -chf - quail/* ja-dic \
217 | (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
218 fi; \
219 rm -rf ${INSTALLDIR}/CVS ${INSTALLDIR}/*/CVS; \
220 rm -f ${INSTALLDIR}/.cvsignore ${INSTALLDIR}/*/.cvsignore; \
221 rm -f ${INSTALLDIR}/\#* ${INSTALLDIR}/*/\#* ; \
222 rm -f ${INSTALLDIR}/.\#* ${INSTALLDIR}/*/.\#* ; \
223 rm -f ${INSTALLDIR}/*~ ${INSTALLDIR}/*/*~ ; \
224 rm -f ${INSTALLDIR}/*.orig ${INSTALLDIR}/*/*.orig ; \
225 else true; fi
226 -chmod -R a+r ${INSTALLDIR}
227
228 clean mostlyclean:
229 rm -f ${TIT} ${NON-TIT} ${WORLD} ${TIT:.elc=.el} \
230 ${MISC-DIC} ${MISC-DIC:.elc=.el} leim-list.el
231
232 distclean maintainer-clean:
233 if test -f stamp-subdir; then rm -rf ${SUBDIRS} stamp-subdir; fi
234 rm -f Makefile
235
236 extraclean: distclean
237 -rm -f *~ \#* m/?*~ s/?*~