mySQL 5.0.11 sources for tomato
[tomato.git] / release / src / router / mysql / mysys / charset-def.c
blob1e5c125418cc4df4acc89db60547ab22745305b6
1 /* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 of the License.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
16 #include "mysys_priv.h"
19 Include all compiled character sets into the client
20 If a client don't want to use all of them, he can define his own
21 init_compiled_charsets() that only adds those that he wants
24 #ifdef HAVE_UCA_COLLATIONS
26 #ifdef HAVE_CHARSET_ucs2
27 extern CHARSET_INFO my_charset_ucs2_icelandic_uca_ci;
28 extern CHARSET_INFO my_charset_ucs2_latvian_uca_ci;
29 extern CHARSET_INFO my_charset_ucs2_romanian_uca_ci;
30 extern CHARSET_INFO my_charset_ucs2_slovenian_uca_ci;
31 extern CHARSET_INFO my_charset_ucs2_polish_uca_ci;
32 extern CHARSET_INFO my_charset_ucs2_estonian_uca_ci;
33 extern CHARSET_INFO my_charset_ucs2_spanish_uca_ci;
34 extern CHARSET_INFO my_charset_ucs2_swedish_uca_ci;
35 extern CHARSET_INFO my_charset_ucs2_turkish_uca_ci;
36 extern CHARSET_INFO my_charset_ucs2_czech_uca_ci;
37 extern CHARSET_INFO my_charset_ucs2_danish_uca_ci;
38 extern CHARSET_INFO my_charset_ucs2_lithuanian_uca_ci;
39 extern CHARSET_INFO my_charset_ucs2_slovak_uca_ci;
40 extern CHARSET_INFO my_charset_ucs2_spanish2_uca_ci;
41 extern CHARSET_INFO my_charset_ucs2_roman_uca_ci;
42 extern CHARSET_INFO my_charset_ucs2_persian_uca_ci;
43 extern CHARSET_INFO my_charset_ucs2_esperanto_uca_ci;
44 extern CHARSET_INFO my_charset_ucs2_hungarian_uca_ci;
45 #endif
47 #ifdef HAVE_CHARSET_utf8
48 extern CHARSET_INFO my_charset_utf8_icelandic_uca_ci;
49 extern CHARSET_INFO my_charset_utf8_latvian_uca_ci;
50 extern CHARSET_INFO my_charset_utf8_romanian_uca_ci;
51 extern CHARSET_INFO my_charset_utf8_slovenian_uca_ci;
52 extern CHARSET_INFO my_charset_utf8_polish_uca_ci;
53 extern CHARSET_INFO my_charset_utf8_estonian_uca_ci;
54 extern CHARSET_INFO my_charset_utf8_spanish_uca_ci;
55 extern CHARSET_INFO my_charset_utf8_swedish_uca_ci;
56 extern CHARSET_INFO my_charset_utf8_turkish_uca_ci;
57 extern CHARSET_INFO my_charset_utf8_czech_uca_ci;
58 extern CHARSET_INFO my_charset_utf8_danish_uca_ci;
59 extern CHARSET_INFO my_charset_utf8_lithuanian_uca_ci;
60 extern CHARSET_INFO my_charset_utf8_slovak_uca_ci;
61 extern CHARSET_INFO my_charset_utf8_spanish2_uca_ci;
62 extern CHARSET_INFO my_charset_utf8_roman_uca_ci;
63 extern CHARSET_INFO my_charset_utf8_persian_uca_ci;
64 extern CHARSET_INFO my_charset_utf8_esperanto_uca_ci;
65 extern CHARSET_INFO my_charset_utf8_hungarian_uca_ci;
66 #ifdef HAVE_UTF8_GENERAL_CS
67 extern CHARSET_INFO my_charset_utf8_general_cs;
68 #endif
69 #endif
71 #endif /* HAVE_UCA_COLLATIONS */
73 my_bool init_compiled_charsets(myf flags __attribute__((unused)))
75 CHARSET_INFO *cs;
77 add_compiled_collation(&my_charset_bin);
78 add_compiled_collation(&my_charset_filename);
80 add_compiled_collation(&my_charset_latin1);
81 add_compiled_collation(&my_charset_latin1_bin);
82 add_compiled_collation(&my_charset_latin1_german2_ci);
84 #ifdef HAVE_CHARSET_big5
85 add_compiled_collation(&my_charset_big5_chinese_ci);
86 add_compiled_collation(&my_charset_big5_bin);
87 #endif
89 #ifdef HAVE_CHARSET_cp1250
90 add_compiled_collation(&my_charset_cp1250_czech_ci);
91 #endif
93 #ifdef HAVE_CHARSET_cp932
94 add_compiled_collation(&my_charset_cp932_japanese_ci);
95 add_compiled_collation(&my_charset_cp932_bin);
96 #endif
98 #ifdef HAVE_CHARSET_latin2
99 add_compiled_collation(&my_charset_latin2_czech_ci);
100 #endif
102 #ifdef HAVE_CHARSET_eucjpms
103 add_compiled_collation(&my_charset_eucjpms_japanese_ci);
104 add_compiled_collation(&my_charset_eucjpms_bin);
105 #endif
107 #ifdef HAVE_CHARSET_euckr
108 add_compiled_collation(&my_charset_euckr_korean_ci);
109 add_compiled_collation(&my_charset_euckr_bin);
110 #endif
112 #ifdef HAVE_CHARSET_gb2312
113 add_compiled_collation(&my_charset_gb2312_chinese_ci);
114 add_compiled_collation(&my_charset_gb2312_bin);
115 #endif
117 #ifdef HAVE_CHARSET_gbk
118 add_compiled_collation(&my_charset_gbk_chinese_ci);
119 add_compiled_collation(&my_charset_gbk_bin);
120 #endif
122 #ifdef HAVE_CHARSET_sjis
123 add_compiled_collation(&my_charset_sjis_japanese_ci);
124 add_compiled_collation(&my_charset_sjis_bin);
125 #endif
127 #ifdef HAVE_CHARSET_tis620
128 add_compiled_collation(&my_charset_tis620_thai_ci);
129 add_compiled_collation(&my_charset_tis620_bin);
130 #endif
132 #ifdef HAVE_CHARSET_ucs2
133 add_compiled_collation(&my_charset_ucs2_general_ci);
134 add_compiled_collation(&my_charset_ucs2_bin);
135 add_compiled_collation(&my_charset_ucs2_general_mysql500_ci);
136 #ifdef HAVE_UCA_COLLATIONS
137 add_compiled_collation(&my_charset_ucs2_unicode_ci);
138 add_compiled_collation(&my_charset_ucs2_icelandic_uca_ci);
139 add_compiled_collation(&my_charset_ucs2_latvian_uca_ci);
140 add_compiled_collation(&my_charset_ucs2_romanian_uca_ci);
141 add_compiled_collation(&my_charset_ucs2_slovenian_uca_ci);
142 add_compiled_collation(&my_charset_ucs2_polish_uca_ci);
143 add_compiled_collation(&my_charset_ucs2_estonian_uca_ci);
144 add_compiled_collation(&my_charset_ucs2_spanish_uca_ci);
145 add_compiled_collation(&my_charset_ucs2_swedish_uca_ci);
146 add_compiled_collation(&my_charset_ucs2_turkish_uca_ci);
147 add_compiled_collation(&my_charset_ucs2_czech_uca_ci);
148 add_compiled_collation(&my_charset_ucs2_danish_uca_ci);
149 add_compiled_collation(&my_charset_ucs2_lithuanian_uca_ci);
150 add_compiled_collation(&my_charset_ucs2_slovak_uca_ci);
151 add_compiled_collation(&my_charset_ucs2_spanish2_uca_ci);
152 add_compiled_collation(&my_charset_ucs2_roman_uca_ci);
153 add_compiled_collation(&my_charset_ucs2_persian_uca_ci);
154 add_compiled_collation(&my_charset_ucs2_esperanto_uca_ci);
155 add_compiled_collation(&my_charset_ucs2_hungarian_uca_ci);
156 #endif
157 #endif
159 #ifdef HAVE_CHARSET_ujis
160 add_compiled_collation(&my_charset_ujis_japanese_ci);
161 add_compiled_collation(&my_charset_ujis_bin);
162 #endif
164 #ifdef HAVE_CHARSET_utf8
165 add_compiled_collation(&my_charset_utf8_general_ci);
166 add_compiled_collation(&my_charset_utf8_bin);
167 add_compiled_collation(&my_charset_utf8_general_mysql500_ci);
168 #ifdef HAVE_UTF8_GENERAL_CS
169 add_compiled_collation(&my_charset_utf8_general_cs);
170 #endif
171 #ifdef HAVE_UCA_COLLATIONS
172 add_compiled_collation(&my_charset_utf8_unicode_ci);
173 add_compiled_collation(&my_charset_utf8_icelandic_uca_ci);
174 add_compiled_collation(&my_charset_utf8_latvian_uca_ci);
175 add_compiled_collation(&my_charset_utf8_romanian_uca_ci);
176 add_compiled_collation(&my_charset_utf8_slovenian_uca_ci);
177 add_compiled_collation(&my_charset_utf8_polish_uca_ci);
178 add_compiled_collation(&my_charset_utf8_estonian_uca_ci);
179 add_compiled_collation(&my_charset_utf8_spanish_uca_ci);
180 add_compiled_collation(&my_charset_utf8_swedish_uca_ci);
181 add_compiled_collation(&my_charset_utf8_turkish_uca_ci);
182 add_compiled_collation(&my_charset_utf8_czech_uca_ci);
183 add_compiled_collation(&my_charset_utf8_danish_uca_ci);
184 add_compiled_collation(&my_charset_utf8_lithuanian_uca_ci);
185 add_compiled_collation(&my_charset_utf8_slovak_uca_ci);
186 add_compiled_collation(&my_charset_utf8_spanish2_uca_ci);
187 add_compiled_collation(&my_charset_utf8_roman_uca_ci);
188 add_compiled_collation(&my_charset_utf8_persian_uca_ci);
189 add_compiled_collation(&my_charset_utf8_esperanto_uca_ci);
190 add_compiled_collation(&my_charset_utf8_hungarian_uca_ci);
191 #endif
192 #endif
194 /* Copy compiled charsets */
195 for (cs=compiled_charsets; cs->name; cs++)
196 add_compiled_collation(cs);
198 return FALSE;