blob: 03aae6d417296f261b826ac6e68636f12035f197 [file] [log] [blame]
Bram Moolenaar7d1f5db2005-07-03 21:39:27 +00001# Aap recipe for English Vim spell files.
2
3# Use a freshly compiled Vim if it exists.
4@if os.path.exists('../../../src/vim'):
5 VIM = ../../../src/vim
6@else:
7 VIM = vim
8
9SPELLDIR = ..
10FILES = en_US.aff en_US.dic
11 en_AU.aff en_AU.dic
12 en_CA.aff en_CA.dic
13 en_GB.aff en_GB.dic
14 en_NZ.aff en_NZ.dic
15
16all: $(SPELLDIR)/en.latin1.spl $(SPELLDIR)/en.utf-8.spl \
17 $(SPELLDIR)/en.ascii.spl ../README_en.txt
18
19$(SPELLDIR)/en.latin1.spl : $(VIM) $(FILES)
20 :sys env LANG=en_US.ISO8859-1
21 $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
22 en_NZ" -c q
23
24$(SPELLDIR)/en.utf-8.spl : $(VIM) $(FILES)
25 :sys env LANG=en_US.UTF-8
26 $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
27 en_NZ" -c q
28
29$(SPELLDIR)/en.ascii.spl : $(VIM) $(FILES)
30 :sys $(VIM) -e -c "mkspell! -ascii $(SPELLDIR)/en
31 en_US en_AU en_CA en_GB en_NZ" -c q
32
33../README_en.txt: README_en_US.txt README_en_AU.txt
34 :print en_US >!$target
35 :cat README_en_US.txt | :eval re.sub('\r', '', stdin) >>$target
36 :print =================================================== >>$target
37 :print en_AU: >>$target
38 :cat README_en_AU.txt | :eval re.sub('\r', '', stdin) >>$target
39 :print =================================================== >>$target
40 :print en_CA: >>$target
41 :cat README_en_CA.txt | :eval re.sub('\r', '', stdin) >>$target
42 :print =================================================== >>$target
43 :print en_GB: >>$target
44 :cat README_en_GB.txt | :eval re.sub('\r', '', stdin) >>$target
45 :print =================================================== >>$target
46 :print en_NZ: >>$target
47 :cat README_en_NZ.txt | :eval re.sub('\r', '', stdin) >>$target
48
49#
50# Fetching the files from OpenOffice.org.
51#
52OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
53:attr {fetch = $(OODIR)/%file%} en_US.zip en_CA.zip en_NZ.zip
54 en_GB.zip en_AU.zip
55
56# The files don't depend on the .zip file so that we can delete it.
57# Only download the zip file if the targets don't exist.
58en_US.aff en_US.dic: {buildcheck=}
59 :assertpkg unzip patch
60 :fetch en_US.zip
61 :sys $(UNZIP) en_US.zip
62 :delete en_US.zip
63 @if not os.path.exists('en_US.orig.aff'):
64 :copy en_US.aff en_US.orig.aff
65 @if not os.path.exists('en_US.orig.dic'):
66 :copy en_US.aff en_US.orig.dic
67 :sys patch <en_US.diff
68
69en_AU.aff en_AU.dic: {buildcheck=}
70 :assertpkg unzip patch
71 :fetch en_AU.zip
72 :sys $(UNZIP) en_AU.zip
73 :delete en_AU.zip
74 @if not os.path.exists('en_AU.orig.aff'):
75 :copy en_AU.aff en_AU.orig.aff
76 @if not os.path.exists('en_AU.orig.dic'):
77 :copy en_AU.aff en_AU.orig.dic
78 :sys patch <en_AU.diff
79
80en_CA.aff en_CA.dic: {buildcheck=}
81 :assertpkg unzip patch
82 :fetch en_CA.zip
83 :sys $(UNZIP) en_CA.zip
84 :delete en_CA.zip
85 @if not os.path.exists('en_CA.orig.aff'):
86 :copy en_CA.aff en_CA.orig.aff
87 @if not os.path.exists('en_CA.orig.dic'):
88 :copy en_CA.aff en_CA.orig.dic
89 :sys patch <en_CA.diff
90
91en_GB.aff en_GB.dic: {buildcheck=}
92 :assertpkg unzip patch
93 :fetch en_GB.zip
94 :sys $(UNZIP) en_GB.zip
95 :delete en_GB.zip
96 :delete dictionary.lst.example
97 @if not os.path.exists('en_GB.orig.aff'):
98 :copy en_GB.aff en_GB.orig.aff
99 @if not os.path.exists('en_GB.orig.dic'):
100 :copy en_GB.aff en_GB.orig.dic
101 :sys patch <en_GB.diff
102
103en_NZ.aff en_NZ.dic: {buildcheck=}
104 :assertpkg unzip patch
105 :fetch en_NZ.zip
106 :sys $(UNZIP) en_NZ.zip
107 :delete en_NZ.zip
108 @if not os.path.exists('en_NZ.orig.aff'):
109 :copy en_NZ.aff en_NZ.orig.aff
110 @if not os.path.exists('en_NZ.orig.dic'):
111 :copy en_NZ.aff en_NZ.orig.dic
112 :sys patch <en_NZ.diff
113
114
115# Generate diff files, so that others can get the OpenOffice files and apply
116# the diffs to get the Vim versions.
117
118diff:
119 :assertpkg diff
120 :sys {force} diff -a -C 1 en_US.orig.aff en_US.aff >en_US.diff
121 :sys {force} diff -a -C 1 en_US.orig.dic en_US.dic >>en_US.diff
122 :sys {force} diff -a -C 1 en_AU.orig.aff en_AU.aff >en_AU.diff
123 :sys {force} diff -a -C 1 en_AU.orig.dic en_AU.dic >>en_AU.diff
124 :sys {force} diff -a -C 1 en_CA.orig.aff en_CA.aff >en_CA.diff
125 :sys {force} diff -a -C 1 en_CA.orig.dic en_CA.dic >>en_CA.diff
126 :sys {force} diff -a -C 1 en_GB.orig.aff en_GB.aff >en_GB.diff
127 :sys {force} diff -a -C 1 en_GB.orig.dic en_GB.dic >>en_GB.diff
128 :sys {force} diff -a -C 1 en_NZ.orig.aff en_NZ.aff >en_NZ.diff
129 :sys {force} diff -a -C 1 en_NZ.orig.dic en_NZ.dic >>en_NZ.diff
130
131
132# Check for updated OpenOffice spell files. When there are changes the
133# ".new.aff" and ".new.dic" files are left behind for manual inspection.
134
135check: check-us check-au check-ca check-gb check-nz
136
137check-us:
138 :assertpkg unzip diff
139 :fetch en_US.zip
140 :mkdir tmp
141 :cd tmp
142 @try:
143 @import stat
144 :sys $(UNZIP) ../en_US.zip
145 :sys {force} diff ../en_US.orig.aff en_US.aff >d
146 @if os.stat('d')[stat.ST_SIZE] > 0:
147 :copy en_US.aff ../en_US.new.aff
148 :sys {force} diff ../en_US.orig.dic en_US.dic >d
149 @if os.stat('d')[stat.ST_SIZE] > 0:
150 :copy en_US.dic ../en_US.new.dic
151 @finally:
152 :cd ..
153 :delete {r}{f}{q} tmp
154 :delete en_US.zip
155
156check-au:
157 :assertpkg unzip diff
158 :fetch en_AU.zip
159 :mkdir tmp
160 :cd tmp
161 @try:
162 @import stat
163 :sys $(UNZIP) ../en_AU.zip
164 :sys {force} diff ../en_AU.orig.aff en_AU.aff >d
165 @if os.stat('d')[stat.ST_SIZE] > 0:
166 :copy en_AU.aff ../en_AU.new.aff
167 :sys {force} diff ../en_AU.orig.dic en_AU.dic >d
168 @if os.stat('d')[stat.ST_SIZE] > 0:
169 :copy en_AU.dic ../en_AU.new.dic
170 @finally:
171 :cd ..
172 :delete {r}{f}{q} tmp
173 :delete en_AU.zip
174
175check-ca:
176 :assertpkg unzip diff
177 :fetch en_CA.zip
178 :mkdir tmp
179 :cd tmp
180 @try:
181 @import stat
182 :sys $(UNZIP) ../en_CA.zip
183 :sys {force} diff ../en_CA.orig.aff en_CA.aff >d
184 @if os.stat('d')[stat.ST_SIZE] > 0:
185 :copy en_CA.aff ../en_CA.new.aff
186 :sys {force} diff ../en_CA.orig.dic en_CA.dic >d
187 @if os.stat('d')[stat.ST_SIZE] > 0:
188 :copy en_CA.dic ../en_CA.new.dic
189 @finally:
190 :cd ..
191 :delete {r}{f}{q} tmp
192 :delete en_CA.zip
193
194check-gb:
195 :assertpkg unzip diff
196 :fetch en_GB.zip
197 :mkdir tmp
198 :cd tmp
199 @try:
200 @import stat
201 :sys $(UNZIP) ../en_GB.zip
202 :sys {force} diff ../en_GB.orig.aff en_GB.aff >d
203 @if os.stat('d')[stat.ST_SIZE] > 0:
204 :copy en_GB.aff ../en_GB.new.aff
205 :sys {force} diff ../en_GB.orig.dic en_GB.dic >d
206 @if os.stat('d')[stat.ST_SIZE] > 0:
207 :copy en_GB.dic ../en_GB.new.dic
208 @finally:
209 :cd ..
210 :delete {r}{f}{q} tmp
211 :delete en_GB.zip
212
213check-nz:
214 :assertpkg unzip diff
215 :fetch en_NZ.zip
216 :mkdir tmp
217 :cd tmp
218 @try:
219 @import stat
220 :sys $(UNZIP) ../en_NZ.zip
221 :sys {force} diff ../en_NZ.orig.aff en_NZ.aff >d
222 @if os.stat('d')[stat.ST_SIZE] > 0:
223 :copy en_NZ.aff ../en_NZ.new.aff
224 :sys {force} diff ../en_NZ.orig.dic en_NZ.dic >d
225 @if os.stat('d')[stat.ST_SIZE] > 0:
226 :copy en_NZ.dic ../en_NZ.new.dic
227 @finally:
228 :cd ..
229 :delete {r}{f}{q} tmp
230 :delete en_NZ.zip
231
232# vim: set sts=4 sw=4 :