]>
Commit | Line | Data |
---|---|---|
f3c0d7a5 A |
1 | # Copyright (C) 2016 and later: Unicode, Inc. and others. |
2 | # License & terms of use: http://www.unicode.org/copyright.html | |
b75a7d8f | 3 | #********************************************************************** |
2ca993e8 | 4 | #* Copyright (C) 1999-2016, International Business Machines Corporation |
b75a7d8f A |
5 | #* and others. All Rights Reserved. |
6 | #********************************************************************** | |
7 | # nmake file for creating data files on win32 | |
8 | # invoke with | |
374ca955 | 9 | # nmake /f makedata.mak icumake=$(ProjectDir) |
b75a7d8f A |
10 | # |
11 | # 12/10/1999 weiv Created | |
12 | ||
13 | ############################################################################## | |
4388f060 | 14 | # Keep the following in sync with the version - see common/unicode/uvernum.h |
f3c0d7a5 | 15 | U_ICUDATA_NAME=icudt59 |
b75a7d8f | 16 | ############################################################################## |
f3c0d7a5 A |
17 | !IF "$(UWP)" == "UWP" |
18 | U_ICUDATA_NAME=icudt | |
19 | !ENDIF | |
b75a7d8f | 20 | U_ICUDATA_ENDIAN_SUFFIX=l |
6be67b06 | 21 | UNICODE_VERSION=10.0 |
73c04bcf | 22 | ICU_LIB_TARGET=$(DLL_OUTPUT)\$(U_ICUDATA_NAME).dll |
b75a7d8f A |
23 | |
24 | # ICUMAKE | |
25 | # Must be provided by whoever runs this makefile. | |
26 | # Is the directory containing this file (makedata.mak) | |
27 | # Is the directory into which most data is built (prior to packaging) | |
729e4ab9 | 28 | # Is icu\source\data\ |
b75a7d8f A |
29 | # |
30 | !IF "$(ICUMAKE)"=="" | |
31 | !ERROR Can't find ICUMAKE (ICU Data Make dir, should point to icu\source\data\ )! | |
32 | !ENDIF | |
33 | !MESSAGE ICU data make path is $(ICUMAKE) | |
34 | ||
73c04bcf | 35 | # Suffixes for data files |
729e4ab9 | 36 | .SUFFIXES : .nrm .icu .ucm .cnv .dll .dat .res .txt .c |
73c04bcf | 37 | |
b75a7d8f A |
38 | ICUOUT=$(ICUMAKE)\out |
39 | ||
374ca955 A |
40 | # the prefix "icudt21_" for use in filenames |
41 | ICUPKG=$(U_ICUDATA_NAME)$(U_ICUDATA_ENDIAN_SUFFIX) | |
42 | ||
b75a7d8f A |
43 | # need to nuke \\ for .NET... |
44 | ICUOUT=$(ICUOUT:\\=\) | |
45 | ||
73c04bcf A |
46 | ICUBLD=$(ICUOUT)\build |
47 | ICUBLD_PKG=$(ICUBLD)\$(ICUPKG) | |
374ca955 | 48 | ICUTMP=$(ICUOUT)\tmp |
b75a7d8f A |
49 | |
50 | # ICUP | |
51 | # The root of the ICU source directory tree | |
52 | # | |
53 | ICUP=$(ICUMAKE)\..\.. | |
54 | ICUP=$(ICUP:\source\data\..\..=) | |
55 | # In case the first one didn't do it, try this one. .NET would do the second one. | |
56 | ICUP=$(ICUP:\source\data\\..\..=) | |
57 | !MESSAGE ICU root path is $(ICUP) | |
58 | ||
59 | ||
60 | # ICUSRCDATA | |
61 | # The data directory in source | |
62 | # | |
63 | ICUSRCDATA=$(ICUP)\source\data | |
73c04bcf | 64 | ICUSRCDATA_RELATIVE_PATH=..\..\.. |
b75a7d8f A |
65 | |
66 | # ICUUCM | |
67 | # The directory that contains ucmcore.mk files along with *.ucm files | |
68 | # | |
69 | ICUUCM=mappings | |
70 | ||
71 | # ICULOC | |
72 | # The directory that contains resfiles.mk files along with *.txt locale data files | |
73 | # | |
74 | ICULOC=locales | |
75 | ||
374ca955 A |
76 | # ICUCOL |
77 | # The directory that contains colfiles.mk files along with *.txt collation data files | |
78 | # | |
79 | ICUCOL=coll | |
80 | ||
81 | # ICURBNF | |
82 | # The directory that contains rbnffiles.mk files along with *.txt RBNF data files | |
83 | # | |
84 | ICURBNF=rbnf | |
85 | ||
86 | # ICUTRNS | |
b75a7d8f A |
87 | # The directory that contains trfiles.mk files along with *.txt transliterator files |
88 | # | |
89 | ICUTRNS=translit | |
90 | ||
91 | # ICUBRK | |
92 | # The directory that contains resfiles.mk files along with *.txt break iterator files | |
93 | # | |
374ca955 | 94 | ICUBRK=brkitr |
b75a7d8f A |
95 | |
96 | # ICUUNIDATA | |
97 | # The directory that contains Unicode data files | |
98 | # | |
99 | ICUUNIDATA=$(ICUP)\source\data\unidata | |
100 | ||
101 | ||
102 | # ICUMISC | |
374ca955 | 103 | # The directory that contains miscfiles.mk along with files that are miscelleneous data |
b75a7d8f A |
104 | # |
105 | ICUMISC=$(ICUP)\source\data\misc | |
374ca955 | 106 | ICUMISC2=misc |
b75a7d8f | 107 | |
729e4ab9 A |
108 | # ICUSPREP |
109 | # The directory that contains sprepfiles.mk files along with *.txt stringprep files | |
110 | # | |
111 | ICUSPREP=sprep | |
112 | ||
b75a7d8f A |
113 | # |
114 | # ICUDATA | |
115 | # The source directory. Contains the source files for the common data to be built. | |
116 | # WARNING: NOT THE SAME AS ICU_DATA environment variable. Confusing. | |
117 | ICUDATA=$(ICUP)\source\data | |
118 | ||
119 | # | |
120 | # DLL_OUTPUT | |
121 | # Destination directory for the common data DLL file. | |
122 | # This is the same place that all of the other ICU DLLs go (the code-containing DLLs) | |
123 | # The lib file for the data DLL goes in $(DLL_OUTPUT)/../lib/ | |
124 | # | |
f3c0d7a5 A |
125 | !IF "$(CFG)" == "ARM\Release" || "$(CFG)" == "ARM\Debug" |
126 | DLL_OUTPUT=$(ICUP)\binARM$(UWP) | |
127 | !ELSE IF "$(CFG)" == "x64\Release" || "$(CFG)" == "x64\Debug" | |
128 | DLL_OUTPUT=$(ICUP)\bin64$(UWP) | |
129 | !ELSE IF "$(UWP)" == "UWP" | |
130 | DLL_OUTPUT=$(ICUP)\bin32$(UWP) | |
729e4ab9 | 131 | !ELSE |
f3c0d7a5 | 132 | DLL_OUTPUT=$(ICUP)\bin$(UWP) |
729e4ab9 | 133 | !ENDIF |
b75a7d8f A |
134 | |
135 | # | |
136 | # TESTDATA | |
137 | # The source directory for data needed for test programs. | |
138 | TESTDATA=$(ICUP)\source\test\testdata | |
139 | ||
140 | # | |
141 | # TESTDATAOUT | |
142 | # The destination directory for the built test data .dat file | |
73c04bcf | 143 | TESTDATAOUT=$(ICUP)\source\test\testdata\out |
b75a7d8f A |
144 | |
145 | # | |
146 | # TESTDATABLD | |
147 | # The build directory for test data intermidiate files | |
148 | # (Tests are NOT run from this makefile, | |
149 | # only the data is put in place.) | |
150 | TESTDATABLD=$(ICUP)\source\test\testdata\out\build | |
151 | ||
152 | # | |
153 | # ICUTOOLS | |
154 | # Directory under which all of the ICU data building tools live. | |
155 | # | |
156 | ICUTOOLS=$(ICUP)\source\tools | |
f3c0d7a5 A |
157 | !MESSAGE ICU tools path is $(ICUTOOLS) |
158 | ||
159 | # | |
160 | # TOOLS CFG PATH | |
161 | # ARM needs to use one of the other tools, so make sure to get an usable cfg path | |
162 | # Since tools, particularly pkggen, have architecture built-in, we made x64 on | |
163 | # Windows be machine-independent and use those tools. | |
164 | # | |
165 | CFGTOOLS=$(CFG) | |
166 | !IF "$(CFG)" == "ARM\Release" || "$(CFG)" == "ARM\Debug" | |
167 | CFGTOOLS=x64\Release | |
168 | !ENDIF | |
169 | !MESSAGE ICU tools CFG subpath is $(CFGTOOLS) | |
b75a7d8f | 170 | |
374ca955 | 171 | # The current ICU tools need to be in the path first. |
f3c0d7a5 A |
172 | # x86 uses x86, x64 and arm use x64 |
173 | !IF "$(CFG)" == "x86\Release" || "$(CFG)" == "x86\Debug" | |
374ca955 | 174 | PATH = $(ICUP)\bin;$(PATH) |
729e4ab9 | 175 | ICUPBIN=$(ICUP)\bin |
f3c0d7a5 A |
176 | !ELSE |
177 | PATH = $(ICUP)\bin64;$(PATH) | |
178 | ICUPBIN=$(ICUP)\bin64 | |
729e4ab9 A |
179 | !ENDIF |
180 | ||
b75a7d8f | 181 | |
374ca955 A |
182 | # This variable can be overridden to "-m static" by the project settings, |
183 | # if you want a static data library. | |
184 | !IF "$(ICU_PACKAGE_MODE)"=="" | |
185 | ICU_PACKAGE_MODE=-m dll | |
b75a7d8f A |
186 | !ENDIF |
187 | ||
73c04bcf A |
188 | # If this archive exists, build from that |
189 | # instead of building everything from scratch. | |
190 | ICUDATA_SOURCE_ARCHIVE=$(ICUSRCDATA)\in\$(ICUPKG).dat | |
191 | !IF !EXISTS("$(ICUDATA_SOURCE_ARCHIVE)") | |
192 | # Does a big endian version exist either? | |
193 | ICUDATA_ARCHIVE=$(ICUSRCDATA)\in\$(U_ICUDATA_NAME)b.dat | |
194 | !IF EXISTS("$(ICUDATA_ARCHIVE)") | |
195 | ICUDATA_SOURCE_ARCHIVE=$(ICUTMP)\$(ICUPKG).dat | |
196 | !ELSE | |
197 | # Nothing was usable for input | |
198 | !UNDEF ICUDATA_SOURCE_ARCHIVE | |
199 | !ENDIF | |
200 | !ENDIF | |
b75a7d8f | 201 | |
73c04bcf A |
202 | !IFDEF ICUDATA_SOURCE_ARCHIVE |
203 | !MESSAGE ICU data source archive is $(ICUDATA_SOURCE_ARCHIVE) | |
204 | !ELSE | |
b75a7d8f A |
205 | # We're including a list of .ucm files. |
206 | # There are several lists, they are all optional. | |
207 | ||
208 | # Always build the mapping files for the EBCDIC fallback codepages | |
209 | # They are necessary on EBCDIC machines, and | |
210 | # the following logic is much easier if UCM_SOURCE is never empty. | |
211 | # (They are small.) | |
212 | UCM_SOURCE=ibm-37_P100-1995.ucm ibm-1047_P100-1995.ucm | |
213 | ||
214 | !IF EXISTS("$(ICUSRCDATA)\$(ICUUCM)\ucmcore.mk") | |
215 | !INCLUDE "$(ICUSRCDATA)\$(ICUUCM)\ucmcore.mk" | |
216 | UCM_SOURCE=$(UCM_SOURCE) $(UCM_SOURCE_CORE) | |
217 | !ELSE | |
218 | !MESSAGE Warning: cannot find "ucmcore.mk". Not building core MIME/Unix/Windows converter files. | |
219 | !ENDIF | |
220 | ||
221 | !IF EXISTS("$(ICUSRCDATA)\$(ICUUCM)\ucmfiles.mk") | |
222 | !INCLUDE "$(ICUSRCDATA)\$(ICUUCM)\ucmfiles.mk" | |
223 | UCM_SOURCE=$(UCM_SOURCE) $(UCM_SOURCE_FILES) | |
224 | !ELSE | |
225 | !MESSAGE Warning: cannot find "ucmfiles.mk". Not building many converter files. | |
226 | !ENDIF | |
227 | ||
228 | !IF EXISTS("$(ICUSRCDATA)\$(ICUUCM)\ucmebcdic.mk") | |
229 | !INCLUDE "$(ICUSRCDATA)\$(ICUUCM)\ucmebcdic.mk" | |
230 | UCM_SOURCE=$(UCM_SOURCE) $(UCM_SOURCE_EBCDIC) | |
729e4ab9 A |
231 | !IFDEF UCM_SOURCE_EBCDIC_IGNORE_SISO |
232 | BUILD_SPECIAL_CNV_FILES=YES | |
233 | UCM_SOURCE_SPECIAL=$(UCM_SOURCE_EBCDIC_IGNORE_SISO) | |
234 | !ELSE | |
235 | !UNDEF BUILD_SPECIAL_CNV_FILES | |
236 | !ENDIF | |
b75a7d8f A |
237 | !ELSE |
238 | !MESSAGE Warning: cannot find "ucmebcdic.mk". Not building EBCDIC converter files. | |
239 | !ENDIF | |
240 | ||
241 | !IF EXISTS("$(ICUSRCDATA)\$(ICUUCM)\ucmlocal.mk") | |
242 | !INCLUDE "$(ICUSRCDATA)\$(ICUUCM)\ucmlocal.mk" | |
243 | UCM_SOURCE=$(UCM_SOURCE) $(UCM_SOURCE_LOCAL) | |
729e4ab9 A |
244 | !IFDEF UCM_SOURCE_EBCDIC_IGNORE_SISO_LOCAL |
245 | UCM_SOURCE_SPECIAL=$(UCM_SOURCE_SPECIAL) $(UCM_SOURCE_EBCDIC_IGNORE_SISO_LOCAL) | |
246 | BUILD_SPECIAL_CNV_FILES=YES | |
247 | !ENDIF | |
b75a7d8f A |
248 | !ELSE |
249 | !MESSAGE Information: cannot find "ucmlocal.mk". Not building user-additional converter files. | |
250 | !ENDIF | |
251 | ||
252 | CNV_FILES=$(UCM_SOURCE:.ucm=.cnv) | |
729e4ab9 A |
253 | !IFDEF BUILD_SPECIAL_CNV_FILES |
254 | CNV_FILES_SPECIAL=$(UCM_SOURCE_SPECIAL:.ucm=.cnv) | |
255 | !ENDIF | |
b75a7d8f | 256 | |
374ca955 A |
257 | !IF EXISTS("$(ICUSRCDATA)\$(ICUBRK)\brkfiles.mk") |
258 | !INCLUDE "$(ICUSRCDATA)\$(ICUBRK)\brkfiles.mk" | |
259 | !IF EXISTS("$(ICUSRCDATA)\$(ICUBRK)\brklocal.mk") | |
260 | !INCLUDE "$(ICUSRCDATA)\$(ICUBRK)\brklocal.mk" | |
261 | BRK_SOURCE=$(BRK_SOURCE) $(BRK_SOURCE_LOCAL) | |
51004dcb | 262 | BRK_DICT_SOURCE=$(BRK_DICT_SOURCE) $(BRK_DICT_SOURCE_LOCAL) |
73c04bcf | 263 | BRK_RES_SOURCE=$(BRK_RES_SOURCE) $(BRK_RES_SOURCE_LOCAL) |
374ca955 A |
264 | !ELSE |
265 | !MESSAGE Information: cannot find "brklocal.mk". Not building user-additional break iterator files. | |
266 | !ENDIF | |
267 | !ELSE | |
268 | !MESSAGE Warning: cannot find "brkfiles.mk" | |
269 | !ENDIF | |
374ca955 A |
270 | |
271 | # | |
272 | # Break iterator data files. | |
273 | # | |
73c04bcf A |
274 | BRK_FILES=$(ICUBRK)\$(BRK_SOURCE:.txt =.brk brkitr\) |
275 | BRK_FILES=$(BRK_FILES:.txt=.brk) | |
276 | BRK_FILES=$(BRK_FILES:brkitr\ =brkitr\) | |
277 | ||
51004dcb A |
278 | !IFDEF BRK_DICT_SOURCE |
279 | BRK_DICT_FILES = $(ICUBRK)\$(BRK_DICT_SOURCE:.txt =.dict brkitr\) | |
280 | BRK_DICT_FILES = $(BRK_DICT_FILES:.txt=.dict) | |
281 | BRK_DICT_FILES = $(BRK_DICT_FILES:brkitr\ =brkitr\) | |
73c04bcf A |
282 | !ENDIF |
283 | ||
284 | !IFDEF BRK_RES_SOURCE | |
285 | BRK_RES_FILES = $(BRK_RES_SOURCE:.txt =.res brkitr\) | |
286 | BRK_RES_FILES = $(BRK_RES_FILES:.txt=.res) | |
287 | BRK_RES_FILES = $(ICUBRK)\root.res $(ICUBRK)\$(BRK_RES_FILES:brkitr\ =) | |
288 | ALL_RES = $(ALL_RES) $(ICUBRK)\res_index.res | |
289 | !ENDIF | |
374ca955 | 290 | |
b75a7d8f A |
291 | # Read list of locale resource bundle files |
292 | !IF EXISTS("$(ICUSRCDATA)\$(ICULOC)\resfiles.mk") | |
293 | !INCLUDE "$(ICUSRCDATA)\$(ICULOC)\resfiles.mk" | |
294 | !IF EXISTS("$(ICUSRCDATA)\$(ICULOC)\reslocal.mk") | |
295 | !INCLUDE "$(ICUSRCDATA)\$(ICULOC)\reslocal.mk" | |
296 | GENRB_SOURCE=$(GENRB_SOURCE) $(GENRB_SOURCE_LOCAL) | |
297 | !ELSE | |
374ca955 | 298 | !MESSAGE Information: cannot find "reslocal.mk". Not building user-additional resource bundle files. |
b75a7d8f A |
299 | !ENDIF |
300 | !ELSE | |
301 | !MESSAGE Warning: cannot find "resfiles.mk" | |
302 | !ENDIF | |
303 | ||
73c04bcf | 304 | !IFDEF GENRB_SOURCE |
729e4ab9 | 305 | RB_FILES = root.res pool.res $(GENRB_ALIAS_SOURCE:.txt=.res) $(GENRB_ALIAS_SOURCE_LOCAL:.txt=.res) $(GENRB_SOURCE:.txt=.res) |
73c04bcf A |
306 | ALL_RES = $(ALL_RES) res_index.res |
307 | !ENDIF | |
308 | ||
b75a7d8f | 309 | |
729e4ab9 A |
310 | # Read the list of currency display name resource bundle files |
311 | !IF EXISTS("$(ICUSRCDATA)\curr\resfiles.mk") | |
312 | !INCLUDE "$(ICUSRCDATA)\curr\resfiles.mk" | |
313 | !IF EXISTS("$(ICUSRCDATA)\curr\reslocal.mk") | |
314 | !INCLUDE "$(ICUSRCDATA)\curr\reslocal.mk" | |
315 | CURR_SOURCE=$(CURR_SOURCE) $(CURR_SOURCE_LOCAL) | |
316 | !ELSE | |
317 | !MESSAGE Information: cannot find "curr\reslocal.mk". Not building user-additional resource bundle files. | |
318 | !ENDIF | |
319 | !ELSE | |
320 | !MESSAGE Warning: cannot find "curr\resfiles.mk" | |
321 | !ENDIF | |
322 | ||
323 | !IFDEF CURR_SOURCE | |
324 | CURR_FILES = curr\root.txt supplementalData.txt $(CURR_ALIAS_SOURCE) $(CURR_SOURCE) | |
325 | CURR_RES_FILES = $(CURR_FILES:.txt =.res curr\) | |
326 | CURR_RES_FILES = $(CURR_RES_FILES:.txt=.res) | |
327 | CURR_RES_FILES = curr\pool.res $(CURR_RES_FILES:curr\ =curr\) | |
328 | ALL_RES = $(ALL_RES) curr\res_index.res | |
329 | !ENDIF | |
330 | ||
331 | # Read the list of language/script display name resource bundle files | |
332 | !IF EXISTS("$(ICUSRCDATA)\lang\resfiles.mk") | |
333 | !INCLUDE "$(ICUSRCDATA)\lang\resfiles.mk" | |
334 | !IF EXISTS("$(ICUSRCDATA)\lang\reslocal.mk") | |
335 | !INCLUDE "$(ICUSRCDATA)\lang\reslocal.mk" | |
336 | LANG_SOURCE=$(LANG_SOURCE) $(LANG_SOURCE_LOCAL) | |
337 | !ELSE | |
338 | !MESSAGE Information: cannot find "lang\reslocal.mk". Not building user-additional resource bundle files. | |
339 | !ENDIF | |
340 | !ELSE | |
341 | !MESSAGE Warning: cannot find "lang\resfiles.mk" | |
342 | !ENDIF | |
343 | ||
344 | !IFDEF LANG_SOURCE | |
345 | LANG_FILES = lang\root.txt $(LANG_ALIAS_SOURCE) $(LANG_SOURCE) | |
346 | LANG_RES_FILES = $(LANG_FILES:.txt =.res lang\) | |
347 | LANG_RES_FILES = $(LANG_RES_FILES:.txt=.res) | |
348 | LANG_RES_FILES = lang\pool.res $(LANG_RES_FILES:lang\ =lang\) | |
349 | ALL_RES = $(ALL_RES) lang\res_index.res | |
350 | !ENDIF | |
351 | ||
352 | # Read the list of region display name resource bundle files | |
353 | !IF EXISTS("$(ICUSRCDATA)\region\resfiles.mk") | |
354 | !INCLUDE "$(ICUSRCDATA)\region\resfiles.mk" | |
355 | !IF EXISTS("$(ICUSRCDATA)\region\reslocal.mk") | |
356 | !INCLUDE "$(ICUSRCDATA)\region\reslocal.mk" | |
357 | REGION_SOURCE=$(REGION_SOURCE) $(REGION_SOURCE_LOCAL) | |
358 | !ELSE | |
359 | !MESSAGE Information: cannot find "region\reslocal.mk". Not building user-additional resource bundle files. | |
360 | !ENDIF | |
361 | !ELSE | |
362 | !MESSAGE Warning: cannot find "region\resfiles.mk" | |
363 | !ENDIF | |
364 | ||
365 | !IFDEF REGION_SOURCE | |
366 | REGION_FILES = region\root.txt $(REGION_ALIAS_SOURCE) $(REGION_SOURCE) | |
367 | REGION_RES_FILES = $(REGION_FILES:.txt =.res region\) | |
368 | REGION_RES_FILES = $(REGION_RES_FILES:.txt=.res) | |
369 | REGION_RES_FILES = region\pool.res $(REGION_RES_FILES:region\ =region\) | |
370 | ALL_RES = $(ALL_RES) region\res_index.res | |
371 | !ENDIF | |
372 | ||
373 | # Read the list of time zone display name resource bundle files | |
374 | !IF EXISTS("$(ICUSRCDATA)\zone\resfiles.mk") | |
375 | !INCLUDE "$(ICUSRCDATA)\zone\resfiles.mk" | |
376 | !IF EXISTS("$(ICUSRCDATA)\zone\reslocal.mk") | |
377 | !INCLUDE "$(ICUSRCDATA)\zone\reslocal.mk" | |
378 | ZONE_SOURCE=$(ZONE_SOURCE) $(ZONE_SOURCE_LOCAL) | |
379 | !ELSE | |
380 | !MESSAGE Information: cannot find "zone\reslocal.mk". Not building user-additional resource bundle files. | |
381 | !ENDIF | |
b331163b | 382 | ZONE_SOURCE=$(ZONE_SOURCE) tzdbNames.txt |
729e4ab9 A |
383 | !ELSE |
384 | !MESSAGE Warning: cannot find "zone\resfiles.mk" | |
385 | !ENDIF | |
386 | ||
387 | !IFDEF ZONE_SOURCE | |
388 | ZONE_FILES = zone\root.txt $(ZONE_ALIAS_SOURCE) $(ZONE_SOURCE) | |
389 | ZONE_RES_FILES = $(ZONE_FILES:.txt =.res zone\) | |
390 | ZONE_RES_FILES = $(ZONE_RES_FILES:.txt=.res) | |
391 | ZONE_RES_FILES = zone\pool.res $(ZONE_RES_FILES:zone\ =zone\) | |
392 | ALL_RES = $(ALL_RES) zone\res_index.res | |
393 | !ENDIF | |
394 | ||
b331163b A |
395 | # Read the list of units display name resource bundle files |
396 | !IF EXISTS("$(ICUSRCDATA)\unit\resfiles.mk") | |
397 | !INCLUDE "$(ICUSRCDATA)\unit\resfiles.mk" | |
398 | !IF EXISTS("$(ICUSRCDATA)\unit\reslocal.mk") | |
399 | !INCLUDE "$(ICUSRCDATA)\unit\reslocal.mk" | |
400 | UNIT_SOURCE=$(UNIT_SOURCE) $(UNIT_SOURCE_LOCAL) | |
401 | !ELSE | |
402 | !MESSAGE Information: cannot find "unit\reslocal.mk". Not building user-additional resource bundle files. | |
403 | !ENDIF | |
404 | !ELSE | |
405 | !MESSAGE Warning: cannot find "unit\resfiles.mk" | |
406 | !ENDIF | |
407 | ||
408 | !IFDEF UNIT_SOURCE | |
409 | UNIT_FILES = unit\root.txt $(UNIT_ALIAS_SOURCE) $(UNIT_SOURCE) | |
410 | UNIT_RES_FILES = $(UNIT_FILES:.txt =.res unit\) | |
411 | UNIT_RES_FILES = $(UNIT_RES_FILES:.txt=.res) | |
412 | UNIT_RES_FILES = unit\pool.res $(UNIT_RES_FILES:unit\ =unit\) | |
413 | ALL_RES = $(ALL_RES) unit\res_index.res | |
414 | !ENDIF | |
415 | ||
729e4ab9 | 416 | # Read the list of collation resource bundle files |
374ca955 A |
417 | !IF EXISTS("$(ICUSRCDATA)\$(ICUCOL)\colfiles.mk") |
418 | !INCLUDE "$(ICUSRCDATA)\$(ICUCOL)\colfiles.mk" | |
419 | !IF EXISTS("$(ICUSRCDATA)\$(ICUCOL)\collocal.mk") | |
420 | !INCLUDE "$(ICUSRCDATA)\$(ICUCOL)\collocal.mk" | |
421 | COLLATION_SOURCE=$(COLLATION_SOURCE) $(COLLATION_SOURCE_LOCAL) | |
422 | !ELSE | |
423 | !MESSAGE Information: cannot find "collocal.mk". Not building user-additional resource bundle files. | |
424 | !ENDIF | |
425 | !ELSE | |
426 | !MESSAGE Warning: cannot find "colfiles.mk" | |
427 | !ENDIF | |
428 | ||
73c04bcf | 429 | !IFDEF COLLATION_SOURCE |
374ca955 A |
430 | COL_FILES = $(ICUCOL)\root.txt $(COLLATION_ALIAS_SOURCE) $(COLLATION_SOURCE) |
431 | COL_COL_FILES = $(COL_FILES:.txt =.res coll\) | |
432 | COL_COL_FILES = $(COL_COL_FILES:.txt=.res) | |
433 | COL_COL_FILES = $(COL_COL_FILES:coll\ =) | |
73c04bcf A |
434 | ALL_RES = $(ALL_RES) $(ICUCOL)\res_index.res |
435 | !ENDIF | |
374ca955 | 436 | |
729e4ab9 | 437 | # Read the list of RBNF resource bundle files |
374ca955 A |
438 | !IF EXISTS("$(ICUSRCDATA)\$(ICURBNF)\rbnffiles.mk") |
439 | !INCLUDE "$(ICUSRCDATA)\$(ICURBNF)\rbnffiles.mk" | |
440 | !IF EXISTS("$(ICUSRCDATA)\$(ICURBNF)\rbnflocal.mk") | |
441 | !INCLUDE "$(ICUSRCDATA)\$(ICURBNF)\rbnflocal.mk" | |
442 | RBNF_SOURCE=$(RBNF_SOURCE) $(RBNF_SOURCE_LOCAL) | |
443 | !ELSE | |
444 | !MESSAGE Information: cannot find "rbnflocal.mk". Not building user-additional resource bundle files. | |
445 | !ENDIF | |
446 | !ELSE | |
447 | !MESSAGE Warning: cannot find "rbnffiles.mk" | |
448 | !ENDIF | |
449 | ||
73c04bcf | 450 | !IFDEF RBNF_SOURCE |
374ca955 A |
451 | RBNF_FILES = $(ICURBNF)\root.txt $(RBNF_ALIAS_SOURCE) $(RBNF_SOURCE) |
452 | RBNF_RES_FILES = $(RBNF_FILES:.txt =.res rbnf\) | |
453 | RBNF_RES_FILES = $(RBNF_RES_FILES:.txt=.res) | |
454 | RBNF_RES_FILES = $(RBNF_RES_FILES:rbnf\ =rbnf\) | |
73c04bcf A |
455 | ALL_RES = $(ALL_RES) $(ICURBNF)\res_index.res |
456 | !ENDIF | |
374ca955 | 457 | |
729e4ab9 | 458 | # Read the list of transliterator resource bundle files |
b75a7d8f A |
459 | !IF EXISTS("$(ICUSRCDATA)\$(ICUTRNS)\trnsfiles.mk") |
460 | !INCLUDE "$(ICUSRCDATA)\$(ICUTRNS)\trnsfiles.mk" | |
461 | !IF EXISTS("$(ICUSRCDATA)\$(ICUTRNS)\trnslocal.mk") | |
462 | !INCLUDE "$(ICUSRCDATA)\$(ICUTRNS)\trnslocal.mk" | |
374ca955 | 463 | TRANSLIT_SOURCE=$(TRANSLIT_SOURCE) $(TRANSLIT_SOURCE_LOCAL) |
b75a7d8f A |
464 | !ELSE |
465 | !MESSAGE Information: cannot find "trnslocal.mk". Not building user-additional transliterator files. | |
466 | !ENDIF | |
467 | !ELSE | |
468 | !MESSAGE Warning: cannot find "trnsfiles.mk" | |
469 | !ENDIF | |
470 | ||
73c04bcf A |
471 | !IFDEF TRANSLIT_SOURCE |
472 | TRANSLIT_FILES = $(ICUTRNS)\$(TRANSLIT_ALIAS_SOURCE) $(TRANSLIT_SOURCE) | |
374ca955 A |
473 | TRANSLIT_RES_FILES = $(TRANSLIT_FILES:.txt =.res translit\) |
474 | TRANSLIT_RES_FILES = $(TRANSLIT_RES_FILES:.txt=.res) | |
475 | TRANSLIT_RES_FILES = $(TRANSLIT_RES_FILES:translit\ =translit\) | |
73c04bcf A |
476 | #ALL_RES = $(ALL_RES) $(ICUTRNS)\res_index.res |
477 | !ENDIF | |
374ca955 | 478 | |
729e4ab9 | 479 | # Read the list of miscellaneous resource bundle files |
374ca955 A |
480 | !IF EXISTS("$(ICUSRCDATA)\$(ICUMISC2)\miscfiles.mk") |
481 | !INCLUDE "$(ICUSRCDATA)\$(ICUMISC2)\miscfiles.mk" | |
482 | !IF EXISTS("$(ICUSRCDATA)\$(ICUMISC2)\misclocal.mk") | |
483 | !INCLUDE "$(ICUSRCDATA)\$(ICUMISC2)\misclocal.mk" | |
484 | MISC_SOURCE=$(MISC_SOURCE) $(MISC_SOURCE_LOCAL) | |
485 | !ELSE | |
486 | !MESSAGE Information: cannot find "misclocal.mk". Not building user-additional miscellaenous files. | |
487 | !ENDIF | |
488 | !ELSE | |
489 | !MESSAGE Warning: cannot find "miscfiles.mk" | |
490 | !ENDIF | |
491 | ||
492 | MISC_FILES = $(MISC_SOURCE:.txt=.res) | |
b75a7d8f | 493 | |
374ca955 | 494 | # don't include COL_FILES |
73c04bcf A |
495 | ALL_RES = $(ALL_RES) $(RB_FILES) $(MISC_FILES) |
496 | !ENDIF | |
497 | ||
729e4ab9 A |
498 | # Read the list of stringprep profile files |
499 | !IF EXISTS("$(ICUSRCDATA)\$(ICUSPREP)\sprepfiles.mk") | |
500 | !INCLUDE "$(ICUSRCDATA)\$(ICUSPREP)\sprepfiles.mk" | |
501 | !IF EXISTS("$(ICUSRCDATA)\$(ICUSPREP)\spreplocal.mk") | |
502 | !INCLUDE "$(ICUSRCDATA)\$(ICUSPREP)\spreplocal.mk" | |
503 | SPREP_SOURCE=$(SPREP_SOURCE) $(SPREP_SOURCE_LOCAL) | |
504 | !ELSE | |
505 | !MESSAGE Information: cannot find "spreplocal.mk". Not building user-additional stringprep files. | |
506 | !ENDIF | |
507 | !ELSE | |
508 | !MESSAGE Warning: cannot find "sprepfiles.mk" | |
509 | !ENDIF | |
510 | ||
511 | SPREP_FILES = $(SPREP_SOURCE:.txt=.spp) | |
512 | ||
73c04bcf | 513 | # Common defines for both ways of building ICU's data library. |
729e4ab9 A |
514 | COMMON_ICUDATA_DEPENDENCIES="$(ICUPBIN)\pkgdata.exe" "$(ICUTMP)\icudata.res" "$(ICUP)\source\stubdata\stubdatabuilt.txt" |
515 | COMMON_ICUDATA_ARGUMENTS=-f -e $(U_ICUDATA_NAME) -v $(ICU_PACKAGE_MODE) -c -p $(ICUPKG) -T "$(ICUTMP)" -L $(U_ICUDATA_NAME) -d "$(ICUBLD_PKG)" -s . | |
f3c0d7a5 A |
516 | !IF "$(UWP)" == "UWP" |
517 | COMMON_ICUDATA_ARGUMENTS=$(COMMON_ICUDATA_ARGUMENTS) -u | |
518 | !IF "$(CFG)" == "ARM\Release" || "$(CFG)" == "ARM\Debug" | |
519 | COMMON_ICUDATA_ARGUMENTS=$(COMMON_ICUDATA_ARGUMENTS) -a | |
520 | !ENDIF | |
521 | !ENDIF | |
b75a7d8f A |
522 | |
523 | ############################################################################# | |
524 | # | |
374ca955 | 525 | # ALL |
b75a7d8f | 526 | # This target builds all the data files. The world starts here. |
73c04bcf | 527 | # Note: we really want the common data dll to go to $(DLL_OUTPUT), not $(ICUBLD_PKG). But specifying |
b75a7d8f | 528 | # that here seems to cause confusion with the building of the stub library of the same name. |
73c04bcf | 529 | # Building the common dll in $(ICUBLD_PKG) unconditionally copies it to $(DLL_OUTPUT) too. |
b75a7d8f A |
530 | # |
531 | ############################################################################# | |
73c04bcf | 532 | ALL : GODATA "$(ICU_LIB_TARGET)" "$(TESTDATAOUT)\testdata.dat" |
b75a7d8f A |
533 | @echo All targets are up to date |
534 | ||
f3c0d7a5 A |
535 | !IF "$(UWP)" == "UWP" |
536 | @if not exist "$(ICUMAKE)\..\..\commondata\" mkdir "$(ICUMAKE)\..\..\commondata\" | |
537 | copy "$(ICUOUT)\$(U_ICUDATA_NAME)$(U_ICUDATA_ENDIAN_SUFFIX).dat" "$(ICUMAKE)\..\..\commondata\" | |
538 | !ENDIF | |
539 | ||
729e4ab9 | 540 | # The core Unicode properties files (uprops.icu, ucase.icu, ubidi.icu) |
73c04bcf A |
541 | # are hardcoded in the common DLL and therefore not included in the data package any more. |
542 | # They are not built by default but need to be built for ICU4J data and for getting the .c source files | |
543 | # when updating the Unicode data. | |
544 | # Changed in makedata.mak revision 1.117. See Jitterbug 4497. | |
4388f060 | 545 | # 2010-dec Removed pnames.icu. |
46f4442e | 546 | # Command line: |
729e4ab9 | 547 | # C:\svn\icuproj\icu\trunk\source\data>nmake -f makedata.mak ICUMAKE=C:\svn\icuproj\icu\trunk\source\data\ CFG=x86\Debug uni-core-data |
b331163b | 548 | uni-core-data: GODATA "$(ICUBLD_PKG)\pnames.icu" "$(ICUBLD_PKG)\uprops.icu" "$(ICUBLD_PKG)\ucase.icu" "$(ICUBLD_PKG)\ubidi.icu" "$(ICUBLD_PKG)\nfc.nrm" |
73c04bcf | 549 | @echo Unicode .icu files built to "$(ICUBLD_PKG)" |
729e4ab9 A |
550 | |
551 | # Build the ICU4J icudata.jar and testdata.jar. | |
552 | # see icu4j-readme.txt | |
553 | ||
4388f060 A |
554 | ICU4J_TZDATA="$(ICUOUT)\icu4j\icutzdata.jar" |
555 | ICU4J_DATA_DIRNAME=com\ibm\icu\impl\data\$(U_ICUDATA_NAME)b | |
556 | ICU4J_TZDATA_PATHS=$(ICU4J_DATA_DIRNAME)\zoneinfo64.res $(ICU4J_DATA_DIRNAME)\metaZones.res $(ICU4J_DATA_DIRNAME)\timezoneTypes.res $(ICU4J_DATA_DIRNAME)\windowsZones.res | |
557 | ||
558 | generate-data: GODATA "$(ICUOUT)\$(ICUPKG).dat" uni-core-data | |
559 | if not exist "$(ICUOUT)\icu4j\$(ICU4J_DATA_DIRNAME)" mkdir "$(ICUOUT)\icu4j\$(ICU4J_DATA_DIRNAME)" | |
560 | if not exist "$(ICUOUT)\icu4j\tzdata\$(ICU4J_DATA_DIRNAME)" mkdir "$(ICUOUT)\icu4j\tzdata\$(ICU4J_DATA_DIRNAME)" | |
b331163b | 561 | echo pnames.icu ubidi.icu ucase.icu uprops.icu nfc.nrm > "$(ICUOUT)\icu4j\add.txt" |
4388f060 A |
562 | "$(ICUPBIN)\icupkg" "$(ICUOUT)\$(ICUPKG).dat" "$(ICUOUT)\icu4j\$(U_ICUDATA_NAME)b.dat" -a "$(ICUOUT)\icu4j\add.txt" -s "$(ICUBLD_PKG)" -x * -tb -d "$(ICUOUT)\icu4j\$(ICU4J_DATA_DIRNAME)" |
563 | @for %f in ($(ICU4J_TZDATA_PATHS)) do @move "$(ICUOUT)\icu4j\%f" "$(ICUOUT)\icu4j\tzdata\$(ICU4J_DATA_DIRNAME)" | |
564 | ||
565 | "$(ICUOUT)\icu4j\icutzdata.jar": GODATA generate-data | |
566 | "$(JAR)" cf "$(ICUOUT)\icu4j\icutzdata.jar" -C "$(ICUOUT)\icu4j\tzdata" "$(ICU4J_DATA_DIRNAME)" | |
567 | ||
729e4ab9 A |
568 | # Build icudata.jar: |
569 | # - add the uni-core-data to the ICU package | |
570 | # - swap the ICU data | |
571 | # - extract all data items | |
572 | # - package them into the .jar file | |
4388f060 A |
573 | "$(ICUOUT)\icu4j\icudata.jar": GODATA generate-data |
574 | "$(JAR)" cf "$(ICUOUT)\icu4j\icudata.jar" -C "$(ICUOUT)\icu4j" "$(ICU4J_DATA_DIRNAME)" | |
729e4ab9 A |
575 | |
576 | # Build testdata.jar: | |
577 | # - swap the test data | |
578 | # - extract all data items | |
579 | # - package them into the .jar file | |
580 | "$(ICUOUT)\icu4j\testdata.jar": GODATA "$(TESTDATAOUT)\testdata.dat" | |
581 | if not exist "$(ICUOUT)\icu4j\com\ibm\icu\dev\data\testdata" mkdir "$(ICUOUT)\icu4j\com\ibm\icu\dev\data\testdata" | |
582 | "$(ICUPBIN)\icupkg" "$(TESTDATAOUT)\testdata.dat" -r test.icu -x * -tb -d "$(ICUOUT)\icu4j\com\ibm\icu\dev\data\testdata" | |
583 | "$(JAR)" cf "$(ICUOUT)\icu4j\testdata.jar" -C "$(ICUOUT)\icu4j" com\ibm\icu\dev\data\testdata | |
584 | ||
585 | ## Compare to: source\data\Makefile.in and source\test\testdata\Makefile.in | |
586 | ||
587 | DEBUGUTILITIESDATA_DIR=main\tests\core\src\com\ibm\icu\dev\test\util | |
588 | DEBUGUTILITIESDATA_SRC=DebugUtilitiesData.java | |
589 | ||
590 | # Build DebugUtilitiesData.java | |
f3c0d7a5 | 591 | "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" : {"$(ICUTOOLS)\gentest\$(CFGTOOLS)"}gentest.exe |
729e4ab9 | 592 | if not exist "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)" mkdir "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)" |
f3c0d7a5 | 593 | "$(ICUTOOLS)\gentest\$(CFGTOOLS)\gentest" -j -d"$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)" |
729e4ab9 A |
594 | |
595 | ICU4J_DATA="$(ICUOUT)\icu4j\icudata.jar" "$(ICUOUT)\icu4j\testdata.jar" "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" | |
596 | ||
4388f060 | 597 | icu4j-data: GODATA $(ICU4J_DATA) $(ICU4J_TZDATA) |
729e4ab9 A |
598 | |
599 | !IFDEF ICU4J_ROOT | |
600 | ||
601 | "$(ICU4J_ROOT)\main\shared\data\icudata.jar": "$(ICUOUT)\icu4j\icudata.jar" | |
602 | if not exist "$(ICU4J_ROOT)\main\shared\data" mkdir "$(ICU4J_ROOT)\main\shared\data" | |
603 | copy "$(ICUOUT)\icu4j\icudata.jar" "$(ICU4J_ROOT)\main\shared\data" | |
604 | ||
4388f060 A |
605 | "$(ICU4J_ROOT)\main\shared\data\icutzdata.jar": "$(ICUOUT)\icu4j\icutzdata.jar" |
606 | if not exist "$(ICU4J_ROOT)\main\shared\data" mkdir "$(ICU4J_ROOT)\main\shared\data" | |
607 | copy "$(ICUOUT)\icu4j\icutzdata.jar" "$(ICU4J_ROOT)\main\shared\data" | |
608 | ||
729e4ab9 A |
609 | "$(ICU4J_ROOT)\main\shared\data\testdata.jar": "$(ICUOUT)\icu4j\testdata.jar" |
610 | if not exist "$(ICU4J_ROOT)\main\shared\data" mkdir "$(ICU4J_ROOT)\main\shared\data" | |
611 | copy "$(ICUOUT)\icu4j\testdata.jar" "$(ICU4J_ROOT)\main\shared\data" | |
612 | ||
613 | # "$(DEBUGUTILTIESDATA_OUT)" | |
614 | ||
615 | "$(ICU4J_ROOT)\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)": "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" | |
616 | if not exist "$(ICU4J_ROOT)\$(DEBUGUTILITIESDATA_DIR)" mkdir "$(ICU4J_ROOT)\$(DEBUGUTILITIESDATA_DIR)" | |
617 | copy "$(ICUOUT)\icu4j\src\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" "$(ICU4J_ROOT)\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" | |
618 | ||
4388f060 | 619 | ICU4J_DATA_INSTALLED="$(ICU4J_ROOT)\main\shared\data\icudata.jar" "$(ICU4J_ROOT)\main\shared\data\icutzdata.jar" "$(ICU4J_ROOT)\main\shared\data\testdata.jar" "$(ICU4J_ROOT)\$(DEBUGUTILITIESDATA_DIR)\$(DEBUGUTILITIESDATA_SRC)" |
729e4ab9 | 620 | |
4388f060 | 621 | icu4j-data-install : GODATA $(ICU4J_DATA) $(ICU4J_TZDATA) $(ICU4J_DATA_INSTALLED) |
729e4ab9 A |
622 | @echo ICU4J data output to "$(ICU4J_ROOT)" |
623 | ||
624 | !ELSE | |
625 | ||
626 | icu4j-data-install : | |
627 | @echo ERROR ICU4J_ROOT not set | |
628 | @exit 1 | |
629 | ||
630 | !ENDIF | |
631 | ||
632 | ||
73c04bcf | 633 | |
b75a7d8f | 634 | # |
374ca955 | 635 | # testdata - nmake will invoke pkgdata, which will create testdata.dat |
b75a7d8f | 636 | # |
f3c0d7a5 | 637 | "$(TESTDATAOUT)\testdata.dat": "$(TESTDATA)\*" "$(ICUBLD_PKG)\$(ICUCOL)\ucadata.icu" $(TRANSLIT_RES_FILES) $(MISC_FILES) $(RB_FILES) {"$(ICUTOOLS)\genrb\$(CFGTOOLS)"}genrb.exe |
b75a7d8f A |
638 | @cd "$(TESTDATA)" |
639 | @echo building testdata... | |
f3c0d7a5 | 640 | nmake /nologo /f "$(TESTDATA)\testdata.mak" TESTDATA=. ICUTOOLS="$(ICUTOOLS)" ICUPBIN="$(ICUPBIN)" ICUP="$(ICUP)" CFG=$(CFGTOOLS) TESTDATAOUT="$(TESTDATAOUT)" TESTDATABLD="$(TESTDATABLD)" |
b75a7d8f A |
641 | |
642 | #invoke pkgdata for ICU common data | |
73c04bcf | 643 | # pkgdata will drop all output files (.dat, .dll, .lib) into the target (ICUBLD_PKG) directory. |
b75a7d8f A |
644 | # move the .dll and .lib files to their final destination afterwards. |
645 | # The $(U_ICUDATA_NAME).lib and $(U_ICUDATA_NAME).exp should already be in the right place due to stubdata. | |
646 | # | |
73c04bcf A |
647 | # 2005-may-05 Removed Unicode properties files (unorm.icu, uprops.icu, ucase.icu, ubidi.icu) |
648 | # from data build. See Jitterbug 4497. (makedata.mak revision 1.117) | |
649 | # | |
650 | !IFDEF ICUDATA_SOURCE_ARCHIVE | |
651 | "$(ICU_LIB_TARGET)" : $(COMMON_ICUDATA_DEPENDENCIES) "$(ICUDATA_SOURCE_ARCHIVE)" | |
652 | @echo Building icu data from $(ICUDATA_SOURCE_ARCHIVE) | |
653 | cd "$(ICUBLD_PKG)" | |
729e4ab9 A |
654 | "$(ICUPBIN)\icupkg" -x * --list "$(ICUDATA_SOURCE_ARCHIVE)" > "$(ICUTMP)\icudata.lst" |
655 | "$(ICUPBIN)\pkgdata" $(COMMON_ICUDATA_ARGUMENTS) "$(ICUTMP)\icudata.lst" | |
73c04bcf A |
656 | copy "$(U_ICUDATA_NAME).dll" "$(DLL_OUTPUT)" |
657 | -@erase "$(U_ICUDATA_NAME).dll" | |
46f4442e A |
658 | copy "$(ICUTMP)\$(ICUPKG).dat" "$(ICUOUT)\$(U_ICUDATA_NAME)$(U_ICUDATA_ENDIAN_SUFFIX).dat" |
659 | -@erase "$(ICUTMP)\$(ICUPKG).dat" | |
73c04bcf | 660 | !ELSE |
b331163b | 661 | "$(ICU_LIB_TARGET)" : $(COMMON_ICUDATA_DEPENDENCIES) $(CNV_FILES) $(CNV_FILES_SPECIAL) "$(ICUBLD_PKG)\unames.icu" "$(ICUBLD_PKG)\cnvalias.icu" "$(ICUBLD_PKG)\nfkc.nrm" "$(ICUBLD_PKG)\nfkc_cf.nrm" "$(ICUBLD_PKG)\uts46.nrm" "$(ICUBLD_PKG)\$(ICUCOL)\ucadata.icu" $(CURR_RES_FILES) $(LANG_RES_FILES) $(REGION_RES_FILES) $(ZONE_RES_FILES) $(UNIT_RES_FILES) $(BRK_FILES) $(BRK_DICT_FILES) $(BRK_RES_FILES) $(ALL_RES) $(COL_COL_FILES) $(RBNF_RES_FILES) $(TRANSLIT_RES_FILES) $(SPREP_FILES) "$(ICUBLD_PKG)\confusables.cfu" |
b75a7d8f | 662 | @echo Building icu data |
73c04bcf | 663 | cd "$(ICUBLD_PKG)" |
729e4ab9 | 664 | "$(ICUPBIN)\pkgdata" $(COMMON_ICUDATA_ARGUMENTS) <<"$(ICUTMP)\icudata.lst" |
374ca955 | 665 | unames.icu |
729e4ab9 A |
666 | confusables.cfu |
667 | $(ICUCOL)\ucadata.icu | |
374ca955 | 668 | cnvalias.icu |
729e4ab9 A |
669 | nfkc.nrm |
670 | nfkc_cf.nrm | |
671 | uts46.nrm | |
b75a7d8f A |
672 | $(CNV_FILES:.cnv =.cnv |
673 | ) | |
729e4ab9 A |
674 | $(CNV_FILES_SPECIAL:.cnv =.cnv |
675 | ) | |
b75a7d8f A |
676 | $(ALL_RES:.res =.res |
677 | ) | |
729e4ab9 A |
678 | $(CURR_RES_FILES:.res =.res |
679 | ) | |
680 | $(LANG_RES_FILES:.res =.res | |
681 | ) | |
682 | $(REGION_RES_FILES:.res =.res | |
683 | ) | |
684 | $(ZONE_RES_FILES:.res =.res | |
685 | ) | |
b331163b A |
686 | $(UNIT_RES_FILES:.res =.res |
687 | ) | |
374ca955 A |
688 | $(COL_COL_FILES:.res =.res |
689 | ) | |
374ca955 A |
690 | $(RBNF_RES_FILES:.res =.res |
691 | ) | |
374ca955 A |
692 | $(TRANSLIT_RES_FILES:.res =.res |
693 | ) | |
b75a7d8f A |
694 | $(BRK_FILES:.brk =.brk |
695 | ) | |
51004dcb | 696 | $(BRK_DICT_FILES:.dict =.dict |
73c04bcf A |
697 | ) |
698 | $(BRK_RES_FILES:.res =.res | |
699 | ) | |
729e4ab9 A |
700 | $(SPREP_FILES:.spp=.spp |
701 | ) | |
b75a7d8f | 702 | <<KEEP |
73c04bcf | 703 | -@erase "$(ICU_LIB_TARGET)" |
f3c0d7a5 | 704 | @if not exist "$(DLL_OUTPUT)" mkdir "$(DLL_OUTPUT)" |
73c04bcf | 705 | copy "$(U_ICUDATA_NAME).dll" "$(ICU_LIB_TARGET)" |
374ca955 | 706 | -@erase "$(U_ICUDATA_NAME).dll" |
46f4442e A |
707 | copy "$(ICUTMP)\$(ICUPKG).dat" "$(ICUOUT)\$(U_ICUDATA_NAME)$(U_ICUDATA_ENDIAN_SUFFIX).dat" |
708 | -@erase "$(ICUTMP)\$(ICUPKG).dat" | |
73c04bcf | 709 | !ENDIF |
b75a7d8f | 710 | |
73c04bcf A |
711 | # utility target to create missing directories |
712 | CREATE_DIRS : | |
b75a7d8f | 713 | @if not exist "$(ICUOUT)\$(NULL)" mkdir "$(ICUOUT)" |
374ca955 A |
714 | @if not exist "$(ICUTMP)\$(NULL)" mkdir "$(ICUTMP)" |
715 | @if not exist "$(ICUOUT)\build\$(NULL)" mkdir "$(ICUOUT)\build" | |
73c04bcf | 716 | @if not exist "$(ICUBLD_PKG)\$(NULL)" mkdir "$(ICUBLD_PKG)" |
729e4ab9 A |
717 | @if not exist "$(ICUBLD_PKG)\curr\$(NULL)" mkdir "$(ICUBLD_PKG)\curr" |
718 | @if not exist "$(ICUBLD_PKG)\lang\$(NULL)" mkdir "$(ICUBLD_PKG)\lang" | |
719 | @if not exist "$(ICUBLD_PKG)\region\$(NULL)" mkdir "$(ICUBLD_PKG)\region" | |
720 | @if not exist "$(ICUBLD_PKG)\zone\$(NULL)" mkdir "$(ICUBLD_PKG)\zone" | |
73c04bcf A |
721 | @if not exist "$(ICUBLD_PKG)\$(ICUBRK)\$(NULL)" mkdir "$(ICUBLD_PKG)\$(ICUBRK)" |
722 | @if not exist "$(ICUBLD_PKG)\$(ICUCOL)\$(NULL)" mkdir "$(ICUBLD_PKG)\$(ICUCOL)" | |
723 | @if not exist "$(ICUBLD_PKG)\$(ICURBNF)\$(NULL)" mkdir "$(ICUBLD_PKG)\$(ICURBNF)" | |
724 | @if not exist "$(ICUBLD_PKG)\$(ICUTRNS)\$(NULL)" mkdir "$(ICUBLD_PKG)\$(ICUTRNS)" | |
b75a7d8f A |
725 | @if not exist "$(TESTDATAOUT)\$(NULL)" mkdir "$(TESTDATAOUT)" |
726 | @if not exist "$(TESTDATABLD)\$(NULL)" mkdir "$(TESTDATABLD)" | |
73c04bcf A |
727 | @if not exist "$(TESTDATAOUT)\testdata\$(NULL)" mkdir "$(TESTDATAOUT)\testdata" |
728 | ||
729 | # utility target to send us to the right dir | |
730 | GODATA : CREATE_DIRS | |
731 | @cd "$(ICUBLD_PKG)" | |
b75a7d8f A |
732 | |
733 | # This is to remove all the data files | |
734 | CLEAN : GODATA | |
735 | @echo Cleaning up the data files. | |
73c04bcf | 736 | @cd "$(ICUBLD_PKG)" |
b75a7d8f | 737 | -@erase "*.cnv" |
b75a7d8f | 738 | -@erase "*.exp" |
b75a7d8f A |
739 | -@erase "*.icu" |
740 | -@erase "*.lib" | |
729e4ab9 | 741 | -@erase "*.nrm" |
374ca955 A |
742 | -@erase "*.res" |
743 | -@erase "*.spp" | |
744 | -@erase "*.txt" | |
729e4ab9 A |
745 | -@erase "*.cfu" |
746 | -@erase "curr\*.res" | |
747 | -@erase "curr\*.txt" | |
748 | -@erase "lang\*.res" | |
749 | -@erase "lang\*.txt" | |
750 | -@erase "region\*.res" | |
751 | -@erase "region\*.txt" | |
752 | -@erase "zone\*.res" | |
753 | -@erase "zone\*.txt" | |
73c04bcf A |
754 | @cd "$(ICUBLD_PKG)\$(ICUBRK)" |
755 | -@erase "*.brk" | |
b75a7d8f A |
756 | -@erase "*.res" |
757 | -@erase "*.txt" | |
b331163b | 758 | -@erase "*.dict" |
73c04bcf | 759 | @cd "$(ICUBLD_PKG)\$(ICUCOL)" |
374ca955 A |
760 | -@erase "*.res" |
761 | -@erase "*.txt" | |
73c04bcf A |
762 | @cd "$(ICUBLD_PKG)\$(ICURBNF)" |
763 | -@erase "*.res" | |
764 | -@erase "*.txt" | |
729e4ab9 | 765 | @cd "$(ICUBLD_PKG)\$(ICUTRNS)" |
374ca955 | 766 | -@erase "*.res" |
b75a7d8f A |
767 | @cd "$(ICUOUT)" |
768 | -@erase "*.dat" | |
374ca955 | 769 | @cd "$(ICUTMP)" |
46f4442e | 770 | -@erase "*.html" |
73c04bcf | 771 | -@erase "*.lst" |
374ca955 A |
772 | -@erase "*.mak" |
773 | -@erase "*.obj" | |
b75a7d8f | 774 | -@erase "*.res" |
374ca955 A |
775 | @cd "$(TESTDATABLD)" |
776 | -@erase "*.cnv" | |
777 | -@erase "*.icu" | |
b75a7d8f | 778 | -@erase "*.mak" |
51004dcb | 779 | -@erase "*.nrm" |
374ca955 A |
780 | -@erase "*.res" |
781 | -@erase "*.spp" | |
782 | -@erase "*.txt" | |
b75a7d8f A |
783 | @cd "$(TESTDATAOUT)" |
784 | -@erase "*.dat" | |
73c04bcf | 785 | @cd "$(TESTDATAOUT)\testdata" |
374ca955 | 786 | -@erase "*.typ" |
73c04bcf | 787 | @cd "$(ICUBLD_PKG)" |
b75a7d8f A |
788 | |
789 | ||
374ca955 | 790 | # RBBI .brk file generation. |
2ca993e8 | 791 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\rules}.txt.brk: |
73c04bcf | 792 | @echo Creating $@ |
f3c0d7a5 | 793 | @"$(ICUTOOLS)\genbrk\$(CFGTOOLS)\genbrk" -c -r $< -o $@ -d"$(ICUBLD_PKG)" -i "$(ICUBLD_PKG)" |
73c04bcf | 794 | |
51004dcb | 795 | #RBBI .dict file generation. |
2ca993e8 | 796 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\dictionaries}.txt.dict: |
51004dcb | 797 | @echo Creating $@ |
f3c0d7a5 | 798 | @"$(ICUTOOLS)\gendict\$(CFGTOOLS)\gendict" -c --uchars $< "$(ICUBLD_PKG)\$@" |
51004dcb A |
799 | |
800 | $(ICUBRK)\thaidict.dict: | |
801 | @echo Creating $(ICUBRK)\thaidict.dict | |
f3c0d7a5 | 802 | @"$(ICUTOOLS)\gendict\$(CFGTOOLS)\gendict" -c --bytes --transform offset-0x0e00 $(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\dictionaries\thaidict.txt "$(ICUBLD_PKG)\$(ICUBRK)\thaidict.dict" |
51004dcb | 803 | |
57a6839d A |
804 | $(ICUBRK)\laodict.dict: |
805 | @echo Creating $(ICUBRK)\laodict.dict | |
f3c0d7a5 | 806 | @"$(ICUTOOLS)\gendict\$(CFGTOOLS)\gendict" -c --bytes --transform offset-0x0e80 $(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\dictionaries\laodict.txt "$(ICUBLD_PKG)\$(ICUBRK)\laodict.dict" |
b331163b A |
807 | |
808 | $(ICUBRK)\burmesedict.dict: | |
809 | @echo Creating $(ICUBRK)\burmesedict.dict | |
f3c0d7a5 | 810 | @"$(ICUTOOLS)\gendict\$(CFGTOOLS)\gendict" -c --bytes --transform offset-0x1000 $(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\dictionaries\burmesedict.txt "$(ICUBLD_PKG)\$(ICUBRK)\burmesedict.dict" |
57a6839d | 811 | |
51004dcb A |
812 | $(ICUBRK)\khmerdict.dict: |
813 | @echo Creating $(ICUBRK)\khmerdict.dict | |
f3c0d7a5 | 814 | @"$(ICUTOOLS)\gendict\$(CFGTOOLS)\gendict" -c --bytes --transform offset-0x1780 $(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)\dictionaries\khmerdict.txt "$(ICUBLD_PKG)\$(ICUBRK)\khmerdict.dict" |
374ca955 | 815 | |
729e4ab9 A |
816 | !IFNDEF ICUDATA_SOURCE_ARCHIVE |
817 | # Rule for creating converters | |
818 | $(CNV_FILES): $(UCM_SOURCE) | |
51004dcb | 819 | @echo Building Charset Conversion table $(@B) |
f3c0d7a5 | 820 | @"$(ICUTOOLS)\makeconv\$(CFGTOOLS)\makeconv" -c -d"$(ICUBLD_PKG)" $(ICUSRCDATA_RELATIVE_PATH)\$(ICUUCM)\$(@B).ucm |
729e4ab9 A |
821 | !ENDIF |
822 | ||
823 | !IFDEF BUILD_SPECIAL_CNV_FILES | |
824 | $(CNV_FILES_SPECIAL): $(UCM_SOURCE_SPECIAL) | |
51004dcb | 825 | @echo Building Special Charset Conversion table $(@B) |
f3c0d7a5 | 826 | @"$(ICUTOOLS)\makeconv\$(CFGTOOLS)\makeconv" -c --ignore-siso-check -d"$(ICUBLD_PKG)" $(ICUSRCDATA_RELATIVE_PATH)\$(ICUUCM)\$(@B).ucm |
729e4ab9 | 827 | !ENDIF |
b75a7d8f | 828 | |
374ca955 A |
829 | # Batch inference rule for creating miscellaneous resource files |
830 | # TODO: -q option is specified to squelch the 120+ warnings about | |
831 | # empty intvectors and binary elements. Unfortunately, this may | |
832 | # squelch other legitimate warnings. When there is a better | |
833 | # way, remove the -q. | |
834 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUMISC2)}.txt.res:: | |
835 | @echo Making Miscellaneous Resource Bundle files | |
f3c0d7a5 | 836 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -q -d"$(ICUBLD_PKG)" $< |
374ca955 A |
837 | |
838 | # Inference rule for creating resource bundle files | |
839 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICULOC)}.txt.res:: | |
840 | @echo Making Locale Resource Bundle files | |
f3c0d7a5 | 841 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\$(ICULOC) -k -d"$(ICUBLD_PKG)" $< |
729e4ab9 A |
842 | |
843 | # copy the locales/pool.res file from the source folder to the build output folder | |
844 | # and swap it to native endianness | |
845 | pool.res: $(ICUSRCDATA_RELATIVE_PATH)\$(ICULOC)\pool.res | |
846 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\$(ICULOC)\pool.res" pool.res | |
b75a7d8f | 847 | |
73c04bcf | 848 | res_index.res: |
b75a7d8f A |
849 | @echo Generating <<res_index.txt |
850 | // Warning this file is automatically generated | |
73c04bcf | 851 | res_index:table(nofallback) { |
b75a7d8f A |
852 | InstalledLocales { |
853 | $(GENRB_SOURCE:.txt= {""} | |
854 | ) | |
855 | } | |
856 | } | |
857 | <<KEEP | |
f3c0d7a5 | 858 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)" .\res_index.txt |
374ca955 | 859 | |
729e4ab9 A |
860 | |
861 | {$(ICUSRCDATA_RELATIVE_PATH)\curr}.txt{curr}.res:: | |
862 | @echo Making currency display name files | |
f3c0d7a5 | 863 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\curr -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\curr" $< |
729e4ab9 A |
864 | |
865 | # copy the curr/pool.res file from the source folder to the build output folder | |
866 | # and swap it to native endianness | |
867 | curr\pool.res: $(ICUSRCDATA_RELATIVE_PATH)\curr\pool.res | |
868 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\curr\pool.res" curr\pool.res | |
869 | ||
870 | curr\res_index.res: | |
871 | @echo Generating <<curr\res_index.txt | |
872 | // Warning this file is automatically generated | |
873 | res_index:table(nofallback) { | |
874 | InstalledLocales { | |
875 | $(CURR_SOURCE:.txt= {""} | |
876 | ) | |
877 | } | |
878 | } | |
879 | <<KEEP | |
f3c0d7a5 | 880 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\curr" .\curr\res_index.txt |
729e4ab9 A |
881 | |
882 | ||
883 | {$(ICUSRCDATA_RELATIVE_PATH)\lang}.txt{lang}.res:: | |
884 | @echo Making language/script display name files | |
f3c0d7a5 | 885 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\lang -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\lang" $< |
729e4ab9 A |
886 | |
887 | # copy the lang/pool.res file from the source folder to the build output folder | |
888 | # and swap it to native endianness | |
889 | lang\pool.res: $(ICUSRCDATA_RELATIVE_PATH)\lang\pool.res | |
890 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\lang\pool.res" lang\pool.res | |
891 | ||
892 | lang\res_index.res: | |
893 | @echo Generating <<lang\res_index.txt | |
894 | // Warning this file is automatically generated | |
895 | res_index:table(nofallback) { | |
896 | InstalledLocales { | |
897 | $(LANG_SOURCE:.txt= {""} | |
898 | ) | |
899 | } | |
900 | } | |
901 | <<KEEP | |
f3c0d7a5 | 902 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\lang" .\lang\res_index.txt |
729e4ab9 A |
903 | |
904 | ||
905 | {$(ICUSRCDATA_RELATIVE_PATH)\region}.txt{region}.res:: | |
906 | @echo Making region display name files | |
f3c0d7a5 | 907 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\region -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\region" $< |
729e4ab9 A |
908 | |
909 | # copy the region/pool.res file from the source folder to the build output folder | |
910 | # and swap it to native endianness | |
911 | region\pool.res: $(ICUSRCDATA_RELATIVE_PATH)\region\pool.res | |
912 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\region\pool.res" region\pool.res | |
913 | ||
914 | region\res_index.res: | |
915 | @echo Generating <<region\res_index.txt | |
916 | // Warning this file is automatically generated | |
917 | res_index:table(nofallback) { | |
918 | InstalledLocales { | |
919 | $(REGION_SOURCE:.txt= {""} | |
920 | ) | |
921 | } | |
922 | } | |
923 | <<KEEP | |
f3c0d7a5 | 924 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\region" .\region\res_index.txt |
729e4ab9 A |
925 | |
926 | ||
927 | {$(ICUSRCDATA_RELATIVE_PATH)\zone}.txt{zone}.res:: | |
928 | @echo Making time zone display name files | |
f3c0d7a5 | 929 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\zone -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\zone" $< |
729e4ab9 A |
930 | |
931 | # copy the zone/pool.res file from the source folder to the build output folder | |
932 | # and swap it to native endianness | |
933 | zone\pool.res: $(ICUSRCDATA_RELATIVE_PATH)\zone\pool.res | |
934 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\zone\pool.res" zone\pool.res | |
935 | ||
936 | zone\res_index.res: | |
937 | @echo Generating <<zone\res_index.txt | |
938 | // Warning this file is automatically generated | |
939 | res_index:table(nofallback) { | |
940 | InstalledLocales { | |
941 | $(ZONE_SOURCE:.txt= {""} | |
942 | ) | |
943 | } | |
944 | } | |
945 | <<KEEP | |
f3c0d7a5 | 946 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\zone" .\zone\res_index.txt |
729e4ab9 A |
947 | |
948 | ||
b331163b A |
949 | {$(ICUSRCDATA_RELATIVE_PATH)\unit}.txt{unit}.res:: |
950 | @echo Making unit display name files | |
f3c0d7a5 | 951 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" --usePoolBundle $(ICUSRCDATA_RELATIVE_PATH)\unit -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\unit" $< |
b331163b A |
952 | |
953 | # copy the unit/pool.res file from the source folder to the build output folder | |
954 | # and swap it to native endianness | |
955 | unit\pool.res: $(ICUSRCDATA_RELATIVE_PATH)\unit\pool.res | |
956 | "$(ICUPBIN)\icupkg" -tl "$(ICUSRCDATA_RELATIVE_PATH)\unit\pool.res" unit\pool.res | |
957 | ||
958 | unit\res_index.res: | |
959 | @echo Generating <<unit\res_index.txt | |
960 | // Warning this file is automatically generated | |
961 | res_index:table(nofallback) { | |
962 | InstalledLocales { | |
963 | $(UNIT_SOURCE:.txt= {""} | |
964 | ) | |
965 | } | |
966 | } | |
967 | <<KEEP | |
f3c0d7a5 | 968 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\unit" .\unit\res_index.txt |
b331163b A |
969 | |
970 | ||
374ca955 A |
971 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUCOL)}.txt{$(ICUCOL)}.res:: |
972 | @echo Making Collation files | |
f3c0d7a5 | 973 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\$(ICUCOL)" $< |
374ca955 | 974 | |
73c04bcf | 975 | $(ICUCOL)\res_index.res: |
374ca955 A |
976 | @echo Generating <<$(ICUCOL)\res_index.txt |
977 | // Warning this file is automatically generated | |
73c04bcf | 978 | res_index:table(nofallback) { |
374ca955 A |
979 | InstalledLocales { |
980 | $(COLLATION_SOURCE:.txt= {""} | |
981 | ) | |
982 | } | |
983 | } | |
984 | <<KEEP | |
f3c0d7a5 | 985 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\$(ICUCOL)" .\$(ICUCOL)\res_index.txt |
374ca955 A |
986 | |
987 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICURBNF)}.txt{$(ICURBNF)}.res:: | |
988 | @echo Making RBNF files | |
f3c0d7a5 | 989 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\$(ICURBNF)" $< |
374ca955 | 990 | |
73c04bcf | 991 | $(ICURBNF)\res_index.res: |
374ca955 A |
992 | @echo Generating <<$(ICURBNF)\res_index.txt |
993 | // Warning this file is automatically generated | |
73c04bcf | 994 | res_index:table(nofallback) { |
374ca955 A |
995 | InstalledLocales { |
996 | $(RBNF_SOURCE:.txt= {""} | |
997 | ) | |
998 | } | |
999 | } | |
1000 | <<KEEP | |
f3c0d7a5 | 1001 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\$(ICURBNF)" .\$(ICURBNF)\res_index.txt |
73c04bcf A |
1002 | |
1003 | $(ICUBRK)\res_index.res: | |
1004 | @echo Generating <<$(ICUBRK)\res_index.txt | |
1005 | // Warning this file is automatically generated | |
1006 | res_index:table(nofallback) { | |
1007 | InstalledLocales { | |
1008 | $(BRK_RES_SOURCE:.txt= {""} | |
1009 | ) | |
1010 | } | |
1011 | } | |
1012 | <<KEEP | |
f3c0d7a5 | 1013 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -d"$(ICUBLD_PKG)\$(ICUBRK)" .\$(ICUBRK)\res_index.txt |
73c04bcf A |
1014 | |
1015 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUBRK)}.txt{$(ICUBRK)}.res:: | |
1016 | @echo Making Break Iterator Resource files | |
f3c0d7a5 | 1017 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\$(ICUBRK)" $< |
374ca955 A |
1018 | |
1019 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUTRNS)}.txt{$(ICUTRNS)}.res:: | |
1020 | @echo Making Transliterator files | |
f3c0d7a5 | 1021 | @"$(ICUTOOLS)\genrb\$(CFGTOOLS)\genrb" -k -i "$(ICUBLD_PKG)" -d"$(ICUBLD_PKG)\$(ICUTRNS)" $< |
b75a7d8f | 1022 | |
b75a7d8f A |
1023 | |
1024 | # DLL version information | |
374ca955 A |
1025 | # If you modify this, modify winmode.c in pkgdata. |
1026 | "$(ICUTMP)\icudata.res": "$(ICUMISC)\icudata.rc" | |
b75a7d8f | 1027 | @echo Creating data DLL version information from $** |
73c04bcf | 1028 | @rc.exe /i "..\..\..\..\common" /r /fo $@ $** |
b75a7d8f | 1029 | |
b75a7d8f | 1030 | # Targets for converters |
f3c0d7a5 | 1031 | "$(ICUBLD_PKG)\cnvalias.icu" : {"$(ICUSRCDATA)\$(ICUUCM)"}\convrtrs.txt "$(ICUTOOLS)\gencnval\$(CFGTOOLS)\gencnval.exe" |
b75a7d8f | 1032 | @echo Creating data file for Converter Aliases |
f3c0d7a5 | 1033 | @"$(ICUTOOLS)\gencnval\$(CFGTOOLS)\gencnval" -d "$(ICUBLD_PKG)" "$(ICUSRCDATA)\$(ICUUCM)\convrtrs.txt" |
b75a7d8f | 1034 | |
729e4ab9 A |
1035 | # Targets for prebuilt Unicode data |
1036 | "$(ICUBLD_PKG)\pnames.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\pnames.icu | |
1037 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1038 | ||
1039 | "$(ICUBLD_PKG)\ubidi.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\ubidi.icu | |
1040 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1041 | ||
1042 | "$(ICUBLD_PKG)\ucase.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\ucase.icu | |
1043 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1044 | ||
1045 | "$(ICUBLD_PKG)\uprops.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\uprops.icu | |
1046 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1047 | ||
1048 | "$(ICUBLD_PKG)\unames.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\unames.icu | |
1049 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1050 | ||
1051 | "$(ICUBLD_PKG)\nfc.nrm": $(ICUSRCDATA_RELATIVE_PATH)\in\nfc.nrm | |
1052 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1053 | ||
1054 | "$(ICUBLD_PKG)\nfkc.nrm": $(ICUSRCDATA_RELATIVE_PATH)\in\nfkc.nrm | |
1055 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1056 | ||
1057 | "$(ICUBLD_PKG)\nfkc_cf.nrm": $(ICUSRCDATA_RELATIVE_PATH)\in\nfkc_cf.nrm | |
1058 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
b75a7d8f | 1059 | |
729e4ab9 A |
1060 | "$(ICUBLD_PKG)\uts46.nrm": $(ICUSRCDATA_RELATIVE_PATH)\in\uts46.nrm |
1061 | "$(ICUPBIN)\icupkg" -tl $? $@ | |
1062 | ||
b331163b | 1063 | "$(ICUBLD_PKG)\coll\ucadata.icu": $(ICUSRCDATA_RELATIVE_PATH)\in\coll\ucadata-unihan.icu |
729e4ab9 A |
1064 | "$(ICUPBIN)\icupkg" -tl $? $@ |
1065 | ||
1066 | # Stringprep .spp file generation. | |
1067 | {$(ICUSRCDATA_RELATIVE_PATH)\$(ICUSPREP)}.txt.spp: | |
1068 | @echo Creating $@ | |
f3c0d7a5 | 1069 | @"$(ICUTOOLS)\gensprep\$(CFGTOOLS)\gensprep" -s $(<D) -d "$(ICUBLD_PKG)" -b $(@B) -m "$(ICUUNIDATA)" -u 3.2.0 $(<F) |
729e4ab9 A |
1070 | |
1071 | # Confusables .cfu file generation | |
1072 | # Can't use an inference rule because two .txt source files combine to produce a single .cfu output file | |
f3c0d7a5 | 1073 | "$(ICUBLD_PKG)\confusables.cfu": "$(ICUUNIDATA)\confusables.txt" "$(ICUUNIDATA)\confusablesWholeScript.txt" "$(ICUTOOLS)\gencfu\$(CFGTOOLS)\gencfu.exe" |
729e4ab9 | 1074 | @echo Creating $@ |
f3c0d7a5 | 1075 | @"$(ICUTOOLS)\gencfu\$(CFGTOOLS)\gencfu" -c -r "$(ICUUNIDATA)\confusables.txt" -w "$(ICUUNIDATA)\confusablesWholeScript.txt" -o $@ -i "$(ICUBLD_PKG)" |
73c04bcf A |
1076 | |
1077 | !IFDEF ICUDATA_ARCHIVE | |
f3c0d7a5 A |
1078 | "$(ICUDATA_SOURCE_ARCHIVE)": CREATE_DIRS $(ICUDATA_ARCHIVE) "$(ICUTOOLS)\icupkg\$(CFGTOOLS)\icupkg.exe" |
1079 | "$(ICUTOOLS)\icupkg\$(CFGTOOLS)\icupkg" -t$(U_ICUDATA_ENDIAN_SUFFIX) "$(ICUDATA_ARCHIVE)" "$(ICUDATA_SOURCE_ARCHIVE)" | |
73c04bcf | 1080 | !ENDIF |
b75a7d8f A |
1081 | |
1082 | # Dependencies on the tools for the batch inference rules | |
1083 | ||
73c04bcf | 1084 | !IFNDEF ICUDATA_SOURCE_ARCHIVE |
f3c0d7a5 | 1085 | $(UCM_SOURCE) : {"$(ICUTOOLS)\makeconv\$(CFGTOOLS)"}makeconv.exe |
b75a7d8f | 1086 | |
729e4ab9 | 1087 | !IFDEF BUILD_SPECIAL_CNV_FILES |
f3c0d7a5 | 1088 | $(UCM_SOURCE_SPECIAL): {"$(ICUTOOLS)\makeconv\$(CFGTOOLS)"}makeconv.exe |
729e4ab9 A |
1089 | !ENDIF |
1090 | ||
1091 | # This used to depend on "$(ICUBLD_PKG)\uprops.icu" "$(ICUBLD_PKG)\ucase.icu" "$(ICUBLD_PKG)\ubidi.icu" | |
73c04bcf A |
1092 | # This data is now hard coded as a part of the library. |
1093 | # See Jitterbug 4497 for details. | |
f3c0d7a5 | 1094 | $(MISC_SOURCE) $(RB_FILES) $(CURR_FILES) $(LANG_FILES) $(REGION_FILES) $(ZONE_FILES) $(UNIT_FILES) $(COL_COL_FILES) $(RBNF_RES_FILES) $(BRK_RES_FILES) $(TRANSLIT_RES_FILES): {"$(ICUTOOLS)\genrb\$(CFGTOOLS)"}genrb.exe "$(ICUBLD_PKG)\$(ICUCOL)\ucadata.icu" |
73c04bcf | 1095 | |
4388f060 A |
1096 | # This used to depend on "$(ICUBLD_PKG)\pnames.icu" "$(ICUBLD_PKG)\uprops.icu" "$(ICUBLD_PKG)\ucase.icu" "$(ICUBLD_PKG)\ubidi.icu" |
1097 | # These are now hardcoded in ICU4C and only loaded in ICU4J. | |
b331163b | 1098 | $(BRK_SOURCE) : "$(ICUBLD_PKG)\unames.icu" |
73c04bcf | 1099 | !ENDIF |