mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
New win1250ch charset
This commit is contained in:
parent
32ac1ef044
commit
08665a17e0
7 changed files with 60 additions and 7 deletions
|
@ -98,6 +98,7 @@
|
|||
#undef HAVE_CHARSET_usa7
|
||||
#undef HAVE_CHARSET_utf8
|
||||
#undef HAVE_CHARSET_win1250
|
||||
#undef HAVE_CHARSET_win1250ch
|
||||
#undef HAVE_CHARSET_win1251ukr
|
||||
#undef HAVE_CHARSET_win1251
|
||||
|
||||
|
|
|
@ -1933,9 +1933,9 @@ CHARSETS_AVAILABLE="armscii8 big5 cp1251 cp1257
|
|||
croat czech danish dec8 dos estonia euc_kr gb2312 gbk
|
||||
german1 greek hebrew hp8 hungarian koi8_ru koi8_ukr
|
||||
latin1 latin1_de latin2 latin5 sjis swe7 tis620 ujis
|
||||
usa7 utf8 win1250 win1251ukr"
|
||||
usa7 utf8 win1250 win1250ch win1251ukr"
|
||||
CHARSETS_DEPRECATED="win1251"
|
||||
CHARSETS_COMPLEX="big5 czech euc_kr gb2312 gbk latin1_de sjis tis620 ujis utf8"
|
||||
CHARSETS_COMPLEX="big5 czech euc_kr gb2312 gbk latin1_de sjis tis620 ujis utf8 win1250ch"
|
||||
DEFAULT_CHARSET=latin1
|
||||
AC_DIVERT_POP
|
||||
|
||||
|
@ -2071,6 +2071,9 @@ do
|
|||
win1250)
|
||||
AC_DEFINE(HAVE_CHARSET_win1250)
|
||||
;;
|
||||
win1250ch)
|
||||
AC_DEFINE(HAVE_CHARSET_win1250ch)
|
||||
;;
|
||||
win1251)
|
||||
AC_DEFINE(HAVE_CHARSET_win1251)
|
||||
;;
|
||||
|
|
|
@ -158,6 +158,21 @@ extern my_bool my_like_range_czech(CHARSET_INFO *,
|
|||
char *, char *, uint *, uint *);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAVE_CHARSET_win1250ch
|
||||
/* declarations for the win1250ch character set */
|
||||
extern uchar ctype_win1250ch[];
|
||||
extern uchar to_lower_win1250ch[];
|
||||
extern uchar to_upper_win1250ch[];
|
||||
extern uchar sort_order_win1250ch[];
|
||||
extern int my_strnncoll_win1250ch(CHARSET_INFO *, const uchar *, uint, const uchar *, uint);
|
||||
extern int my_strnxfrm_win1250ch(CHARSET_INFO *, uchar *, uint, const uchar *, uint);
|
||||
extern my_bool my_like_range_win1250ch(CHARSET_INFO *,
|
||||
const char *, uint, pchar, uint,
|
||||
char *, char *, uint *, uint *);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAVE_CHARSET_euc_kr
|
||||
/* declarations for the euc_kr character set */
|
||||
extern uchar ctype_euc_kr[], to_lower_euc_kr[], to_upper_euc_kr[], sort_order_euc_kr[];
|
||||
|
|
|
@ -39,7 +39,7 @@ mystringsobjects = strmov.lo strxmov.lo strxnmov.lo strnmov.lo \
|
|||
bchange.lo bmove.lo bmove_upp.lo longlong2str.lo \
|
||||
strtoull.lo strtoll.lo llstr.lo \
|
||||
ctype.lo ctype-simple.lo ctype-mb.lo \
|
||||
ctype-big5.lo ctype-czech.lo ctype-euc_kr.lo \
|
||||
ctype-big5.lo ctype-czech.lo ctype-euc_kr.lo ctype-win1250ch.lo\
|
||||
ctype-gb2312.lo ctype-gbk.lo ctype-latin1_de.lo \
|
||||
ctype-sjis.lo ctype-tis620.lo ctype-ujis.lo ctype-utf8.lo
|
||||
|
||||
|
|
|
@ -38,3 +38,4 @@ latin5 30
|
|||
latin1_de 31
|
||||
armscii8 32
|
||||
utf8 33
|
||||
win1250ch 34
|
||||
|
|
|
@ -22,26 +22,26 @@ pkglib_LIBRARIES = libmystrings.a
|
|||
# Exact one of ASSEMBLER_X
|
||||
if ASSEMBLER_x86
|
||||
ASRCS = strings-x86.s longlong2str-x86.s
|
||||
CSRCS = bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.c ctype-utf8.c
|
||||
CSRCS = bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.c ctype-utf8.c ctype-win1250ch.c
|
||||
else
|
||||
if ASSEMBLER_sparc
|
||||
# These file MUST all be on the same line!! Otherwise automake
|
||||
# generats a very broken makefile
|
||||
ASRCS = bmove_upp-sparc.s strappend-sparc.s strend-sparc.s strinstr-sparc.s strmake-sparc.s strmov-sparc.s strnmov-sparc.s strstr-sparc.s strxmov-sparc.s
|
||||
CSRCS = strcont.c strfill.c strcend.c is_prefix.c longlong2str.c bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.cctype-utf8.c
|
||||
CSRCS = strcont.c strfill.c strcend.c is_prefix.c longlong2str.c bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.c ctype-utf8.c ctype-win1250ch.c
|
||||
else
|
||||
#no assembler
|
||||
ASRCS =
|
||||
# These file MUST all be on the same line!! Otherwise automake
|
||||
# generats a very broken makefile
|
||||
CSRCS = strxmov.c bmove_upp.c strappend.c strcont.c strend.c strfill.c strcend.c is_prefix.c strstr.c strinstr.c strmake.c strnmov.c strmov.c longlong2str.c bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.c ctype-utf8.c
|
||||
CSRCS = strxmov.c bmove_upp.c strappend.c strcont.c strend.c strfill.c strcend.c is_prefix.c strstr.c strinstr.c strmake.c strnmov.c strmov.c longlong2str.c bfill.c bmove.c bmove512.c bchange.c strxnmov.c int2str.c str2int.c r_strinstr.c atof.c bcmp.c strtol.c strtoul.c strtoll.c strtoull.c llstr.c strnlen.c ctype.c ctype-simple.c ctype-mb.c ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-gb2312.c ctype-gbk.c ctype-latin1_de.c ctype-sjis.c ctype-tis620.c ctype-ujis.c ctype-utf8.c ctype-win1250ch.c
|
||||
endif
|
||||
endif
|
||||
|
||||
libmystrings_a_SOURCES = $(ASRCS) $(CSRCS)
|
||||
noinst_PROGRAMS = conf_to_src
|
||||
# Default charset definitions
|
||||
EXTRA_DIST = ctype-big5.c ctype-czech.c ctype-euc_kr.c \
|
||||
EXTRA_DIST = ctype-big5.c ctype-czech.c ctype-euc_kr.c ctype-win1250ch.c \
|
||||
ctype-gb2312.c ctype-gbk.c ctype-sjis.c ctype-utf8.c \
|
||||
ctype-tis620.c ctype-ujis.c ctype-latin1_de.c \
|
||||
strto.c strings-x86.s longlong2str-x86.s \
|
||||
|
|
|
@ -2527,6 +2527,9 @@ static uchar sort_order_win1250[] = {
|
|||
88, 65, 65, 65, 65, 80, 69, 67, 68, 73, 73, 73, 73, 77, 77, 70,
|
||||
71, 83, 83, 85, 85, 85, 85,247, 88, 92, 92, 92, 92, 96, 91,255
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_CHARSET_win1250)||defined(HAVE_CHARSET_win1250ch)
|
||||
|
||||
static uint16 tab_cp1250_uni[256]={
|
||||
0,0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007,
|
||||
|
@ -3790,6 +3793,36 @@ CHARSET_INFO compiled_charsets[] = {
|
|||
},
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CHARSET_win1250ch
|
||||
{
|
||||
34, /* number */
|
||||
"win1250ch", /* name */
|
||||
ctype_win1250ch,
|
||||
to_lower_win1250ch,
|
||||
to_upper_win1250ch,
|
||||
sort_order_win1250ch,
|
||||
tab_cp1250_uni, /* tab_to_uni */
|
||||
idx_uni_cp1250, /* tab_from_uni */
|
||||
2, /* strxfrm_multiply */
|
||||
my_strnncoll_win1250ch,
|
||||
my_strnxfrm_win1250ch,
|
||||
my_like_range_win1250ch,
|
||||
0, /* mbmaxlen */
|
||||
NULL, /* ismbchar */
|
||||
NULL, /* ismbhead */
|
||||
NULL, /* mbcharlen */
|
||||
my_mb_wc_8bit, /* mb_wc */
|
||||
my_wc_mb_8bit, /* wc_mb */
|
||||
my_caseup_str_8bit,
|
||||
my_casedn_str_8bit,
|
||||
my_caseup_8bit,
|
||||
my_casedn_8bit,
|
||||
my_strcasecmp_8bit,
|
||||
my_strncasecmp_8bit,
|
||||
0
|
||||
},
|
||||
#endif
|
||||
|
||||
{
|
||||
0, /* end-of-list marker */
|
||||
NullS,
|
||||
|
|
Loading…
Reference in a new issue