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