]>
Commit | Line | Data |
---|---|---|
d614a753 | 1 | # Copyright (C) 1996-2020 Free Software Foundation, Inc. |
f5f52655 UD |
2 | # This file is part of the GNU C Library. |
3 | ||
4 | # The GNU C Library is free software; you can redistribute it and/or | |
41bdb6e2 AJ |
5 | # modify it under the terms of the GNU Lesser General Public |
6 | # License as published by the Free Software Foundation; either | |
7 | # version 2.1 of the License, or (at your option) any later version. | |
f5f52655 UD |
8 | |
9 | # The GNU C Library is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
41bdb6e2 | 12 | # Lesser General Public License for more details. |
f5f52655 | 13 | |
41bdb6e2 | 14 | # You should have received a copy of the GNU Lesser General Public |
59ba27a6 | 15 | # License along with the GNU C Library; if not, see |
5a82c748 | 16 | # <https://www.gnu.org/licenses/>. |
f5f52655 UD |
17 | |
18 | # Makefile for installing locale data source files. | |
19 | ||
20 | subdir := localedata | |
21 | ||
a5f891ac | 22 | include ../Makeconfig |
f5f52655 UD |
23 | |
24 | # List with all available character set descriptions. | |
9d65ea3a | 25 | charmaps := $(wildcard charmaps/[A-I]*) $(wildcard charmaps/[J-Z]*) |
f5f52655 UD |
26 | |
27 | # List with all available character set descriptions. | |
9d65ea3a | 28 | locales := $(wildcard locales/*) |
f5f52655 | 29 | |
5b905722 AJ |
30 | |
31 | subdir-dirs = tests-mbwc | |
32 | vpath %.c tests-mbwc | |
33 | vpath %.h tests-mbwc | |
34 | ||
35 | ||
316518d6 | 36 | test-srcs := collate-test xfrm-test tst-fmon tst-rpmatch tst-trans \ |
34fdb893 CD |
37 | tst-ctype tst-langinfo-newlocale tst-langinfo-setlocale \ |
38 | tst-langinfo-newlocale-static tst-langinfo-setlocale-static \ | |
39 | tst-numeric | |
15973854 MF |
40 | # List of test input files (list sorted alphabetically): |
41 | test-input := \ | |
42 | am_ET.UTF-8 \ | |
43 | az_AZ.UTF-8 \ | |
44 | be_BY.UTF-8 \ | |
45 | ber_DZ.UTF-8 \ | |
46 | ber_MA.UTF-8 \ | |
47 | bg_BG.UTF-8 \ | |
48 | br_FR.UTF-8 \ | |
49 | bs_BA.UTF-8 \ | |
ae199e7d | 50 | ckb_IQ.UTF-8 \ |
15973854 MF |
51 | cmn_TW.UTF-8 \ |
52 | crh_UA.UTF-8 \ | |
53 | cs_CZ.UTF-8 \ | |
54 | csb_PL.UTF-8 \ | |
55 | cv_RU.UTF-8 \ | |
56 | cy_GB.UTF-8 \ | |
57 | da_DK.ISO-8859-1 \ | |
58 | de_DE.ISO-8859-1 \ | |
0a83bad2 | 59 | dsb_DE.UTF-8 \ |
15973854 MF |
60 | dz_BT.UTF-8 \ |
61 | en_US.ISO-8859-1 \ | |
7cd7d36f | 62 | en_US.UTF-8 \ |
15973854 MF |
63 | eo.UTF-8 \ |
64 | es_ES.UTF-8 \ | |
65 | et_EE.UTF-8 \ | |
66 | fa_IR.UTF-8 \ | |
67 | fi_FI.UTF-8 \ | |
68 | fil_PH.UTF-8 \ | |
69 | fr_CA.UTF-8 \ | |
70 | fr_FR.UTF-8 \ | |
71 | fur_IT.UTF-8 \ | |
72 | gez_ER.UTF-8@abegede \ | |
73 | ha_NG.UTF-8 \ | |
74 | hr_HR.ISO-8859-2 \ | |
75 | hr_HR.UTF-8 \ | |
76 | hsb_DE.UTF-8 \ | |
77 | hu_HU.UTF-8 \ | |
78 | ig_NG.UTF-8 \ | |
79 | ik_CA.UTF-8 \ | |
80 | is_IS.UTF-8 \ | |
81 | kk_KZ.UTF-8 \ | |
82 | ku_TR.UTF-8 \ | |
83 | ky_KG.UTF-8 \ | |
84 | ln_CD.UTF-8 \ | |
85 | lt_LT.UTF-8 \ | |
86 | lv_LV.UTF-8 \ | |
87 | mi_NZ.UTF-8 \ | |
88 | ml_IN.UTF-8 \ | |
89 | mn_MN.UTF-8 \ | |
90 | mr_IN.UTF-8 \ | |
91 | mt_MT.UTF-8 \ | |
92 | nan_TW.UTF-8@latin \ | |
93 | nb_NO.UTF-8 \ | |
94 | om_KE.UTF-8 \ | |
cdeae33d | 95 | or_IN.UTF-8 \ |
15973854 MF |
96 | os_RU.UTF-8 \ |
97 | pl_PL.UTF-8 \ | |
98 | ps_AF.UTF-8 \ | |
99 | ro_RO.UTF-8 \ | |
100 | ru_RU.UTF-8 \ | |
61c4aad7 | 101 | sah_RU.UTF-8 \ |
15973854 MF |
102 | sc_IT.UTF-8 \ |
103 | se_NO.UTF-8 \ | |
104 | si_LK.UTF-8 \ | |
105 | sq_AL.UTF-8 \ | |
106 | sr_RS.UTF-8 \ | |
107 | sv_SE.ISO-8859-1 \ | |
108 | sv_SE.UTF-8 \ | |
109 | szl_PL.UTF-8 \ | |
110 | tg_TJ.UTF-8 \ | |
111 | tk_TM.UTF-8 \ | |
112 | tr_TR.UTF-8 \ | |
113 | tt_RU.UTF-8 \ | |
114 | tt_RU.UTF-8@iqtelif \ | |
115 | ug_CN.UTF-8 \ | |
116 | uk_UA.UTF-8 \ | |
117 | uz_UZ.UTF-8 \ | |
118 | vi_VN.UTF-8 \ | |
119 | yi_US.UTF-8 \ | |
120 | yo_NG.UTF-8 \ | |
121 | zh_CN.UTF-8 \ | |
122 | $(NULL) | |
123 | ||
56fa555a | 124 | test-input-data = $(addsuffix .in, $(test-input)) |
da2d1bc5 UD |
125 | test-output := $(foreach s, .out .xout, \ |
126 | $(addsuffix $s, $(basename $(test-input)))) | |
69c69fe1 | 127 | ld-test-names := test1 test2 test3 test4 test5 test6 test7 |
0a614877 | 128 | ld-test-srcs := $(addprefix tests/,$(addsuffix .cm,$(ld-test-names)) \ |
afa0569f | 129 | $(addsuffix .def,$(ld-test-names)) \ |
cf2964e2 UD |
130 | $(addsuffix .ds,test5 test6) \ |
131 | test6.c trans.def) | |
880f421f | 132 | |
8956ac9e UD |
133 | fmon-tests = n01y12 n02n40 n10y31 n11y41 n12y11 n20n32 n30y20 n41n00 \ |
134 | y01y10 y02n22 y22n42 y30y21 y32n31 y40y00 y42n21 | |
135 | ||
f08e9a26 | 136 | generated += $(test-input) $(test-output) sort-test.out tst-locale.out \ |
2976feab | 137 | tst-leaks.mtrace mtrace-tst-leaks.out |
f08e9a26 | 138 | generated-dirs += $(ld-test-names) tt_TT de_DE.437 \ |
40c4c9b5 | 139 | $(addprefix tstfmon_,$(fmon-tests)) \ |
414fd335 | 140 | |
03ac099f | 141 | ifeq ($(run-built-tests),yes) |
5ca8accd AJ |
142 | locale_test_suite := tst_iswalnum tst_iswalpha tst_iswcntrl \ |
143 | tst_iswctype tst_iswdigit tst_iswgraph \ | |
144 | tst_iswlower tst_iswprint tst_iswpunct \ | |
145 | tst_iswspace tst_iswupper tst_iswxdigit tst_mblen \ | |
146 | tst_mbrlen tst_mbrtowc tst_mbsrtowcs tst_mbstowcs \ | |
147 | tst_mbtowc tst_strcoll tst_strfmon tst_strxfrm \ | |
148 | tst_swscanf tst_towctrans tst_towlower \ | |
149 | tst_towupper tst_wcrtomb tst_wcscat tst_wcschr \ | |
150 | tst_wcscmp tst_wcscoll tst_wcscpy tst_wcscspn \ | |
151 | tst_wcslen tst_wcsncat tst_wcsncmp tst_wcsncpy \ | |
152 | tst_wcspbrk tst_wcsrtombs tst_wcsspn tst_wcsstr \ | |
153 | tst_wcstod tst_wcstok tst_wcstombs tst_wcswidth \ | |
154 | tst_wcsxfrm tst_wctob tst_wctomb tst_wctrans \ | |
155 | tst_wctype tst_wcwidth | |
2e23c3cc | 156 | |
7bcad280 | 157 | tests = $(locale_test_suite) tst-digits tst-setlocale bug-iconv-trans \ |
2976feab JM |
158 | tst-leaks tst-mbswcs1 tst-mbswcs2 tst-mbswcs3 tst-mbswcs4 tst-mbswcs5 \ |
159 | tst-mbswcs6 tst-xlocale1 tst-xlocale2 bug-usesetlocale \ | |
4e8f95a0 | 160 | tst-strfmon1 tst-sscanf bug-setlocale1 tst-setlocale2 tst-setlocale3 \ |
513aaa0d | 161 | tst-wctype tst-iconv-math-trans |
c34521ce L |
162 | tests-static = bug-setlocale1-static |
163 | tests += $(tests-static) | |
7bcad280 UD |
164 | ifeq (yes,$(build-shared)) |
165 | ifneq (no,$(PERL)) | |
0b20a9e8 | 166 | tests-special += $(objpfx)mtrace-tst-leaks.out |
7bcad280 UD |
167 | endif |
168 | endif | |
0e16ecfa | 169 | endif |
0e16ecfa | 170 | |
f5f52655 | 171 | # Files to install. |
97476447 DD |
172 | ifeq ($(INSTALL_UNCOMPRESSED),yes) |
173 | # This option is for testing inside the testroot container, as the | |
174 | # container does not include a working gunzip program. | |
175 | install-others := $(addprefix $(inst_i18ndir)/, \ | |
176 | $(charmaps) \ | |
177 | $(locales)) | |
178 | else | |
d77cd295 UD |
179 | install-others := $(addprefix $(inst_i18ndir)/, \ |
180 | $(addsuffix .gz, $(charmaps)) \ | |
181 | $(locales)) | |
97476447 | 182 | endif |
f5f52655 | 183 | |
23433315 PP |
184 | tests: $(objdir)/iconvdata/gconv-modules |
185 | ||
34fdb893 | 186 | tests-static += tst-langinfo-newlocale-static tst-langinfo-setlocale-static |
85bb81c9 WN |
187 | |
188 | ifeq ($(run-built-tests),yes) | |
f214606a JM |
189 | tests-special += $(objpfx)sort-test.out $(objpfx)tst-fmon.out \ |
190 | $(objpfx)tst-locale.out $(objpfx)tst-rpmatch.out \ | |
2976feab | 191 | $(objpfx)tst-trans.out $(objpfx)tst-ctype.out \ |
34fdb893 CD |
192 | $(objpfx)tst-langinfo-newlocale.out \ |
193 | $(objpfx)tst-langinfo-setlocale.out \ | |
194 | $(objpfx)tst-langinfo-newlocale-static.out \ | |
195 | $(objpfx)tst-langinfo-setlocale-static.out \ | |
ae75a883 | 196 | $(objpfx)tst-numeric.out |
15973854 MF |
197 | # We have to generate locales (list sorted alphabetically) |
198 | LOCALES := \ | |
199 | am_ET.UTF-8 \ | |
200 | az_AZ.UTF-8 \ | |
201 | be_BY.UTF-8 \ | |
202 | ber_DZ.UTF-8 \ | |
203 | ber_MA.UTF-8 \ | |
204 | bg_BG.UTF-8 \ | |
205 | br_FR.UTF-8 \ | |
206 | bs_BA.UTF-8 \ | |
ae199e7d | 207 | ckb_IQ.UTF-8 \ |
15973854 MF |
208 | cmn_TW.UTF-8 \ |
209 | crh_UA.UTF-8 \ | |
210 | cs_CZ.UTF-8 \ | |
211 | csb_PL.UTF-8 \ | |
212 | cv_RU.UTF-8 \ | |
213 | cy_GB.UTF-8 \ | |
214 | da_DK.ISO-8859-1 \ | |
215 | de_DE.ISO-8859-1 \ | |
216 | de_DE.UTF-8 \ | |
0a83bad2 | 217 | dsb_DE.UTF-8 \ |
15973854 MF |
218 | dz_BT.UTF-8 \ |
219 | en_GB.UTF-8 \ | |
220 | en_US.ANSI_X3.4-1968 \ | |
221 | en_US.ISO-8859-1\ | |
222 | en_US.UTF-8 \ | |
223 | eo.UTF-8 \ | |
224 | es_ES.UTF-8 \ | |
225 | et_EE.UTF-8 \ | |
226 | fa_IR.UTF-8 \ | |
227 | fi_FI.UTF-8 \ | |
228 | fil_PH.UTF-8 \ | |
229 | fr_CA.UTF-8 \ | |
230 | fr_FR.ISO-8859-1 \ | |
231 | fr_FR.UTF-8 \ | |
232 | fur_IT.UTF-8 \ | |
233 | gez_ER.UTF-8@abegede \ | |
234 | ha_NG.UTF-8 \ | |
235 | hr_HR.ISO-8859-2 \ | |
236 | hr_HR.UTF-8 \ | |
237 | hsb_DE.UTF-8 \ | |
238 | hu_HU.UTF-8 \ | |
239 | ig_NG.UTF-8 \ | |
240 | ik_CA.UTF-8 \ | |
241 | is_IS.UTF-8 \ | |
242 | ja_JP.EUC-JP \ | |
243 | ja_JP.SJIS \ | |
244 | ja_JP.UTF-8 \ | |
245 | kk_KZ.UTF-8 \ | |
246 | ku_TR.UTF-8 \ | |
247 | ky_KG.UTF-8 \ | |
248 | ln_CD.UTF-8 \ | |
249 | lt_LT.UTF-8 \ | |
250 | lv_LV.UTF-8 \ | |
251 | mi_NZ.UTF-8 \ | |
252 | ml_IN.UTF-8 \ | |
253 | mn_MN.UTF-8 \ | |
254 | mr_IN.UTF-8 \ | |
255 | mt_MT.UTF-8 \ | |
256 | nan_TW.UTF-8@latin \ | |
257 | nb_NO.ISO-8859-1 \ | |
258 | nb_NO.UTF-8 \ | |
02d8b5ab | 259 | nl_NL.UTF-8 \ |
15973854 MF |
260 | nn_NO.ISO-8859-1 \ |
261 | om_KE.UTF-8 \ | |
cdeae33d | 262 | or_IN.UTF-8 \ |
15973854 MF |
263 | os_RU.UTF-8 \ |
264 | pl_PL.UTF-8 \ | |
265 | ps_AF.UTF-8 \ | |
266 | ro_RO.UTF-8 \ | |
267 | ru_RU.UTF-8 \ | |
61c4aad7 | 268 | sah_RU.UTF-8 \ |
15973854 MF |
269 | sc_IT.UTF-8 \ |
270 | se_NO.UTF-8 \ | |
271 | si_LK.UTF-8 \ | |
272 | sq_AL.UTF-8 \ | |
273 | sr_RS.UTF-8 \ | |
274 | sv_SE.ISO-8859-1 \ | |
275 | sv_SE.UTF-8 \ | |
276 | szl_PL.UTF-8 \ | |
277 | tg_TJ.UTF-8 \ | |
278 | tk_TM.UTF-8 \ | |
279 | tr_TR.ISO-8859-9 \ | |
280 | tr_TR.UTF-8 \ | |
281 | tt_RU.UTF-8 \ | |
282 | tt_RU.UTF-8@iqtelif \ | |
283 | ug_CN.UTF-8 \ | |
284 | uk_UA.UTF-8 \ | |
285 | uz_UZ.UTF-8 \ | |
286 | vi_VN.UTF-8 \ | |
287 | yi_US.UTF-8 \ | |
288 | yo_NG.UTF-8 \ | |
289 | zh_CN.UTF-8 \ | |
290 | zh_TW.EUC-TW \ | |
291 | $(NULL) | |
292 | ||
9f53d7ad | 293 | include ../gen-locales.mk |
513aaa0d AS |
294 | |
295 | $(objpfx)tst-iconv-math-trans.out: $(gen-locales) | |
6f99f280 JM |
296 | endif |
297 | ||
f5f52655 UD |
298 | include ../Rules |
299 | ||
97476447 DD |
300 | ifeq ($(INSTALL_UNCOMPRESSED),yes) |
301 | # Install the charmap files as-is. This option is for testing inside | |
302 | # the testroot container, as the container does not include a working | |
303 | # gunzip program. | |
304 | $(inst_i18ndir)/charmaps/%: charmaps/% $(+force) | |
305 | $(make-target-directory) | |
306 | rm -f $@ | |
307 | $(INSTALL_DATA) $< $@ | |
308 | else | |
d77cd295 UD |
309 | # Install the charmap files in gzipped format. |
310 | $(inst_i18ndir)/charmaps/%.gz: charmaps/% $(+force) | |
311 | $(make-target-directory) | |
312 | rm -f $(@:.gz=) $@ | |
313 | $(INSTALL_DATA) $< $(@:.gz=) | |
962edb7e | 314 | gzip -9n $(@:.gz=) |
97476447 | 315 | endif |
d77cd295 UD |
316 | |
317 | # Install the locale source files in the appropriate directory. | |
73237de3 | 318 | $(inst_i18ndir)/locales/%: locales/% $(+force); $(do-install) |
f5f52655 | 319 | |
03ac099f | 320 | ifeq ($(run-built-tests),yes) |
40c4c9b5 UD |
321 | generated-dirs += $(LOCALES) |
322 | ||
9f2bedd0 | 323 | $(addsuffix .out,$(addprefix $(objpfx),$(tests))): %: \ |
5e087c71 UD |
324 | $(addprefix $(objpfx),$(CTYPE_FILES)) |
325 | ||
ca41028b UD |
326 | $(objpfx)sort-test.out: sort-test.sh $(objpfx)collate-test $(objpfx)xfrm-test \ |
327 | $(test-input-data) $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
328 | $(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \ |
329 | '$(run-program-env)' '$(test-program-prefix-after-env)' \ | |
330 | $(test-input) \ | |
f0881698 JM |
331 | > $@; \ |
332 | $(evaluate-test) | |
ca41028b UD |
333 | $(objpfx)tst-fmon.out: tst-fmon.sh $(objpfx)tst-fmon tst-fmon.data \ |
334 | $(objpfx)sort-test.out \ | |
335 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
336 | $(SHELL) $< $(common-objpfx) '$(run-program-prefix-before-env)' \ |
337 | '$(run-program-env)' '$(run-program-prefix-after-env)' \ | |
338 | '$(test-program-prefix)' tst-fmon.data \ | |
f0881698 JM |
339 | > $@; \ |
340 | $(evaluate-test) | |
76352f64 UD |
341 | $(objpfx)tst-numeric.out: tst-numeric.sh $(objpfx)tst-numeric tst-numeric.data \ |
342 | $(objpfx)sort-test.out \ | |
343 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
740b3dbe | 344 | $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' tst-numeric.data \ |
f0881698 JM |
345 | > $@; \ |
346 | $(evaluate-test) | |
ca41028b UD |
347 | $(objpfx)tst-locale.out: tst-locale.sh $(common-objpfx)locale/localedef \ |
348 | $(ld-test-srcs) $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
349 | $(SHELL) $< $(common-objpfx) '$(built-program-cmd-before-env)' \ |
350 | '$(run-program-env)' '$(built-program-cmd-after-env)' > $@; \ | |
f0881698 | 351 | $(evaluate-test) |
ca41028b UD |
352 | $(objpfx)tst-rpmatch.out: tst-rpmatch.sh $(objpfx)tst-rpmatch \ |
353 | $(objpfx)tst-fmon.out \ | |
354 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
f0881698 JM |
355 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' > $@; \ |
356 | $(evaluate-test) | |
ca41028b UD |
357 | $(objpfx)tst-trans.out: tst-trans.sh $(objpfx)tst-trans \ |
358 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
359 | $(SHELL) $< $(common-objpfx) '$(run-program-prefix-before-env)' \ |
360 | '$(run-program-env)' '$(run-program-prefix-after-env)' \ | |
361 | '$(test-program-prefix-before-env)' \ | |
d5afb385 | 362 | '$(test-program-prefix-after-env)' > $@; \ |
f0881698 | 363 | $(evaluate-test) |
ca41028b UD |
364 | $(objpfx)tst-ctype.out: tst-ctype.sh $(objpfx)tst-ctype \ |
365 | $(objpfx)sort-test.out \ | |
366 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 | 367 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \ |
d5afb385 | 368 | '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \ |
f0881698 | 369 | $(evaluate-test) |
34fdb893 CD |
370 | $(objpfx)tst-langinfo-newlocale.out: tst-langinfo.sh \ |
371 | $(objpfx)tst-langinfo-newlocale \ | |
f79d99cb UD |
372 | $(objpfx)sort-test.out \ |
373 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
374 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \ |
375 | '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \ | |
ae75a883 | 376 | $(evaluate-test) |
34fdb893 CD |
377 | $(objpfx)tst-langinfo-newlocale-static.out: tst-langinfo.sh \ |
378 | $(objpfx)tst-langinfo-newlocale-static \ | |
ae75a883 AJ |
379 | $(objpfx)sort-test.out \ |
380 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
8540f6d2 JM |
381 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \ |
382 | '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \ | |
f0881698 | 383 | $(evaluate-test) |
34fdb893 CD |
384 | # Static use of newlocale is known not to work. See Bug 23164. |
385 | test-xfail-tst-langinfo-newlocale-static = yes | |
386 | ||
387 | $(objpfx)tst-langinfo-setlocale.out: tst-langinfo.sh \ | |
388 | $(objpfx)tst-langinfo-setlocale \ | |
389 | $(objpfx)sort-test.out \ | |
390 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
391 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \ | |
392 | '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \ | |
393 | $(evaluate-test) | |
394 | $(objpfx)tst-langinfo-setlocale-static.out: tst-langinfo.sh \ | |
395 | $(objpfx)tst-langinfo-setlocale-static \ | |
396 | $(objpfx)sort-test.out \ | |
397 | $(addprefix $(objpfx),$(CTYPE_FILES)) | |
398 | $(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \ | |
399 | '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \ | |
400 | $(evaluate-test) | |
401 | ||
69c69fe1 | 402 | $(objpfx)tst-digits.out: $(objpfx)tst-locale.out |
db2d05f9 | 403 | $(objpfx)tst-mbswcs6.out: $(addprefix $(objpfx),$(CTYPE_FILES)) |
df455ccb | 404 | endif |
92610fbe | 405 | |
f7364247 UD |
406 | include SUPPORTED |
407 | ||
08a5ee14 CD |
408 | INSTALL-SUPPORTED-LOCALE-ARCHIVE=$(addprefix install-archive-, $(SUPPORTED-LOCALES)) |
409 | INSTALL-SUPPORTED-LOCALE-FILES=$(addprefix install-files-, $(SUPPORTED-LOCALES)) | |
f7364247 | 410 | |
92610fbe | 411 | # Sometimes the whole collection of locale files should be installed. |
246a9a19 | 412 | LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ |
85d89278 | 413 | $(rtld-prefix) $(common-objpfx)locale/localedef |
08a5ee14 CD |
414 | install-locales: install-locale-archive |
415 | ||
416 | # Create and install the locale-archive file. | |
417 | install-locale-archive: $(INSTALL-SUPPORTED-LOCALE-ARCHIVE) | |
418 | # Create and install the locales individually (no archive). | |
419 | install-locale-files: $(INSTALL-SUPPORTED-LOCALE-FILES) | |
f7364247 UD |
420 | |
421 | install-locales-dir: | |
90fe682d | 422 | $(..)./scripts/mkinstalldirs $(inst_complocaledir) |
f7364247 | 423 | |
02eec681 CD |
424 | # The SHIFT_JIS and SHIFT_JISX0213 character maps are not ASCII compatible, |
425 | # therefore we have to use --no-warnings=ascii to disable the ASCII check. | |
426 | # See localedata/gen-locale.sh for the same logic. | |
08a5ee14 CD |
427 | define build-one-locale |
428 | locale=`echo $@ | sed -e 's/^install-[a-z]*-//'`; \ | |
f7364247 UD |
429 | charset=`echo $$locale | sed -e 's,.*/,,'`; \ |
430 | locale=`echo $$locale | sed -e 's,/[^/]*,,'`; \ | |
02eec681 CD |
431 | if [ "$$charset" = 'SHIFT_JIS' ] \ |
432 | || [ "$$charset" = 'SHIFT_JISX0213' ]; then \ | |
433 | flags="$$flags --no-warnings=ascii"; \ | |
434 | fi; \ | |
f7364247 UD |
435 | echo -n `echo $$locale | sed 's/\([^.\@]*\).*/\1/'`; \ |
436 | echo -n ".$$charset"; \ | |
437 | echo -n `echo $$locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \ | |
438 | echo -n '...'; \ | |
439 | input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \ | |
02eec681 CD |
440 | $(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \ |
441 | -i locales/$$input -f charmaps/$$charset \ | |
6c307927 | 442 | $(addprefix --prefix=,$(install_root)) $$locale \ |
08a5ee14 CD |
443 | && echo ' done'; |
444 | endef | |
445 | ||
446 | $(INSTALL-SUPPORTED-LOCALE-ARCHIVE): install-locales-dir | |
447 | @flags="-c"; \ | |
448 | $(build-one-locale) | |
449 | ||
450 | $(INSTALL-SUPPORTED-LOCALE-FILES): install-locales-dir | |
8cebd4ff | 451 | @flags="-c --no-archive --no-hard-links"; \ |
08a5ee14 | 452 | $(build-one-locale) |
5b905722 | 453 | |
2bf18041 | 454 | tst-setlocale-ENV = LC_ALL=ja_JP.EUC-JP |
2976feab | 455 | tst-wctype-ENV = LC_ALL=ja_JP.EUC-JP |
2bf18041 JM |
456 | |
457 | tst-leaks-ENV = MALLOC_TRACE=$(objpfx)tst-leaks.mtrace | |
0b20a9e8 | 458 | $(objpfx)mtrace-tst-leaks.out: $(objpfx)tst-leaks.out |
f0881698 JM |
459 | $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks.mtrace > $@; \ |
460 | $(evaluate-test) | |
23433315 | 461 | |
9162c01d RM |
462 | bug-setlocale1-ENV-only = LOCPATH=$(objpfx) LC_CTYPE=de_DE.UTF-8 |
463 | bug-setlocale1-static-ENV-only = $(bug-setlocale1-ENV-only) | |
cc9e536d | 464 | |
23433315 PP |
465 | $(objdir)/iconvdata/gconv-modules: |
466 | $(MAKE) -C ../iconvdata subdir=iconvdata $@ |