]>
Commit | Line | Data |
---|---|---|
2b778ceb | 1 | # Copyright (C) 1997-2021 Free Software Foundation, Inc. |
f4017d20 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. | |
f4017d20 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. |
f4017d20 | 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/>. |
f4017d20 UD |
17 | |
18 | # | |
19 | # Makefile for iconv data and code. | |
20 | # | |
21 | subdir := iconvdata | |
22 | ||
a5f891ac JM |
23 | include ../Makeconfig |
24 | ||
f4017d20 | 25 | # Names of all the shared objects which implement the transformations. |
9b26f5c4 UD |
26 | modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \ |
27 | ISO8859-6 ISO8859-7 ISO8859-8 ISO8859-9 ISO8859-10 \ | |
7abbb474 | 28 | ISO8859-11 ISO8859-13 ISO8859-14 ISO8859-15 ISO8859-16 \ |
87520ccc | 29 | T.61 ISO_6937 SJIS KOI-8 HP-ROMAN8 HP-ROMAN9 EBCDIC-AT-DE \ |
30373ded UD |
30 | EBCDIC-AT-DE-A EBCDIC-CA-FR EUC-KR UHC JOHAB libJIS libKSC \ |
31 | BIG5 EUC-JP libGB EUC-CN libCNS EUC-TW ISO646 EBCDIC-DK-NO \ | |
32 | EBCDIC-DK-NO-A EBCDIC-ES EBCDIC-ES-A EBCDIC-ES-S EBCDIC-FI-SE \ | |
33 | EBCDIC-FI-SE-A EBCDIC-FR EBCDIC-IS-FRISS EBCDIC-IT EBCDIC-PT \ | |
b48abe3c | 34 | EBCDIC-UK EBCDIC-US IBM037 IBM038 IBM274 IBM275 IBM423 \ |
f4a20e28 | 35 | IBM500 IBM870 IBM871 IBM891 IBM903 IBM904 IBM905 IBM1047 \ |
189dce4f | 36 | IBM874 CP737 CP775 ISO-2022-KR HP-TURKISH8 HP-THAI8 HP-GREEK8 \ |
fed8f7f7 | 37 | KOI8-R LATIN-GREEK LATIN-GREEK-1 IBM256 IBM273 IBM277 IBM278 \ |
b48abe3c | 38 | IBM280 IBM281 IBM284 IBM285 IBM290 IBM297 IBM420 IBM424 \ |
799c8d69 MF |
39 | IBM437 IBM850 IBM851 IBM852 IBM855 IBM857 IBM858 IBM860 \ |
40 | IBM861 IBM862 IBM863 IBM864 IBM865 IBM868 IBM869 IBM875 \ | |
41 | IBM880 IBM866 CP1258 IBM922 IBM1124 IBM1129 IBM932 IBM943 \ | |
dbd10df7 | 42 | IBM856 IBM930 IBM933 IBM935 IBM937 IBM939 IBM1046 \ |
03a2c647 | 43 | IBM1132 IBM1133 IBM1160 IBM1161 IBM1162 IBM1163 IBM1164 \ |
b15c9395 RM |
44 | IBM918 IBM1004 IBM1026 CP1125 CP1250 CP1251 CP1252 CP1253 \ |
45 | CP1254 CP1255 CP1256 CP1257 ISO-2022-JP MACINTOSH IEC_P27-1 \ | |
37d84717 UD |
46 | ASMO_449 ANSI_X3.110 CSN_369103 CWI DEC-MCS ECMA-CYRILLIC \ |
47 | GOST_19768-74 GREEK-CCITT GREEK7 GREEK7-OLD INIS INIS-8 \ | |
48 | INIS-CYRILLIC ISO_6937-2 ISO_2033 ISO_5427 ISO_5427-EXT \ | |
0f6052a8 | 49 | ISO_5428 ISO_10367-BOX MAC-IS MAC-UK NATS-DANO NATS-SEFI \ |
15a2315c | 50 | SAMI-WS2 ISO-IR-197 TIS-620 KOI8-U GBK ISIRI-3342 GBGBK \ |
b721a2c0 | 51 | ISO-2022-CN libISOIR165 UTF-16 UNICODE UTF-32 UTF-7 BIG5HKSCS \ |
6906cea4 | 52 | GB18030 ISO-2022-CN-EXT VISCII GBBIG5 CP10007 KOI8-T \ |
350b053a | 53 | GEORGIAN-PS GEORGIAN-ACADEMY ISO-IR-209 MAC-SAMI ARMSCII-8 \ |
faaa6f62 | 54 | TCVN5712-1 libJISX0213 EUC-JISX0213 SHIFT_JISX0213 \ |
137e6462 UD |
55 | ISO-2022-JP-3 TSCII IBM866NAV CP932 EUC-JP-MS PT154 RK1048 \ |
56 | IBM1025 IBM1122 IBM1137 IBM1153 IBM1154 IBM1155 IBM1156 \ | |
be97a69e UD |
57 | IBM1157 IBM1158 IBM803 IBM901 IBM902 IBM921 IBM1008 \ |
58 | IBM1008_420 IBM1097 IBM1112 IBM1123 IBM1130 IBM1140 IBM1141 \ | |
59 | IBM1142 IBM1143 IBM1144 IBM1145 IBM1146 IBM1147 IBM1148 \ | |
60 | IBM1149 IBM1166 IBM1167 IBM4517 IBM4899 IBM4909 IBM4971 \ | |
3b8d12b8 | 61 | IBM5347 IBM9030 IBM9066 IBM9448 IBM12712 IBM16804 \ |
27f3d446 | 62 | IBM1364 IBM1371 IBM1388 IBM1390 IBM1399 ISO_11548-1 MIK BRF \ |
be97a69e UD |
63 | MAC-CENTRALEUROPE KOI8-RU ISO8859-9E \ |
64 | CP770 CP771 CP772 CP773 CP774 | |
f4017d20 | 65 | |
2d6ab5df FW |
66 | # If lazy binding is disabled, use BIND_NOW for the gconv modules. |
67 | ifeq ($(bind-now),yes) | |
68 | LDFLAGS.so += -Wl,-z,now | |
69 | endif | |
70 | ||
fed8f7f7 | 71 | modules.so := $(addsuffix .so, $(modules)) |
f4017d20 | 72 | |
8c5e5fa0 | 73 | ifeq (yes,$(build-shared)) |
74ed1159 | 74 | tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \ |
42d6443f | 75 | tst-iconv6 bug-iconv5 bug-iconv6 tst-iconv7 bug-iconv8 bug-iconv9 \ |
ee7a3144 | 76 | bug-iconv10 bug-iconv11 bug-iconv12 tst-iconv-big5-hkscs-to-2ucs4 \ |
7d88c614 | 77 | bug-iconv13 bug-iconv14 |
e8783fd5 RM |
78 | ifeq ($(have-thread-library),yes) |
79 | tests += bug-iconv3 | |
80 | endif | |
cf970a32 | 81 | |
b79f74cd | 82 | test-srcs := tst-table-from tst-table-to |
8c5e5fa0 | 83 | endif |
04be94a8 | 84 | |
04be94a8 | 85 | libJIS-routines := jis0201 jis0208 jis0212 |
a44d2393 | 86 | libKSC-routines := ksc5601 |
40b4c81d | 87 | libGB-routines := gb2312 |
2b474353 | 88 | libCNS-routines := cns11643l1 cns11643 |
c456edaa | 89 | libISOIR165-routines := iso-ir-165 |
93a568aa | 90 | libJISX0213-routines := jisx0213 |
04be94a8 | 91 | |
ad10cac8 | 92 | LDFLAGS-EUC-KR.so = $(LDFLAGS-rpath-ORIGIN) |
e784ad6a | 93 | $(objpfx)EUC-KR.so: $(objpfx)libKSC.so |
ad10cac8 | 94 | LDFLAGS-JOHAB.so = $(LDFLAGS-rpath-ORIGIN) |
e784ad6a | 95 | $(objpfx)JOHAB.so: $(objpfx)libKSC.so |
ad10cac8 | 96 | LDFLAGS-UHC.so = $(LDFLAGS-rpath-ORIGIN) |
cab24c37 | 97 | $(objpfx)UHC.so: $(objpfx)libKSC.so |
ad10cac8 | 98 | LDFLAGS-EUC-JP.so = $(LDFLAGS-rpath-ORIGIN) |
40b4c81d | 99 | $(objpfx)EUC-JP.so: $(objpfx)libJIS.so |
9df2c61c UD |
100 | LDFLAGS-EUC-JP-MS.so = $(LDFLAGS-rpath-ORIGIN) |
101 | $(objpfx)EUC-JP-MS.so: $(objpfx)libJIS.so | |
ad10cac8 | 102 | LDFLAGS-EUC-CN.so = $(LDFLAGS-rpath-ORIGIN) |
40b4c81d | 103 | $(objpfx)EUC-CN.so: $(objpfx)libGB.so |
ad10cac8 | 104 | LDFLAGS-EUC-TW.so = $(LDFLAGS-rpath-ORIGIN) |
2b474353 | 105 | $(objpfx)EUC-TW.so: $(objpfx)libCNS.so |
93a568aa UD |
106 | LDFLAGS-EUC-JISX0213.so = $(LDFLAGS-rpath-ORIGIN) |
107 | $(objpfx)EUC-JISX0213.so: $(objpfx)libJISX0213.so | |
108 | LDFLAGS-SHIFT_JISX0213.so = $(LDFLAGS-rpath-ORIGIN) | |
109 | $(objpfx)SHIFT_JISX0213.so: $(objpfx)libJISX0213.so | |
e784ad6a | 110 | |
ad10cac8 | 111 | LDFLAGS-ISO-2022-JP.so = $(LDFLAGS-rpath-ORIGIN) |
918b9d72 | 112 | $(objpfx)ISO-2022-JP.so: $(objpfx)libJIS.so $(objpfx)libGB.so \ |
8babd571 | 113 | $(objpfx)libCNS.so $(objpfx)libKSC.so |
faaa6f62 UD |
114 | LDFLAGS-ISO-2022-JP-3.so = $(LDFLAGS-rpath-ORIGIN) |
115 | $(objpfx)ISO-2022-JP-3.so: $(objpfx)libJIS.so $(objpfx)libJISX0213.so | |
ad10cac8 | 116 | LDFLAGS-ISO-2022-KR.so = $(LDFLAGS-rpath-ORIGIN) |
e3e0a182 | 117 | $(objpfx)ISO-2022-KR.so: $(objpfx)libKSC.so |
ad10cac8 | 118 | LDFLAGS-ISO-2022-CN.so = $(LDFLAGS-rpath-ORIGIN) |
15a2315c | 119 | $(objpfx)ISO-2022-CN.so: $(objpfx)libGB.so $(objpfx)libCNS.so |
ad10cac8 | 120 | LDFLAGS-ISO-2022-CN-EXT.so = $(LDFLAGS-rpath-ORIGIN) |
c0d99958 UD |
121 | $(objpfx)ISO-2022-CN-EXT.so: $(objpfx)libGB.so $(objpfx)libCNS.so \ |
122 | $(objpfx)libISOIR165.so | |
918b9d72 | 123 | |
ad10cac8 UD |
124 | LDFLAGS-libJIS.so = $(LDFLAGS-soname-fname) |
125 | LDFLAGS-libKSC.so = $(LDFLAGS-soname-fname) | |
126 | LDFLAGS-libGB.so = $(LDFLAGS-soname-fname) | |
127 | LDFLAGS-libCNS.so = $(LDFLAGS-soname-fname) | |
128 | LDFLAGS-libISOIR165.so = $(LDFLAGS-soname-fname) | |
93a568aa | 129 | LDFLAGS-libJISX0213.so = $(LDFLAGS-soname-fname) |
71bedb76 | 130 | |
f4017d20 UD |
131 | # We build the transformation modules only when we build shared libs. |
132 | ifeq (yes,$(build-shared)) | |
133 | ||
f4017d20 | 134 | # Rule to generate the shared objects. |
118bad87 | 135 | charmaps = ../localedata/charmaps |
118bad87 | 136 | -include $(objpfx)iconv-rules |
f4017d20 UD |
137 | extra-modules-left := $(modules) |
138 | include extra-module.mk | |
139 | ||
06a1b794 | 140 | gconv-modules = gconv-modules gconv-modules.d/gconv-modules-extra.conf |
fc5bfade | 141 | modpfx = $(objpfx)gconv-modules.d/ |
f4017d20 UD |
142 | |
143 | extra-objs += $(modules.so) | |
144 | install-others = $(addprefix $(inst_gconvdir)/, $(modules.so)) \ | |
06a1b794 | 145 | $(addprefix $(inst_gconvdir)/, $(gconv-modules)) |
f4017d20 | 146 | |
6d5503b1 | 147 | # We can build the conversion tables for numerous charsets automatically. |
b17277cf | 148 | |
118bad87 | 149 | gen-8bit-modules := iso8859-2 iso8859-3 iso8859-4 iso8859-6 iso8859-9 koi-8 \ |
b4354cf4 UD |
150 | ebcdic-at-de ebcdic-at-de-a ebcdic-ca-fr ebcdic-dk-no \ |
151 | ebcdic-dk-no-a ebcdic-es-s ebcdic-fi-se ebcdic-fi-se-a \ | |
152 | ebcdic-fr ebcdic-it ebcdic-pt ebcdic-us \ | |
118bad87 | 153 | ibm037 ibm038 ibm274 ibm275 ibm423 ibm500 ibm870 ibm871 \ |
be97a69e | 154 | ibm891 ibm903 ibm904 ibm905 ibm1047 |
118bad87 UD |
155 | |
156 | gen-8bit-gap-modules := koi8-r latin-greek latin-greek-1 ibm256 ibm273 \ | |
157 | ibm277 ibm278 ibm280 ibm281 ibm284 ibm285 ibm290 \ | |
158 | ibm297 ibm420 ibm424 ibm437 ibm850 ibm851 ibm852 \ | |
799c8d69 MF |
159 | ibm855 ibm857 ibm858 ibm860 ibm861 ibm862 ibm863 \ |
160 | ibm864 ibm865 ibm868 ibm869 ibm875 ibm880 ibm918 \ | |
161 | ibm1004 ibm1026 cp1125 cp1250 cp1251 cp1252 cp1253 \ | |
162 | cp1254 cp1256 cp1257 ibm866 iso8859-5 iso8859-7 \ | |
163 | iso8859-8 iso8859-10 macintosh iec_p27-1 asmo_449 \ | |
118bad87 UD |
164 | csn_369103 cwi dec-mcs ecma-cyrillic gost_19768-74 \ |
165 | greek-ccitt greek7 greek7-old inis inis-8 \ | |
166 | inis-cyrillic iso_2033 iso_5427 iso_5427-ext \ | |
167 | iso_5428 iso_10367-box mac-is nats-dano nats-sefi \ | |
0f6052a8 | 168 | iso8859-13 iso8859-14 iso8859-15 mac-uk sami-ws2 \ |
6906cea4 | 169 | iso-ir-197 tis-620 koi8-u ibm874 cp10007 koi8-t \ |
cb2a71bb | 170 | georgian-ps georgian-academy iso-ir-209 mac-sami \ |
b4354cf4 UD |
171 | iso8859-11 ibm866nav pt154 rk1048 mik brf \ |
172 | mac-centraleurope koi8-ru hp-roman8 hp-roman9 \ | |
173 | ebcdic-es ebcdic-es-a ebcdic-is-friss ebcdic-uk \ | |
189dce4f | 174 | iso8859-16 viscii iso8859-9e hp-turkish8 \ |
be97a69e UD |
175 | hp-thai8 hp-greek8 cp770 cp771 cp772 cp773 cp774 |
176 | ||
118bad87 UD |
177 | |
178 | gen-special-modules := iso8859-7jp | |
179 | ||
180 | generated-modules := $(gen-8bit-modules) $(gen-8bit-gap-modules) \ | |
181 | $(gen-special-modules) | |
182 | ||
f08e9a26 RM |
183 | generated += $(generated-modules:=.h) $(generated-modules:=.stmp) \ |
184 | iconv-test.out iconv-rules tst-loading.mtrace \ | |
0b20a9e8 | 185 | mtrace-tst-loading.out tst-tables.out iconv-test.xxx |
118bad87 | 186 | ifdef objpfx |
06a1b794 | 187 | generated += $(gconv-modules) |
118bad87 UD |
188 | endif |
189 | ||
190 | # Rules to generate the headers. | |
191 | export AWK | |
192 | ||
f4017d20 | 193 | define generate-8bit-table |
0111b224 | 194 | $(make-target-directory) |
82f0f9ed | 195 | LC_ALL=C $(SHELL) ./gen-8bit.sh $< > $(@:stmp=T) |
b17277cf UD |
196 | $(move-if-change) $(@:stmp=T) $(@:stmp=h) |
197 | touch $@ | |
04be94a8 UD |
198 | endef |
199 | ||
04be94a8 | 200 | define generate-8bit-gap-table |
0111b224 | 201 | $(make-target-directory) |
82f0f9ed | 202 | LC_ALL=C $(SHELL) ./gen-8bit-gap.sh $< > $(@:stmp=T) |
b17277cf UD |
203 | $(move-if-change) $(@:stmp=T) $(@:stmp=h) |
204 | touch $@ | |
f4017d20 UD |
205 | endef |
206 | ||
04be94a8 | 207 | # The headers must be generated before the compilation. |
f08e9a26 | 208 | before-compile += $(addprefix $(objpfx),$(generated-modules:=.h)) |
04be94a8 | 209 | |
407a7d0e | 210 | ifndef avoid-generated |
118bad87 UD |
211 | $(objpfx)iconv-rules: Makefile |
212 | $(make-target-directory) | |
213 | { echo $(filter-out lib%, $(modules)); \ | |
214 | echo 8bit $(gen-8bit-modules); \ | |
215 | echo 8bit-gap $(gen-8bit-gap-modules); } | \ | |
25df09ab | 216 | LC_ALL=C \ |
118bad87 | 217 | $(AWK) 'NR == 1 { \ |
1a1fa200 | 218 | for (i = 1; i <= NF; i++) { \ |
118bad87 | 219 | printf "%s-routines := %s\n", $$i, tolower($$i); \ |
9cd47470 | 220 | printf "libof-%s := iconvdata\n", tolower($$i); \ |
1a1fa200 UD |
221 | printf "%s-map := gconv.map\n", $$i; \ |
222 | } \ | |
118bad87 UD |
223 | }; \ |
224 | NR > 1 { \ | |
225 | for (i = 2; i <= NF; i++) { \ | |
226 | printf "$$(objpfx)%s.stmp: ", $$i; \ | |
227 | map = toupper($$i); \ | |
228 | sub(/^ISO8859/, "ISO-8859", map); \ | |
229 | if (map == "ISO_2033") map = map "-1983"; \ | |
230 | printf "$$(charmaps)/%s ", map; \ | |
231 | printf "gen-%s.sh\n", $$1; \ | |
232 | printf "\t$$(generate-%s-table)\n", $$1; \ | |
233 | } \ | |
234 | }' > $@.new | |
235 | mv -f $@.new $@ | |
407a7d0e | 236 | endif |
118bad87 UD |
237 | |
238 | $(generated-modules:%=$(objpfx)%.h): $(objpfx)%.h: $(objpfx)%.stmp | |
b17277cf UD |
239 | @: |
240 | ||
118bad87 UD |
241 | $(gen-8bit-modules:%=$(objpfx)%.stmp): $(objpfx)%.stmp: $(objpfx)iconv-rules |
242 | $(gen-8bit-gap-modules:%=$(objpfx)%.stmp): $(objpfx)%.stmp: $(objpfx)iconv-rules | |
3cb0cda8 | 243 | |
118bad87 | 244 | $(objpfx)iso8859-7jp.stmp: $(charmaps)/ISO-8859-7 gen-8bit-gap-1.sh |
b17277cf | 245 | $(make-target-directory) |
82f0f9ed | 246 | LC_ALL=C $(SHELL) ./gen-8bit-gap-1.sh $< > $(@:stmp=T) |
b17277cf UD |
247 | $(move-if-change) $(@:stmp=T) $(@:stmp=h) |
248 | touch $@ | |
249 | ||
118bad87 | 250 | headers: $(addprefix $(objpfx), $(generated-modules:=.h)) |
f4017d20 | 251 | |
73237de3 UD |
252 | $(addprefix $(inst_gconvdir)/, $(modules.so)): \ |
253 | $(inst_gconvdir)/%: $(objpfx)% $(+force) | |
f4017d20 | 254 | $(do-install-program) |
06a1b794 SP |
255 | $(addprefix $(inst_gconvdir)/, $(gconv-modules)): \ |
256 | $(inst_gconvdir)/%: $(objpfx)% $(+force) | |
f4017d20 | 257 | $(do-install) |
7cccc6f9 | 258 | ifeq (no,$(cross-compiling)) |
d8d5a647 UD |
259 | # Update the $(prefix)/lib/gconv/gconv-modules.cache file. This is necessary |
260 | # if this libc has more gconv modules than the previously installed one. | |
261 | if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \ | |
686554bf | 262 | LC_ALL=C \ |
85d89278 | 263 | $(rtld-prefix) \ |
d8d5a647 UD |
264 | $(common-objpfx)iconv/iconvconfig \ |
265 | $(addprefix --prefix=,$(install_root)); \ | |
266 | fi | |
7cccc6f9 UD |
267 | else |
268 | @echo '*@*@*@ You should recreate $(inst_gconvdir)/gconv-modules.cache' | |
269 | endif | |
118bad87 UD |
270 | |
271 | endif # build-shared = yes | |
f4017d20 | 272 | |
03ac099f | 273 | ifeq ($(run-built-tests),yes) |
df455ccb | 274 | ifeq (yes,$(build-shared)) |
f214606a | 275 | tests-special += $(objpfx)iconv-test.out $(objpfx)tst-tables.out |
5af65d0e | 276 | ifneq (no,$(PERL)) |
0b20a9e8 | 277 | tests-special += $(objpfx)mtrace-tst-loading.out |
dc399a65 | 278 | endif |
df455ccb | 279 | endif |
97a0d44d | 280 | endif |
f1fa8b68 | 281 | |
f881f6ff | 282 | ifeq ($(run-built-tests),yes) |
c580e646 CD |
283 | LOCALES := \ |
284 | de_DE.UTF-8 \ | |
285 | zh_HK.BIG5-HKSCS \ | |
286 | $(NULL) | |
287 | ||
f881f6ff AS |
288 | include ../gen-locales.mk |
289 | ||
290 | $(objpfx)bug-iconv6.out: $(gen-locales) | |
291 | $(objpfx)tst-iconv7.out: $(gen-locales) | |
c580e646 | 292 | $(objpfx)tst-iconv-big5-hkscs-to-2ucs4.out: $(gen-locales) |
f881f6ff AS |
293 | endif |
294 | ||
c580e646 CD |
295 | include ../Rules |
296 | ||
9cd47470 | 297 | # Set libof-* for each routine. |
4f41c682 SP |
298 | cpp-srcs-left := $(modules) $(generated-modules) $(libJIS-routines) \ |
299 | $(libKSC-routines) $(libGB-routines) $(libCNS-routines) \ | |
300 | $(libISOIR165-routines) $(libJISX0213-routines) | |
9cd47470 | 301 | lib := iconvdata |
2bfdaedd | 302 | include $(patsubst %,$(..)libof-iterator.mk,$(cpp-srcs-left)) |
9cd47470 | 303 | |
2d2d9f2b SP |
304 | tst-loading-ENV = MALLOC_TRACE=$(objpfx)tst-loading.mtrace \ |
305 | LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so | |
0b20a9e8 | 306 | $(objpfx)mtrace-tst-loading.out: $(objpfx)tst-loading.out |
f0881698 JM |
307 | $(common-objpfx)malloc/mtrace $(objpfx)tst-loading.mtrace > $@; \ |
308 | $(evaluate-test) | |
b2fe29dd | 309 | |
06a1b794 | 310 | $(objpfx)bug-iconv1.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
faf90ba9 | 311 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 312 | $(objpfx)bug-iconv2.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
faf90ba9 | 313 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 314 | $(objpfx)bug-iconv3.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
6f1cff95 | 315 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 316 | $(objpfx)bug-iconv5.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
55ea8790 | 317 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 318 | $(objpfx)tst-loading.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
faf90ba9 | 319 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 320 | $(objpfx)tst-iconv4.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
9b1a4ec3 | 321 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 322 | $(objpfx)tst-iconv7.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
4b1b449d | 323 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 324 | $(objpfx)bug-iconv10.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
42d6443f | 325 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 326 | $(objpfx)bug-iconv12.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
7ab1de21 | 327 | $(addprefix $(objpfx),$(modules.so)) |
06a1b794 | 328 | $(objpfx)bug-iconv14.out: $(addprefix $(objpfx), $(gconv-modules)) \ |
7d88c614 | 329 | $(addprefix $(objpfx),$(modules.so)) |
700f371b | 330 | |
fc5bfade | 331 | $(objpfx)iconv-test.out: run-iconv-test.sh \ |
06a1b794 | 332 | $(addprefix $(objpfx), $(gconv-modules)) \ |
4b8f94d3 | 333 | $(addprefix $(objpfx),$(modules.so)) \ |
13d9048a | 334 | $(common-objdir)/iconv/iconv_prog TESTS |
41488498 | 335 | iconv_modules="$(modules)" \ |
8540f6d2 JM |
336 | $(SHELL) $< $(common-objdir) '$(test-wrapper-env)' \ |
337 | '$(run-program-env)' > $@; \ | |
f0881698 | 338 | $(evaluate-test) |
f1fa8b68 | 339 | |
fc5bfade | 340 | $(objpfx)tst-tables.out: tst-tables.sh \ |
06a1b794 | 341 | $(addprefix $(objpfx), $(gconv-modules)) \ |
b79f74cd UD |
342 | $(addprefix $(objpfx),$(modules.so)) \ |
343 | $(objpfx)tst-table-from $(objpfx)tst-table-to | |
e40a0d21 | 344 | $(SHELL) $< $(common-objpfx) $(common-objpfx)iconvdata/ \ |
f0881698 JM |
345 | '$(test-program-prefix)' > $@; \ |
346 | $(evaluate-test) | |
b79f74cd UD |
347 | |
348 | do-tests-clean common-mostlyclean: tst-tables-clean | |
349 | ||
350 | .PHONY: tst-tables-clean | |
351 | tst-tables-clean: | |
352 | -rm -f $(objpfx)tst-*.table $(objpfx)tst-EUC-TW.irreversible | |
353 | ||
fc5bfade SP |
354 | $(modpfx): |
355 | mkdir -p $@ | |
356 | ||
357 | $(modpfx)%: % $(modpfx) | |
358 | cp $< $@ | |
c580e646 | 359 | |
06a1b794 SP |
360 | $(objpfx)gconv-modules: gconv-modules |
361 | cp $^ $@ | |
362 | ||
c580e646 | 363 | # Test requires BIG5HKSCS. |
fc5bfade | 364 | $(objpfx)tst-iconv-big5-hkscs-to-2ucs4.out: \ |
06a1b794 | 365 | $(addprefix $(objpfx), $(gconv-modules)) \ |
c580e646 | 366 | $(addprefix $(objpfx),$(modules.so)) |