aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
Diffstat (limited to 'admin')
-rw-r--r--admin/ChangeLog4
-rw-r--r--admin/charsets/Makefile349
-rw-r--r--admin/notes/BRANCH18
-rw-r--r--admin/notes/exit-value35
4 files changed, 57 insertions, 349 deletions
diff --git a/admin/ChangeLog b/admin/ChangeLog
index cca47783b62..d0cc63f1e97 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,7 @@
12004-05-08 Thien-Thi Nguyen <ttn@gnu.org>
2
3 * notes/BRANCH: New file, to be maintained per CVS branch.
4
12003-10-01 Miles Bader <miles@gnu.org> 52003-10-01 Miles Bader <miles@gnu.org>
2 6
3 * quick-install-emacs: Don't use "function" keyword when defining 7 * quick-install-emacs: Don't use "function" keyword when defining
diff --git a/admin/charsets/Makefile b/admin/charsets/Makefile
deleted file mode 100644
index ceecbce8211..00000000000
--- a/admin/charsets/Makefile
+++ /dev/null
@@ -1,349 +0,0 @@
1# Makefile -- Makefile to generate charset maps in etc/charsets.
2# Copyright (C) 2003
3# National Institute of Advanced Industrial Science and Technology (AIST)
4# Registration Number H13PRO009
5#
6# This file is part of GNU Emacs.
7
8# GNU Emacs is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation; either version 2, or (at your option)
11# any later version.
12
13# GNU Emacs is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17
18# You should have received a copy of the GNU General Public License
19# along with GNU Emacs; see the file COPYING. If not, write to the
20# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21# Boston, MA 02111-1307, USA.
22
23# Commentary
24
25# At first, set these environment variables:
26# GLIBC_CHARMAPS
27# Directory of glibc-VERSION/localedate/charmaps.
28# VERSION must be 2.3 or the later.
29# MISC_CHARMAPS
30# Direcory containing these charmap files:
31# o bulgarian-mik.txt.gz
32# provided at <http://czyborra.com/charsets/>
33# o PTCP154
34# provided at <http://www.iana.org/assignments/charset-reg/>
35# o stdenc.txt and symbol.txt
36# provided at <http://www.unicode.org/Public/MAPPINGS/>
37# o cp932.txt
38# provided at <http://www.unicode.org/Public/MAPPINGS/VENDERS>
39# o Uni2JIS
40# provided at <http://kanji.zinbun.kyoto-u.ac.jp/~yasuoka/CJK.html>
41# o 720.htm and 858.htm
42# provided at <http://www.microsoft.com/globaldev/reference/oem/>
43# o eucJP-13th.txt, eucJP-udc.txt, eucJP-ibmext.txt
44# provided at <http://www.opengroup.or.jp/jvc/cde/>
45# o cns2ucsdkw.txt
46# available by:
47# % cvs -d :pserver:anonymous@cvs.kanji-database.sourceforge.net:\
48# /cvsroot/kanji-database login
49# % cvs -d :pserver:anonymous@cvs.kanji-database.sourceforge.net:\
50# /cvsroot/kanji-database co kanji-database
51# OLDEMACS
52# emacs of version 21.3.50 or later
53#
54# Then, do this:
55# % make XXX.map (or make all)
56# % make install
57
58CHARSETS = ${ISO8859} ${IBM} ${CODEPAGE} ${CJK} ${MISC} ${MULE}
59
60# Note: We can not prepend "ISO-" to these map files because of file
61# name limits on DOS.
62ISO8859 = \
63 8859-2.map 8859-3.map 8859-4.map 8859-5.map 8859-6.map 8859-7.map \
64 8859-8.map 8859-9.map 8859-10.map 8859-11.map 8859-13.map 8859-14.map \
65 8859-15.map 8859-16.map
66
67IBM = \
68 IBM037.map IBM038.map \
69 IBM256.map IBM273.map IBM274.map IBM275.map IBM277.map IBM278.map \
70 IBM280.map IBM281.map IBM284.map IBM285.map IBM290.map IBM297.map \
71 IBM420.map IBM423.map IBM424.map IBM437.map IBM500.map IBM850.map \
72 IBM851.map IBM852.map IBM855.map IBM856.map IBM857.map IBM860.map \
73 IBM861.map IBM862.map IBM863.map IBM864.map IBM865.map IBM866.map \
74 IBM868.map IBM869.map IBM870.map IBM871.map IBM874.map IBM875.map \
75 IBM880.map IBM891.map IBM903.map IBM904.map IBM905.map IBM918.map \
76 IBM1004.map IBM1026.map IBM1047.map
77
78CODEPAGE = \
79 CP737.map CP775.map CP1125.map\
80 CP1250.map CP1251.map CP1252.map CP1253.map CP1254.map \
81 CP1255.map CP1256.map CP1257.map CP1258.map \
82 CP10007.map \
83 CP720.map CP858.map
84
85CJK = GB2312.map GBK.map GB180302.map GB180304.map \
86 BIG5.map BIG5-HKSCS.map\
87 CNS-1.map CNS-2.map CNS-3.map CNS-4.map CNS-5.map CNS-6.map CNS-7.map \
88 CNS-F.map \
89 JISX0201.map JISX0208.map JISX0212.map JISX2131.map JISX2132.map \
90 JISC6226.map CP932-2BYTE.map JISX213A.map\
91 KSC5601.map KSC5636.map JOHAB.map
92
93MISC = KOI-8.map KOI8-R.map KOI8-U.map KOI8-T.map ALTERNATIVNYJ.map \
94 MIK.map PTCP154.map \
95 TIS-620.map VISCII.map VSCII.map VSCII-2.map\
96 KA-PS.map KA-ACADEMY.map \
97 HP-ROMAN8.map NEXTSTEP.map MACINTOSH.map EBCDICUK.map EBCDICUS.map \
98 stdenc.map symbol.map \
99 CP949-2BYTE.map \
100 BIG5-1.map BIG5-2.map
101
102# Emacs-mule charsets.
103MULE = MULE-ethiopic.map MULE-ipa.map MULE-is13194.map \
104 MULE-sisheng.map MULE-tibetan.map \
105 MULE-lviscii.map MULE-uviscii.map
106
107TRANS_TABLE = cp51932.el eucjp-ms.el
108
109all: ${CHARSETS} ${TRANS_TABLE}
110
111AWK = gawk
112
113# Rules for each charset
114
115VSCII.map: ${GLIBC_CHARMAPS}/TCVN5712-1 mapconv compact.awk
116 # Generating $@...
117 @mapconv $< '/^<.*[ ]\/x[0-9a-f].[ ]/' GLIBC-1 compact.awk > $@
118
119VSCII-2.map: ${GLIBC_CHARMAPS}/TCVN5712-1 mapconv compact.awk
120 # Generating $@...
121 @mapconv $< '/^<.*[ ]\/x[2-7a-f].[ ]/' GLIBC-1 compact.awk \
122 | sed 's/0x20-0x7F.*/0x00-0x7F 0x0000/' > $@
123
124ALTERNATIVNYJ.map: IBM866.map
125 # Generating $@...
126 @echo "# Modified from ibm866 according to the chart at" > $@
127 @echo "# http://www.cyrillic.com/ref/cyrillic/koi-8alt.html," >> $@
128 @echo "# with guesses for the Unicodes of the glyphs." >> $@
129 @sed -e '/0xF2/ s/ .*/ 0x2019/' \
130 -e '/0xF3/ s/ .*/ 0x2018/' \
131 -e '/0xF4/ s/ .*/ 0x0301/' \
132 -e '/0xF5/ s/ .*/ 0x0300/' \
133 -e '/0xF6/ s/ .*/ 0x203A/' \
134 -e '/0xF7/ s/ .*/ 0x2039/' \
135 -e '/0xF8/ s/ .*/ 0x2191/' \
136 -e '/0xF9/ s/ .*/ 0x2193/' \
137 -e '/0xFA/ s/ .*/ 0x00B1/' \
138 -e '/0xFB/ s/ .*/ 0x00F7/' < $< >> $@
139
140MIK.map: ${MISC_CHARMAPS}/bulgarian-mik.txt.gz mapconv compact.awk
141 # Generating $@...
142 @mapconv $< '1,$$' CZYBORRA compact.awk > $@
143
144PTCP154.map: ${MISC_CHARMAPS}/PTCP154 mapconv compact.awk
145 # Generating $@...
146 @mapconv $< '/^0x/' IANA compact.awk > $@
147
148stdenc.map: ${MISC_CHARMAPS}/stdenc.txt mapconv compact.awk
149 # Generating $@...
150 @mapconv $< '/^[0-9A-Fa-f]/' UNICODE compact.awk > $@
151
152symbol.map: ${MISC_CHARMAPS}/symbol.txt mapconv compact.awk
153 # Generating $@...
154 @mapconv $< '/^[0-9A-Fa-f]/' UNICODE compact.awk > $@
155
156CP720.map: ${MISC_CHARMAPS}/720.htm mapconv compact.awk
157 # Generating $@...
158 @mapconv $< '/^[0-9A-F]/' MICROSOFT compact.awk > $@
159
160CP858.map: ${MISC_CHARMAPS}/858.htm mapconv compact.awk
161 # Generating $@...
162 @mapconv $< '/^[0-9A-F]/' MICROSOFT compact.awk > $@
163
164CP949-2BYTE.map: ${GLIBC_CHARMAPS}/CP949 mapconv compact.awk
165 # Generating $@...
166 @mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
167
168GB2312.map: ${GLIBC_CHARMAPS}/GB2312 mapconv compact.awk
169 # Generating $@...
170 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
171
172GBK.map: ${GLIBC_CHARMAPS}/GBK mapconv compact.awk
173 # Generating $@...
174 @mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
175
176GB180302.map: ${GLIBC_CHARMAPS}/GB18030 mapconv gb180302.awk
177 # Generating $@...
178 @mapconv $< '/^<.*[ ]\/x..\/x..[ ]/' GLIBC-2 gb180302.awk > $@
179
180GB180304.map: GB180302.map gb180304.awk
181 # Generating $@...
182 @$(AWK) -f gb180304.awk < $< > $@
183
184JISX0201.map: ${GLIBC_CHARMAPS}/JIS_X0201 mapconv compact.awk
185 # Generating $@...
186 @mapconv $< '/^<.*[ ]\/x[0-9]/' GLIBC-1 compact.awk > $@
187 @echo "# Generated by hand" >> $@
188 @echo "0xA1-0xDF 0xFF61" >> $@
189
190JISX0208.map: ${GLIBC_CHARMAPS}/EUC-JP mapconv
191 # Generating $@...
192 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 \
193 | sed 's/0x2015/0x2014/' > $@
194
195JISX0212.map: ${GLIBC_CHARMAPS}/EUC-JP mapconv compact.awk
196 # Generating $@...
197 @mapconv $< '/^<.*[ ]\/x8f/ s,/x8f,,' GLIBC-2-7 compact.awk > $@
198
199JISX2131.map: ${GLIBC_CHARMAPS}/EUC-JISX0213 mapconv
200 # Generating $@...
201 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 \
202 | sed -e 's/0x2015/0x2014/' -e 's/0x2299/0x29BF/' > $@
203
204JISX2132.map: ${GLIBC_CHARMAPS}/EUC-JISX0213 mapconv
205 # Generating $@...
206 @mapconv $< '/^<.*[ ]\/x8f/ s,/x8f,,' GLIBC-2-7 > $@
207
208JISX213A.map:
209 # Generating $@
210 @(echo "0x2E21 0x4FF1"; \
211 echo "0x2F7E 0x525D"; \
212 echo "0x4F54 0x20B9F"; \
213 echo "0x4F7E 0x541E"; \
214 echo "0x7427 0x5653"; \
215 echo "0x7E7A 0x59F8"; \
216 echo "0x7E7B 0x5C5B"; \
217 echo "0x7E7C 0x5E77"; \
218 echo "0x7E7D 0x7626"; \
219 echo "0x7E7E 0x7E6B") > $@
220
221CP932-2BYTE.map: ${MISC_CHARMAPS}/cp932.txt mapconv cp932.awk
222 # Generating $@...
223 @mapconv $< '/^0x[89A-F][0-9A-F][0-9A-F]/' UNICODE2 cp932.awk > $@
224
225cp51932.el: CP932-2BYTE.map cp51932.awk
226 @$(AWK) -f cp51932.awk < CP932-2BYTE.map > $@
227
228eucjp-ms.el: ${MISC_CHARMAPS}/eucJP-13th.txt ${MISC_CHARMAPS}/eucJP-udc.txt \
229 ${MISC_CHARMAPS}/eucJP-ibmext.txt eucjp-ms.awk
230 @(cd ${MISC_CHARMAPS}; \
231 cat eucJP-13th.txt eucJP-udc.txt eucJP-ibmext.txt) \
232 | $(AWK) -f eucjp-ms.awk > $@
233
234JISC6226.map : ${MISC_CHARMAPS}/Uni2JIS mapconv kuten.awk
235 # Generating $@...
236 @mapconv $< '/^[^#].*0-/' YASUOKA kuten.awk > $@
237
238KSC5601.map: ${GLIBC_CHARMAPS}/EUC-KR mapconv compact.awk
239 # Generating $@...
240 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
241
242BIG5.map: ${GLIBC_CHARMAPS}/BIG5 mapconv compact.awk
243 # Generating $@...
244 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2 > $@
245
246BIG5-1.map: BIG5.map mapconv big5.awk
247 # Generating $@...
248 @echo "Generated from $<" > $@
249 @sed -n -e '/0xa140/,/0xc8fe/p' < $< | gawk -f big5.awk >> $@
250
251BIG5-2.map: BIG5.map mapconv big5.awk
252 # Generating $@...
253 @echo "Generated from $<" > $@
254 @sed -n -e '/0xc940/,$$ p' < $< | gawk -f big5.awk >> $@
255
256BIG5-HKSCS.map: ${GLIBC_CHARMAPS}/BIG5-HKSCS mapconv compact.awk
257 # Generating $@...
258 @mapconv $< '/^<.*[ ]\/x[89a-f].\//' GLIBC-2 compact.awk > $@
259
260JOHAB.map: ${GLIBC_CHARMAPS}/JOHAB mapconv compact.awk
261 # Generating $@...
262 @mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
263
264CNS-1.map: ${GLIBC_CHARMAPS}/EUC-TW mapconv compact.awk
265 # Generating $@...
266 @mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
267
268# CNS-1.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
269# # Generating $@...
270# @mapconv $< '/^C1/' KANJI-DATABASE compact.awk > $@
271
272CNS-2.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
273 # Generating $@...
274 @mapconv $< '/^C2/' KANJI-DATABASE compact.awk > $@
275
276CNS-3.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
277 # Generating $@...
278 @mapconv $< '/^C3/' KANJI-DATABASE compact.awk > $@
279
280CNS-4.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
281 # Generating $@...
282 @mapconv $< '/^C4/' KANJI-DATABASE compact.awk > $@
283
284CNS-5.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
285 # Generating $@...
286 @mapconv $< '/^C5/' KANJI-DATABASE compact.awk > $@
287
288CNS-6.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
289 # Generating $@...
290 @mapconv $< '/^C6/' KANJI-DATABASE compact.awk > $@
291
292CNS-7.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
293 # Generating $@...
294 @mapconv $< '/^C7/' KANJI-DATABASE compact.awk > $@
295
296CNS-F.map: ${GLIBC_CHARMAPS}/EUC-TW mapconv compact.awk
297 # Generating $@...
298 @mapconv $< '/^<.*\/x8e\/xaf/ s,/x8e/xaf,,' GLIBC-2-7 compact.awk > $@
299
300# General target to produce map files for mule charsets.
301MULE-%.map: mule-charsets.el
302 # Generating $@...
303 @${OLDEMACS} -batch -l ./mule-charsets.el $@
304
305# General target to produce map files for ISO-8859, GEORGIAN, and
306# EBCDIC charsets. We can not use the original file name because of
307# file name limit on DOS. "KA" is ISO 639 language code for Georgian.
308
3098859-%.map: ${GLIBC_CHARMAPS}/ISO-8859-% mapconv compact.awk
310 # Generating $@...
311 @mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
312
313KA-%.map: ${GLIBC_CHARMAPS}/GEORGIAN-% mapconv compact.awk
314 # Generating $@...
315 @mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
316
317EBCDIC%.map: ${GLIBC_CHARMAPS}/EBCDIC-% mapconv compact.awk
318 # Generating $@...
319 @mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
320
321# General target to produce map files for single-byte charsets.
322
323%.map: ${GLIBC_CHARMAPS}/% mapconv compact.awk
324 # Generating $@...
325 @mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
326
327install:
328 @for f in ${CHARSETS}; do \
329 if test -r $$f; then \
330 if ! cmp -s $$f ../../etc/charsets/$$f; then \
331 echo updating $$f; \
332 cp $$f ../../etc/charsets; \
333 fi; \
334 fi; \
335 done
336 @for f in ${TRANS_TABLE}; do \
337 if test -r $$f; then \
338 if ! cmp -s $$f ../../lisp/international/$$f; then \
339 echo updating $$f; \
340 cp $$f ../../lisp/international; \
341 fi; \
342 fi; \
343 done
344
345# Clear files that are automatically generated.
346clean:
347 rm -f ${CHARSETS} ${TRANS_TABLE}
348
349# arch-tag: 90b3bf30-1fef-45bf-b30c-665c30c22310
diff --git a/admin/notes/BRANCH b/admin/notes/BRANCH
new file mode 100644
index 00000000000..2c343e53f15
--- /dev/null
+++ b/admin/notes/BRANCH
@@ -0,0 +1,18 @@
1This file describes the CVS branch in which it is maintained.
2Everything below the line is branch-specific.
3________________________________________________________________________
4
5This is the "HEAD" branch, otherwise known as the "trunk". Its primary
6purpose is to accumulate changes that are not yet partitioned into a
7specific (versioned) release. When people say "use CVS emacs", this is
8the branch they are talking about. Likewise, a "cvs checkout" without
9the "-r" option results in this branch.
10
11The plans for this branch are not specified; Emacs hackers add to it
12relatively free of constraint (aside from proper legal / accounting
13practices), although sometimes there is related discussion on the
14emacs-devel mailing list.
15
16The closure process for this branch is undocumented; concepts such as
17"freeze", "release", or "integration with the trunk" are not applicable
18to this branch.
diff --git a/admin/notes/exit-value b/admin/notes/exit-value
new file mode 100644
index 00000000000..e59bb614b9b
--- /dev/null
+++ b/admin/notes/exit-value
@@ -0,0 +1,35 @@
1ttn 2004-05-09
2
3The exit value of a program returning to the shell on unixoid systems is
4typically 0 for success, and non-0 (such as 1) for failure. For vms it is
5odd (1,3,5...) for success, even (0,2,4...) for failure.
6
7This holds from the point of view of the "shell" (in quotes because vms has a
8different dispatch model that is not explained further here).
9
10From the point of view of the program, nowadays stdlib.h on both type of
11systems provides macros `EXIT_SUCCESS' and `EXIT_FAILURE' that should DTRT.
12
13NB: The numerical values of these macros DO NOT need to fulfill the the exit
14value requirements outlined in the first paragraph! That is the job of the
15`exit' function. Thus, this kind of construct shows misunderstanding:
16
17 #ifdef VMS
18 exit (1);
19 #else
20 exit (0);
21 #endif
22
23Values aside from EXIT_SUCCESS and EXIT_FAILURE are tricky.
24
25
26
27ttn 2004-05-12
28
29Values aside from EXIT_SUCCESS and EXIT_FAILURE can be used to indicate
30finer gradations of failure. If this is the only information available
31to the caller, clamping such values to EXIT_FAILURE loses information.
32If there are other ways to indicate the problem to the caller (such as
33a message to stderr) it may be ok to clamp. In all cases, it is the
34relationship between the program and its caller that must be examined.
35[Insert ZAMM quote here.]