summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <bar@mysql.com>2007-03-29 10:03:59 +0500
committerunknown <bar@mysql.com>2007-03-29 10:03:59 +0500
commit3f7bf3177a4cef3695f11289e920b6f39f7e9a4b (patch)
treea0205a3dd092829d3fa2563973e04f31f8b9c032
parent88418ebddf584e0604216422043e00108b3efb80 (diff)
parent89ba36de99a84eb5fcb2d0eb64091c48f65f0d6d (diff)
downloadmariadb-git-3f7bf3177a4cef3695f11289e920b6f39f7e9a4b.tar.gz
Merge mysql.com:/home/bar/mysql-5.0.b22378
into mysql.com:/home/bar/mysql-5.1-new-rpl strings/ctype-utf8.c: Auto merged BUILD/compile-pentium-debug-max: After merge fix
-rwxr-xr-xBUILD/compile-pentium-debug-max2
-rw-r--r--config/ac-macros/character_sets.m413
-rw-r--r--strings/ctype-utf8.c7
3 files changed, 20 insertions, 2 deletions
diff --git a/BUILD/compile-pentium-debug-max b/BUILD/compile-pentium-debug-max
index adb9b7899a5..b2c8b4d9331 100755
--- a/BUILD/compile-pentium-debug-max
+++ b/BUILD/compile-pentium-debug-max
@@ -4,6 +4,6 @@ path=`dirname $0`
. "$path/SETUP.sh" "$@" --with-debug=full
extra_flags="$pentium_cflags $debug_cflags"
-extra_configs="$pentium_configs $debug_configs $max_configs $error_inject"
+extra_configs="$pentium_configs $debug_configs $max_configs $error_inject --with-experimental-collations"
. "$path/FINISH.sh"
diff --git a/config/ac-macros/character_sets.m4 b/config/ac-macros/character_sets.m4
index 1ab6e7dd780..8c3e8ca73b7 100644
--- a/config/ac-macros/character_sets.m4
+++ b/config/ac-macros/character_sets.m4
@@ -429,3 +429,16 @@ then
else
AC_MSG_RESULT(no)
fi
+
+
+# Shall we build experimental collations
+AC_ARG_WITH(experimental-collations,
+ [],
+ [with_exp_coll=$withval],
+ [with_exp_coll=no]
+)
+
+if test "$with_exp_coll" = "yes"
+then
+ AC_DEFINE([HAVE_UTF8_GENERAL_CS], [1], [certain Japanese customer])
+fi
diff --git a/strings/ctype-utf8.c b/strings/ctype-utf8.c
index 0536d445533..16882e9b25d 100644
--- a/strings/ctype-utf8.c
+++ b/strings/ctype-utf8.c
@@ -2769,6 +2769,7 @@ static int my_strnncoll_utf8_cs(CHARSET_INFO *cs,
const uchar *te=t+tlen;
int save_diff = 0;
int diff;
+ MY_UNICASE_INFO **uni_plane= cs->caseinfo;
while ( s < se && t < te )
{
@@ -2805,13 +2806,16 @@ static int my_strnncoll_utf8_cs(CHARSET_INFO *cs,
static int my_strnncollsp_utf8_cs(CHARSET_INFO *cs,
const uchar *s, uint slen,
- const uchar *t, uint tlen)
+ const uchar *t, uint tlen,
+ my_bool diff_if_only_endspace_difference
+ __attribute__((unused)))
{
int s_res,t_res;
my_wc_t s_wc,t_wc;
const uchar *se= s+slen;
const uchar *te= t+tlen;
int save_diff = 0;
+ MY_UNICASE_INFO **uni_plane= cs->caseinfo;
while ( s < se && t < te )
{
@@ -2880,6 +2884,7 @@ static MY_COLLATION_HANDLER my_collation_cs_handler =
my_strnncoll_utf8_cs,
my_strnncollsp_utf8_cs,
my_strnxfrm_utf8,
+ my_strnxfrmlen_utf8,
my_like_range_simple,
my_wildcmp_mb,
my_strcasecmp_utf8,