summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Widenius <monty@askmonty.org>2011-12-13 20:08:41 +0200
committerMichael Widenius <monty@askmonty.org>2011-12-13 20:08:41 +0200
commit1a985a17c064eb25a69b5936547752b2df7bda9a (patch)
tree871d81eb4747f3bba2d863a8eab466d6093c9ffe
parent33c26f78428d30e1ca860803e5e0142ca41f8b61 (diff)
parenta3e8ce275c9de6e01bce1c0d4a44e0a4b9a8b867 (diff)
downloadmariadb-git-1a985a17c064eb25a69b5936547752b2df7bda9a.tar.gz
Merge with 5.1
Updated version number in configure
-rw-r--r--config/ac-macros/readline.m439
-rw-r--r--configure.in31
-rw-r--r--sql/sql_derived.cc2
-rw-r--r--sql/sql_show.cc9
-rw-r--r--storage/pbxt/src/lock_xt.h8
5 files changed, 61 insertions, 28 deletions
diff --git a/config/ac-macros/readline.m4 b/config/ac-macros/readline.m4
index e1ed8420bfb..9e62d9add3e 100644
--- a/config/ac-macros/readline.m4
+++ b/config/ac-macros/readline.m4
@@ -40,23 +40,44 @@ AC_DEFUN([MYSQL_CHECK_LIBEDIT_INTERFACE], [
])
AC_DEFUN([MYSQL_CHECK_NEW_RL_INTERFACE], [
- AC_CACHE_CHECK([defined rl_compentry_func_t and rl_completion_func_t], mysql_cv_new_rl_interface,
- AC_TRY_COMPILE(
- [
+ AC_CACHE_CHECK([for system libreadline], mysql_cv_new_rl_interface,
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE([
#include "stdio.h"
#include "readline/readline.h"
- ],
- [
rl_completion_func_t *func1= (rl_completion_func_t*)0;
rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
- ],
+ ])],
[
- mysql_cv_new_rl_interface=yes
- AC_DEFINE_UNQUOTED([USE_NEW_READLINE_INTERFACE], [1],
- [used new readline interface (are rl_completion_func_t and rl_compentry_func_t defined)])
+ AC_PREPROC_IFELSE(
+ [AC_LANG_SOURCE([
+ #include "stdio.h"
+ #include "readline/readline.h"
+ #if RL_VERSION_MAJOR > 5
+ #error
+ #endif
+ ])], [ rl_v5=yes ], [ rl_v5=no ],
+ )
+ if [test "$rl_v5" = "yes"]
+ then
+ mysql_cv_new_rl_interface=yes
+ else
+ if [test "$enable_distribution" = "yes"]
+ then
+ mysql_cv_new_rl_interface=no
+ else
+ mysql_cv_new_rl_interface=yes
+ enable_distribution=warn
+ fi
+ fi
],
[mysql_cv_new_rl_interface=no]
)
+ if [test "$mysql_cv_new_rl_interface" = yes]
+ then
+ AC_DEFINE_UNQUOTED([USE_NEW_READLINE_INTERFACE], [1],
+ [used new readline interface (are rl_completion_func_t and rl_compentry_func_t defined)])
+ fi
)
])
diff --git a/configure.in b/configure.in
index 51e1da541eb..a592fb76a0e 100644
--- a/configure.in
+++ b/configure.in
@@ -13,7 +13,7 @@ dnl When changing the major version number please also check the switch
dnl statement in mysqlbinlog::check_master_version(). You may also need
dnl to update version.c in ndb.
-AC_INIT([MariaDB Server], [5.2.10-MariaDB], [], [mysql])
+AC_INIT([MariaDB Server], [5.2.11-MariaDB], [], [mysql])
AC_CONFIG_SRCDIR([sql/mysqld.cc])
AC_CANONICAL_SYSTEM
@@ -633,6 +633,14 @@ AC_ARG_WITH(other-libc,
)
AC_SUBST(NOINST_LDFLAGS)
+AC_ARG_ENABLE(distribution,
+ AC_HELP_STRING(
+ [--disable-distribution],
+ [Allow linking with system GPLv3 libraries. It may result in a binary that can not be legally distributed.]),
+ [ enable_distribution=$enableval ],
+ [ enable_distribution=yes ]
+ )
+
#
# Check if we are using Linux and a glibc compiled with static nss
# (this is true on the MySQL build machines to avoid NSS problems)
@@ -1574,7 +1582,7 @@ fi
AC_MSG_CHECKING([for OpenSolaris Bug 6611808])
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror"
-AC_COMPILE_IFELSE([
+AC_COMPILE_IFELSE([AC_LANG_SOURCE([
#include <pthread.h>
void dummy() {}
int main()
@@ -1583,7 +1591,7 @@ AC_COMPILE_IFELSE([
pthread_once(&once_control, dummy);
return 0;
}
-], [
+])], [
AC_DEFINE([PTHREAD_ONCE_INITIALIZER], [{PTHREAD_ONCE_INIT}],
[See OpenSolaris Bug 6611808])
AC_MSG_RESULT([yes])
@@ -2723,6 +2731,8 @@ case $SYSTEM_TYPE in
compile_libedit=yes
AC_DEFINE_UNQUOTED(HAVE_HIST_ENTRY, 1)
AC_DEFINE_UNQUOTED(USE_LIBEDIT_INTERFACE, 1)
+ AC_MSG_CHECKING([for libedit/readline])
+ AC_MSG_RESULT([libedit bundled])
elif test "$with_readline" = "yes"
then
readline_topdir="cmd-line-utils"
@@ -2733,6 +2743,8 @@ case $SYSTEM_TYPE in
compile_readline=yes
want_to_use_readline="yes"
AC_DEFINE_UNQUOTED(USE_NEW_READLINE_INTERFACE, 1)
+ AC_MSG_CHECKING([for libedit/readline])
+ AC_MSG_RESULT([readline bundled])
else
# Use system readline library
AC_LANG_SAVE
@@ -2747,12 +2759,16 @@ case $SYSTEM_TYPE in
# this way we avoid linking commercial source with GPL readline
readline_link="-lreadline"
want_to_use_readline="yes"
+ AC_MSG_CHECKING([for libedit/readline])
+ AC_MSG_RESULT([readline system])
elif [test "$mysql_cv_libedit_interface" = "yes"]
then
# Use libedit
readline_link="-ledit"
+ AC_MSG_CHECKING([for libedit/readline])
+ AC_MSG_RESULT([libedit system])
else
- AC_MSG_ERROR([Could not find system readline or libedit libraries
+ AC_MSG_ERROR([Could not find usable system readline or libedit libraries
Use --with-readline or --with-libedit to use the bundled
versions of libedit or readline])
fi
@@ -2997,6 +3013,13 @@ if test X"$with_plugin_ndbcluster" = Xyes ; then
echo for more details.
fi
+if test "$enable_distribution" = "warn"
+then
+ echo "You have linked MariaDB with GPLv3 libraries!"
+ echo "You may not distribute the resulting binary. If you do, you will "
+ echo "put yourself into a legal problem with Free Software Foundation."
+fi
+
# The first line "Thank you ..." is checked in ./Do-compile to verify that configure
# ended sucessfully - don't remove it.
echo ""
diff --git a/sql/sql_derived.cc b/sql/sql_derived.cc
index 3eb89f65f40..713a9d86863 100644
--- a/sql/sql_derived.cc
+++ b/sql/sql_derived.cc
@@ -211,8 +211,6 @@ exit:
}
orig_table_list->derived_result= derived_result;
orig_table_list->table= table;
- orig_table_list->table_name= table->s->table_name.str;
- orig_table_list->table_name_length= table->s->table_name.length;
table->derived_select_number= first_select->select_number;
table->s->tmp_table= NON_TRANSACTIONAL_TMP_TABLE;
#ifndef NO_EMBEDDED_ACCESS_CHECKS
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index e90c3141f84..5bbc337c761 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -760,7 +760,6 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
Protocol *protocol= thd->protocol;
char buff[2048];
String buffer(buff, sizeof(buff), system_charset_info);
- char *save_db, *save_table_name;
bool retval= TRUE; // Assume error
List<Item> field_list;
DBUG_ENTER("mysqld_show_create");
@@ -770,10 +769,6 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
/* We want to preserve the tree for views. */
thd->lex->context_analysis_only|= CONTEXT_ANALYSIS_ONLY_VIEW;
- /* Store original names if called from SP */
- save_db= table_list->db;
- save_table_name= table_list->table_name;
-
{
Show_create_error_handler view_error_suppressor(thd, table_list);
thd->push_internal_handler(&view_error_suppressor);
@@ -856,11 +851,7 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
retval= FALSE; // ok
error:
- /* Restore table list if called by stored procedure */
- table_list->db= save_db;
- table_list->table_name= save_table_name;
DBUG_RETURN(retval);
-
}
bool mysqld_show_create_db(THD *thd, char *dbname,
diff --git a/storage/pbxt/src/lock_xt.h b/storage/pbxt/src/lock_xt.h
index 28737478d48..002636e3ffa 100644
--- a/storage/pbxt/src/lock_xt.h
+++ b/storage/pbxt/src/lock_xt.h
@@ -67,9 +67,9 @@ inline void xt_atomic_inc1(volatile xtWord1 *mptr)
#elif defined(XT_ATOMIC_GNUC_X86)
xtWord1 val;
- asm volatile ("movb %1,%0" : "=r" (val) : "m" (*mptr) : "memory");
+ asm volatile ("movb %1,%0" : "=q" (val) : "m" (*mptr) : "memory");
val++;
- asm volatile ("xchgb %1,%0" : "=r" (val) : "m" (*mptr), "0" (val) : "memory");
+ asm volatile ("xchgb %1,%0" : "=q" (val) : "m" (*mptr), "0" (val) : "memory");
#elif defined(XT_ATOMIC_SOLARIS_LIB)
atomic_inc_8(mptr);
#else
@@ -91,9 +91,9 @@ inline xtWord1 xt_atomic_dec1(volatile xtWord1 *mptr)
#elif defined(XT_ATOMIC_GNUC_X86)
xtWord1 val2;
- asm volatile ("movb %1, %0" : "=r" (val) : "m" (*mptr) : "memory");
+ asm volatile ("movb %1, %0" : "=q" (val) : "m" (*mptr) : "memory");
val--;
- asm volatile ("xchgb %1,%0" : "=r" (val2) : "m" (*mptr), "0" (val) : "memory");
+ asm volatile ("xchgb %1,%0" : "=q" (val2) : "m" (*mptr), "0" (val) : "memory");
/* Should work, but compiler makes a mistake?
* asm volatile ("xchgb %1, %0" : : "r" (val), "m" (*mptr) : "memory");
*/