Makefile.in 5.03 KB
Newer Older
Kenichi Handa's avatar
Kenichi Handa committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
# Makefile for leim subdirectory in GNU Emacs.
# Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
# Licensed to the Free Software Foundation.

# This file is part of GNU Emacs.

# GNU Emacs 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.
#
# GNU Emacs 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 GNU Emacs; see the file COPYING.  If not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.

# Avoid trouble on systems where the `SHELL' variable might be
# inherited from the environment.
SHELL = /bin/sh

# Here are the things that we expect ../configure to edit.
version=@version@
prefix=@prefix@
datadir=@datadir@
srcdir=@srcdir@

32
# Where to install LEIM files.
Kenichi Handa's avatar
Kenichi Handa committed
33 34
INSTALLDIR=${datadir}/emacs/${version}/leim

35 36 37
# On Xenix and the IBM RS6000, double-dot gets screwed up.
dot = .
dotdot = ${dot}${dot}
Kenichi Handa's avatar
Kenichi Handa committed
38

39 40 41
# Which Emacs to use to convert TIT files to Emacs Lisp files,
# byte-compile Emacs Lisp files, and generate the file leim-list.el.
EMACS = ${dot}${dot}/src/emacs
Kenichi Handa's avatar
Kenichi Handa committed
42

43 44
buildlisppath=${srcdir}/${dot}${dot}/lisp

45 46
# How to run Emacs.
RUN-EMACS = ${EMACS} -batch --no-init-file --no-site-file
47 48 49

# Subdirectories to be made if ${srcdir} is different from the current
# directory.
Kenichi Handa's avatar
Kenichi Handa committed
50 51
SUBDIRS=quail skk

52
# Files generated from TIT dictionaries for Chinese GB character set.
53
TIT-GB=\
54 55 56 57 58 59 60 61 62 63
	quail/CTLau.el		\
	quail/CCDOSPY.el	\
	quail/Punct.el		\
	quail/PY.el		\
	quail/QJ.el		\
	quail/SW.el		\
	quail/TONEPY.el		\
	quail/ZIRANMA.el

# Files generated from TIT dictionaries for Chinese BIG5 character set.
64
TIT-BIG5=\
65 66 67 68 69 70 71 72 73
	quail/4Corner.el	\
	quail/ARRAY30.el	\
	quail/CTLauB.el		\
	quail/ECDICT.el		\
	quail/ETZY.el		\
	quail/Punct-b5.el	\
	quail/PY-b5.el		\
	quail/QJ-b5.el		\
	quail/ZOZY.el
74

75
CHINESE-TIT=${TIT-GB} ${TIT-BIG5}
76

77
NON-TIT-GB=quail/py-punct.el
78

79
NON-TIT-BIG5=quail/quick-b5.el quail/tsang-b5.el quail/pypunct-b5.el
80

81 82 83 84 85 86 87 88 89
NON-TIT-CNS=quail/quick-cns.el quail/tsang-cns.el

CHINESE-NON-TIT=${NON-TIT-GB} ${NON-TIT-BIG5} ${NON-TIT-CNS}

CHINESE-GB=${TIT-GB} ${NON-TIT-GB}

CHINESE-BIG5=${TIT-BIG5} ${NON-TIT-BIG5} 

CHINESE-CNS=${NON-TIT-CNS} 
Kenichi Handa's avatar
Kenichi Handa committed
90

91
JAPANESE=quail/japanese.el skk/skkdic.el
Kenichi Handa's avatar
Kenichi Handa committed
92

93
KOREAN=	quail/hangul.el		\
94 95 96 97
	quail/hangul3.el	\
	quail/hanja.el		\
	quail/hanja-jis.el	\
	quail/symbol-ksc.el
Kenichi Handa's avatar
Kenichi Handa committed
98

99
THAI=quail/thai.el
Kenichi Handa's avatar
Kenichi Handa committed
100

101
VIETNAMESE=quail/viqr.el
Kenichi Handa's avatar
Kenichi Handa committed
102

103
LAO=quail/lao.el quail/lrt.el
Kenichi Handa's avatar
Kenichi Handa committed
104

105
INDIAN=quail/devanagari.el
Kenichi Handa's avatar
Kenichi Handa committed
106

107
TIBETAN=quail/tibetan.el
Kenichi Handa's avatar
Kenichi Handa committed
108

109
LATIN=quail/latin-pre.el quail/latin-post.el
Kenichi Handa's avatar
Kenichi Handa committed
110

111
GREEK=quail/greek.el
Kenichi Handa's avatar
Kenichi Handa committed
112

113
RUSSIAN=quail/cyrillic.el quail/cyril-jis.el
Kenichi Handa's avatar
Kenichi Handa committed
114

115
MISC=quail/ethiopic.el quail/ipa.el
Kenichi Handa's avatar
Kenichi Handa committed
116 117 118

CHINESE=${CHINESE-GB} ${CHINESE-BIG5} ${CHINESE-CNS}
EASTASIA=${CHINESE} ${JAPANESE} ${KOREAN}
119
ASIA=${EASTASIA} ${THAI} ${VIETNAMESE} ${LAO} ${INDIAN} ${TIBETAN}
Kenichi Handa's avatar
Kenichi Handa committed
120 121 122
EUROPEAN=${LATIN} ${GREEK} ${RUSSIAN}
WORLD=${ASIA} ${EUROPEAN} ${MISC}

123 124 125
TIT=${CHINESE-TIT}
NON-TIT=${CHINESE-NON-TIT} ${JAPANESE} ${KOREAN} ${EUROPEAN} ${MISC}

126
all: ${EMACS} ${SUBDIRS} ${WORLD} leim-list.el
Kenichi Handa's avatar
Kenichi Handa committed
127

128 129 130 131
# To ensure that we can run Emacs.  This target is ignored (never
# being hit) if a user changes default value of EMACS.
${dot}${dot}/src/emacs:
	cd ../src; ${MAKE} ${MFLAGS} emacs
Kenichi Handa's avatar
Kenichi Handa committed
132

133 134 135
${SUBDIRS}:
	mkdir $@
	touch stamp-subdir
Kenichi Handa's avatar
Kenichi Handa committed
136

137
# Rule to generate quail/*.el from CXTERM-DIC/*.tit.
138 139 140 141
${TIT}:
	${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
	    --eval '(batch-titdic-convert t)' -dir quail ${srcdir}/CXTERM-DIC
	${RUN-EMACS} -f batch-byte-compile ${TIT}
Kenichi Handa's avatar
Kenichi Handa committed
142

143
# Emacs Lisp source files not generated from TIT dictionaries are
144 145 146
# distributed as is.  So, hitting this target means that ${srcdir} is
# different from the current directory.  In this case, we just make
# links.
147
%.el:
148
	@LN_S@ ${srcdir}/$@ $@
149
	@LN_S@ ${srcdir}/$@c $@c
Kenichi Handa's avatar
Kenichi Handa committed
150

151 152
# Before running update-leim-list-file, delete all old files which are
# not contained in ${WORLD}.
153
leim-list.el: ${SUBDIRS} ${WORLD}
154 155 156
	for dir in ${SUBDIRS}; do \
	  for f in $${dir}/*.el; do \
	    if echo ${WORLD} | grep $${f} > /dev/null; then true; \
157 158
	    else rm -f $${f}* ; fi; \
	  done; \
159
	done
160 161
	${RUN-EMACS} -l ${buildlisppath}/international/quail \
	    --eval "(update-leim-list-file \".\")"
Kenichi Handa's avatar
Kenichi Handa committed
162 163

install: all
164
	if [ x`(cd ${INSTALLDIR}; /bin/pwd)` != x`(/bin/pwd)` ] ; then \
165
	  rm -rf ${INSTALLDIR}/leim-list.el; \
166
	  rm -rf ${INSTALLDIR}/quail ${INSTALLDIR}/skk ; \
167
	  echo "Copying leim files to ${INSTALLDIR} ..." ; \
168 169 170 171 172 173
	  cp leim-list.el ${INSTALLDIR} ; \
	  tar -cf - ${TIT} \
		| (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
	  cd ${srcdir}; \
	  tar -cf - ${NON-TIT} \
		| (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
174
	else true; fi
175 176 177 178

clean mostlyclean:
	ELC=`echo ${TIT} | sed 's/\.el/.elc/g'`; \
	rm -f ${TIT} $$ELC leim-list.el
179

180
distclean maintainer-clean:
181
	if test -f stamp-subdir; then rm -rf ${SUBDIRS} stamp-subdir; fi
182
	rm -f Makefile