summaryrefslogtreecommitdiff
path: root/mysys/charset.c
diff options
context:
space:
mode:
authorunknown <bar@bar.mysql.r18.ru>2003-01-29 15:08:09 +0400
committerunknown <bar@bar.mysql.r18.ru>2003-01-29 15:08:09 +0400
commit2c2b14f9a2ca44e9e0d5c4eeb16f63305a4d535c (patch)
tree8f169a00789a20a5778e1bd68b7cc7ae9e045e55 /mysys/charset.c
parent231553039f63832fda515edfb80670de178da794 (diff)
downloadmariadb-git-2c2b14f9a2ca44e9e0d5c4eeb16f63305a4d535c.tar.gz
Reorganization to restore generating charset C files from conf files
Diffstat (limited to 'mysys/charset.c')
-rw-r--r--mysys/charset.c72
1 files changed, 72 insertions, 0 deletions
diff --git a/mysys/charset.c b/mysys/charset.c
index b1d20925eae..c85db725b42 100644
--- a/mysys/charset.c
+++ b/mysys/charset.c
@@ -314,6 +314,76 @@ char *get_charsets_dir(char *buf)
DBUG_RETURN(strend(buf));
}
+CHARSET_INFO *all_charsets[256];
+CHARSET_INFO *default_charset_info = &compiled_charsets[0];
+CHARSET_INFO *system_charset_info = &compiled_charsets[0];
+
+#define MY_ADD_CHARSET(x) all_charsets[(x)->number]=(x)
+
+
+static my_bool init_compiled_charsets(myf flags __attribute__((unused)))
+{
+ CHARSET_INFO *cs;
+
+ MY_ADD_CHARSET(my_charset_bin);
+
+#ifdef HAVE_CHARSET_big5
+ MY_ADD_CHARSET(&my_charset_big5);
+#endif
+
+#ifdef HAVE_CHARSET_czech
+ MY_ADD_CHARSET(&my_charset_czech);
+#endif
+
+#ifdef HAVE_CHARSET_euc_kr
+ MY_ADD_CHARSET(&my_charset_euc_kr);
+#endif
+
+#ifdef HAVE_CHARSET_gb2312
+ MY_ADD_CHARSET(&my_charset_gb2312);
+#endif
+
+#ifdef HAVE_CHARSET_gbk
+ MY_ADD_CHARSET(&my_charset_gbk);
+#endif
+
+#ifdef HAVE_CHARSET_latin1_de
+ MY_ADD_CHARSET(&my_charset_latin1_de);
+#endif
+
+#ifdef HAVE_CHARSET_sjis
+ MY_ADD_CHARSET(&my_charset_sjis);
+#endif
+
+#ifdef HAVE_CHARSET_tis620
+ MY_ADD_CHARSET(&my_charset_tis620);
+#endif
+
+#ifdef HAVE_CHARSET_ucs2
+ MY_ADD_CHARSET(&my_charset_ucs2);
+#endif
+
+#ifdef HAVE_CHARSET_ujis
+ MY_ADD_CHARSET(&my_charset_ujis);
+#endif
+
+#ifdef HAVE_CHARSET_utf8
+ MY_ADD_CHARSET(&my_charset_utf8);
+#endif
+
+#ifdef HAVE_CHARSET_win1250ch
+ MY_ADD_CHARSET(&my_charset_win1250ch);
+#endif
+
+ /* Copy compiled charsets */
+ for (cs=compiled_charsets; cs->name; cs++)
+ {
+ all_charsets[cs->number]=cs;
+ }
+
+ return FALSE;
+}
+
static my_bool init_available_charsets(myf myflags)
{
char fname[FN_REFLEN];
@@ -607,3 +677,5 @@ char *list_charsets(myf want_flags)
return p;
}
+
+