16 #include "mysys_priv.h"
24 #ifdef HAVE_UCA_COLLATIONS
26 #ifdef HAVE_CHARSET_ucs2
53 #ifdef HAVE_CHARSET_utf32
80 #ifdef HAVE_CHARSET_utf16
107 #ifdef HAVE_CHARSET_utf8
131 #ifdef HAVE_UTF8_GENERAL_CS
136 #ifdef HAVE_CHARSET_utf8mb4
138 extern CHARSET_INFO my_charset_utf8mb4_icelandic_uca_ci;
141 extern CHARSET_INFO my_charset_utf8mb4_slovenian_uca_ci;
149 extern CHARSET_INFO my_charset_utf8mb4_lithuanian_uca_ci;
154 extern CHARSET_INFO my_charset_utf8mb4_esperanto_uca_ci;
155 extern CHARSET_INFO my_charset_utf8mb4_hungarian_uca_ci;
164 my_bool init_compiled_charsets(myf
flags __attribute__((unused)))
168 add_compiled_collation(&my_charset_bin);
169 add_compiled_collation(&my_charset_filename);
171 add_compiled_collation(&my_charset_latin1);
172 add_compiled_collation(&my_charset_latin1_bin);
173 add_compiled_collation(&my_charset_latin1_german2_ci);
175 #ifdef HAVE_CHARSET_big5
176 add_compiled_collation(&my_charset_big5_chinese_ci);
177 add_compiled_collation(&my_charset_big5_bin);
180 #ifdef HAVE_CHARSET_cp1250
181 add_compiled_collation(&my_charset_cp1250_czech_ci);
184 #ifdef HAVE_CHARSET_cp932
185 add_compiled_collation(&my_charset_cp932_japanese_ci);
186 add_compiled_collation(&my_charset_cp932_bin);
189 #ifdef HAVE_CHARSET_latin2
190 add_compiled_collation(&my_charset_latin2_czech_ci);
193 #ifdef HAVE_CHARSET_eucjpms
194 add_compiled_collation(&my_charset_eucjpms_japanese_ci);
195 add_compiled_collation(&my_charset_eucjpms_bin);
198 #ifdef HAVE_CHARSET_euckr
199 add_compiled_collation(&my_charset_euckr_korean_ci);
200 add_compiled_collation(&my_charset_euckr_bin);
203 #ifdef HAVE_CHARSET_gb2312
204 add_compiled_collation(&my_charset_gb2312_chinese_ci);
205 add_compiled_collation(&my_charset_gb2312_bin);
208 #ifdef HAVE_CHARSET_gbk
209 add_compiled_collation(&my_charset_gbk_chinese_ci);
210 add_compiled_collation(&my_charset_gbk_bin);
213 #ifdef HAVE_CHARSET_sjis
214 add_compiled_collation(&my_charset_sjis_japanese_ci);
215 add_compiled_collation(&my_charset_sjis_bin);
218 #ifdef HAVE_CHARSET_tis620
219 add_compiled_collation(&my_charset_tis620_thai_ci);
220 add_compiled_collation(&my_charset_tis620_bin);
223 #ifdef HAVE_CHARSET_ucs2
224 add_compiled_collation(&my_charset_ucs2_general_ci);
225 add_compiled_collation(&my_charset_ucs2_bin);
226 add_compiled_collation(&my_charset_ucs2_general_mysql500_ci);
227 #ifdef HAVE_UCA_COLLATIONS
228 add_compiled_collation(&my_charset_ucs2_unicode_ci);
229 add_compiled_collation(&my_charset_ucs2_german2_uca_ci);
230 add_compiled_collation(&my_charset_ucs2_icelandic_uca_ci);
231 add_compiled_collation(&my_charset_ucs2_latvian_uca_ci);
232 add_compiled_collation(&my_charset_ucs2_romanian_uca_ci);
233 add_compiled_collation(&my_charset_ucs2_slovenian_uca_ci);
234 add_compiled_collation(&my_charset_ucs2_polish_uca_ci);
235 add_compiled_collation(&my_charset_ucs2_estonian_uca_ci);
236 add_compiled_collation(&my_charset_ucs2_spanish_uca_ci);
237 add_compiled_collation(&my_charset_ucs2_swedish_uca_ci);
238 add_compiled_collation(&my_charset_ucs2_turkish_uca_ci);
239 add_compiled_collation(&my_charset_ucs2_czech_uca_ci);
240 add_compiled_collation(&my_charset_ucs2_danish_uca_ci);
241 add_compiled_collation(&my_charset_ucs2_lithuanian_uca_ci);
242 add_compiled_collation(&my_charset_ucs2_slovak_uca_ci);
243 add_compiled_collation(&my_charset_ucs2_spanish2_uca_ci);
244 add_compiled_collation(&my_charset_ucs2_roman_uca_ci);
245 add_compiled_collation(&my_charset_ucs2_persian_uca_ci);
246 add_compiled_collation(&my_charset_ucs2_esperanto_uca_ci);
247 add_compiled_collation(&my_charset_ucs2_hungarian_uca_ci);
248 add_compiled_collation(&my_charset_ucs2_croatian_uca_ci);
249 add_compiled_collation(&my_charset_ucs2_sinhala_uca_ci);
250 add_compiled_collation(&my_charset_ucs2_unicode_520_ci);
251 add_compiled_collation(&my_charset_ucs2_vietnamese_ci);
255 #ifdef HAVE_CHARSET_ujis
256 add_compiled_collation(&my_charset_ujis_japanese_ci);
257 add_compiled_collation(&my_charset_ujis_bin);
260 #ifdef HAVE_CHARSET_utf8
261 add_compiled_collation(&my_charset_utf8_general_ci);
262 add_compiled_collation(&my_charset_utf8_bin);
263 add_compiled_collation(&my_charset_utf8_general_mysql500_ci);
264 #ifdef HAVE_UTF8_GENERAL_CS
265 add_compiled_collation(&my_charset_utf8_general_cs);
267 #ifdef HAVE_UCA_COLLATIONS
268 add_compiled_collation(&my_charset_utf8_unicode_ci);
269 add_compiled_collation(&my_charset_utf8_german2_uca_ci);
270 add_compiled_collation(&my_charset_utf8_icelandic_uca_ci);
271 add_compiled_collation(&my_charset_utf8_latvian_uca_ci);
272 add_compiled_collation(&my_charset_utf8_romanian_uca_ci);
273 add_compiled_collation(&my_charset_utf8_slovenian_uca_ci);
274 add_compiled_collation(&my_charset_utf8_polish_uca_ci);
275 add_compiled_collation(&my_charset_utf8_estonian_uca_ci);
276 add_compiled_collation(&my_charset_utf8_spanish_uca_ci);
277 add_compiled_collation(&my_charset_utf8_swedish_uca_ci);
278 add_compiled_collation(&my_charset_utf8_turkish_uca_ci);
279 add_compiled_collation(&my_charset_utf8_czech_uca_ci);
280 add_compiled_collation(&my_charset_utf8_danish_uca_ci);
281 add_compiled_collation(&my_charset_utf8_lithuanian_uca_ci);
282 add_compiled_collation(&my_charset_utf8_slovak_uca_ci);
283 add_compiled_collation(&my_charset_utf8_spanish2_uca_ci);
284 add_compiled_collation(&my_charset_utf8_roman_uca_ci);
285 add_compiled_collation(&my_charset_utf8_persian_uca_ci);
286 add_compiled_collation(&my_charset_utf8_esperanto_uca_ci);
287 add_compiled_collation(&my_charset_utf8_hungarian_uca_ci);
288 add_compiled_collation(&my_charset_utf8_croatian_uca_ci);
289 add_compiled_collation(&my_charset_utf8_sinhala_uca_ci);
290 add_compiled_collation(&my_charset_utf8_unicode_520_ci);
291 add_compiled_collation(&my_charset_utf8_vietnamese_ci);
296 #ifdef HAVE_CHARSET_utf8mb4
297 add_compiled_collation(&my_charset_utf8mb4_general_ci);
298 add_compiled_collation(&my_charset_utf8mb4_bin);
299 #ifdef HAVE_UCA_COLLATIONS
300 add_compiled_collation(&my_charset_utf8mb4_unicode_ci);
301 add_compiled_collation(&my_charset_utf8mb4_german2_uca_ci);
302 add_compiled_collation(&my_charset_utf8mb4_icelandic_uca_ci);
303 add_compiled_collation(&my_charset_utf8mb4_latvian_uca_ci);
304 add_compiled_collation(&my_charset_utf8mb4_romanian_uca_ci);
305 add_compiled_collation(&my_charset_utf8mb4_slovenian_uca_ci);
306 add_compiled_collation(&my_charset_utf8mb4_polish_uca_ci);
307 add_compiled_collation(&my_charset_utf8mb4_estonian_uca_ci);
308 add_compiled_collation(&my_charset_utf8mb4_spanish_uca_ci);
309 add_compiled_collation(&my_charset_utf8mb4_swedish_uca_ci);
310 add_compiled_collation(&my_charset_utf8mb4_turkish_uca_ci);
311 add_compiled_collation(&my_charset_utf8mb4_czech_uca_ci);
312 add_compiled_collation(&my_charset_utf8mb4_danish_uca_ci);
313 add_compiled_collation(&my_charset_utf8mb4_lithuanian_uca_ci);
314 add_compiled_collation(&my_charset_utf8mb4_slovak_uca_ci);
315 add_compiled_collation(&my_charset_utf8mb4_spanish2_uca_ci);
316 add_compiled_collation(&my_charset_utf8mb4_roman_uca_ci);
317 add_compiled_collation(&my_charset_utf8mb4_persian_uca_ci);
318 add_compiled_collation(&my_charset_utf8mb4_esperanto_uca_ci);
319 add_compiled_collation(&my_charset_utf8mb4_hungarian_uca_ci);
320 add_compiled_collation(&my_charset_utf8mb4_croatian_uca_ci);
321 add_compiled_collation(&my_charset_utf8mb4_sinhala_uca_ci);
322 add_compiled_collation(&my_charset_utf8mb4_unicode_520_ci);
323 add_compiled_collation(&my_charset_utf8mb4_vietnamese_ci);
328 #ifdef HAVE_CHARSET_utf16
329 add_compiled_collation(&my_charset_utf16_general_ci);
330 add_compiled_collation(&my_charset_utf16_bin);
331 add_compiled_collation(&my_charset_utf16le_general_ci);
332 add_compiled_collation(&my_charset_utf16le_bin);
333 #ifdef HAVE_UCA_COLLATIONS
334 add_compiled_collation(&my_charset_utf16_unicode_ci);
335 add_compiled_collation(&my_charset_utf16_german2_uca_ci);
336 add_compiled_collation(&my_charset_utf16_icelandic_uca_ci);
337 add_compiled_collation(&my_charset_utf16_latvian_uca_ci);
338 add_compiled_collation(&my_charset_utf16_romanian_uca_ci);
339 add_compiled_collation(&my_charset_utf16_slovenian_uca_ci);
340 add_compiled_collation(&my_charset_utf16_polish_uca_ci);
341 add_compiled_collation(&my_charset_utf16_estonian_uca_ci);
342 add_compiled_collation(&my_charset_utf16_spanish_uca_ci);
343 add_compiled_collation(&my_charset_utf16_swedish_uca_ci);
344 add_compiled_collation(&my_charset_utf16_turkish_uca_ci);
345 add_compiled_collation(&my_charset_utf16_czech_uca_ci);
346 add_compiled_collation(&my_charset_utf16_danish_uca_ci);
347 add_compiled_collation(&my_charset_utf16_lithuanian_uca_ci);
348 add_compiled_collation(&my_charset_utf16_slovak_uca_ci);
349 add_compiled_collation(&my_charset_utf16_spanish2_uca_ci);
350 add_compiled_collation(&my_charset_utf16_roman_uca_ci);
351 add_compiled_collation(&my_charset_utf16_persian_uca_ci);
352 add_compiled_collation(&my_charset_utf16_esperanto_uca_ci);
353 add_compiled_collation(&my_charset_utf16_hungarian_uca_ci);
354 add_compiled_collation(&my_charset_utf16_croatian_uca_ci);
355 add_compiled_collation(&my_charset_utf16_sinhala_uca_ci);
356 add_compiled_collation(&my_charset_utf16_unicode_520_ci);
357 add_compiled_collation(&my_charset_utf16_vietnamese_ci);
362 #ifdef HAVE_CHARSET_utf32
363 add_compiled_collation(&my_charset_utf32_general_ci);
364 add_compiled_collation(&my_charset_utf32_bin);
365 #ifdef HAVE_UCA_COLLATIONS
366 add_compiled_collation(&my_charset_utf32_unicode_ci);
367 add_compiled_collation(&my_charset_utf32_german2_uca_ci);
368 add_compiled_collation(&my_charset_utf32_icelandic_uca_ci);
369 add_compiled_collation(&my_charset_utf32_latvian_uca_ci);
370 add_compiled_collation(&my_charset_utf32_romanian_uca_ci);
371 add_compiled_collation(&my_charset_utf32_slovenian_uca_ci);
372 add_compiled_collation(&my_charset_utf32_polish_uca_ci);
373 add_compiled_collation(&my_charset_utf32_estonian_uca_ci);
374 add_compiled_collation(&my_charset_utf32_spanish_uca_ci);
375 add_compiled_collation(&my_charset_utf32_swedish_uca_ci);
376 add_compiled_collation(&my_charset_utf32_turkish_uca_ci);
377 add_compiled_collation(&my_charset_utf32_czech_uca_ci);
378 add_compiled_collation(&my_charset_utf32_danish_uca_ci);
379 add_compiled_collation(&my_charset_utf32_lithuanian_uca_ci);
380 add_compiled_collation(&my_charset_utf32_slovak_uca_ci);
381 add_compiled_collation(&my_charset_utf32_spanish2_uca_ci);
382 add_compiled_collation(&my_charset_utf32_roman_uca_ci);
383 add_compiled_collation(&my_charset_utf32_persian_uca_ci);
384 add_compiled_collation(&my_charset_utf32_esperanto_uca_ci);
385 add_compiled_collation(&my_charset_utf32_hungarian_uca_ci);
386 add_compiled_collation(&my_charset_utf32_croatian_uca_ci);
387 add_compiled_collation(&my_charset_utf32_sinhala_uca_ci);
388 add_compiled_collation(&my_charset_utf32_unicode_520_ci);
389 add_compiled_collation(&my_charset_utf32_vietnamese_ci);
394 for (cs=compiled_charsets; cs->name; cs++)
395 add_compiled_collation(cs);