[Libreoffice-commits] core.git: 2 commits - config_host.mk.in configure.ac external/libmariadb external/mysqlcppconn mysqlc/Extension_mysql-connector-ooo.mk mysqlc/Library_mysqlc.mk mysqlc/source

Lionel Elie Mamane lionel at mamane.lu
Sat Oct 19 14:04:33 PDT 2013


 config_host.mk.in                               |    3 
 configure.ac                                    |   43 
 external/libmariadb/README                      |   16 
 external/libmariadb/StaticLibrary_mariadb.mk    |  170 
 external/libmariadb/UnpackedTarball_mariadb.mk  |    8 
 external/libmariadb/configs/linux_my_config.h   |   87 
 external/libmariadb/configs/mysql_version.h     |   10 
 external/libmariadb/mariadb-msvc.patch.1        |    4 
 external/libmariadb/mariadb-static-inline.patch |   11 
 external/libmariadb/mariadb-thread.patch        |   12 
 external/libmariadb/mariadb-trunk-101.patch     |242797 ++++++++++++++++++++++++
 external/libmariadb/mariadb-trunk-40.patch      |152418 ---------------
 external/mysqlcppconn/Library_mysqlcppconn.mk   |    1 
 mysqlc/Extension_mysql-connector-ooo.mk         |    6 
 mysqlc/Library_mysqlc.mk                        |    2 
 mysqlc/source/mysqlc_driver.cxx                 |   23 
 mysqlc/source/mysqlc_driver.hxx                 |    4 
 17 files changed, 243017 insertions(+), 152598 deletions(-)

New commits:
commit 02a11749da521e8e2099b464c0fcbebce9e95e22
Author: Lionel Elie Mamane <lionel at mamane.lu>
Date:   Sat Oct 19 22:57:40 2013 +0200

    fdo#70496 revert to using libmysqlclient
    
    Change-Id: I5b98b5e7840e4f1c6005aee0c1f43ef814ecf77b

diff --git a/config_host.mk.in b/config_host.mk.in
index aba2735..3c89137 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -357,6 +357,9 @@ export MARIADBC_MICRO=@MARIADBC_MICRO@
 export MARIADBC_MINOR=@MARIADBC_MINOR@
 export MARIADB_CFLAGS=$(gb_SPACE)@MARIADB_CFLAGS@
 export MARIADB_LIBS=$(gb_SPACE)@MARIADB_LIBS@
+export LIBMARIADB=@LIBMARIADB@
+export LIBMARIADB_PATH=@LIBMARIADB_PATH@
+export BUNDLE_MARIADB=@BUNDLE_MARIADB@
 export MD5SUM=@MD5SUM@
 export MDDS_CPPFLAGS=$(gb_SPACE)@MDDS_CPPFLAGS@
 export MERGELIBS=@MERGELIBS@
diff --git a/configure.ac b/configure.ac
index 02a1687..3f3d809 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1520,6 +1520,11 @@ AC_ARG_WITH(system-mariadb,
          extension.]),,
     [with_system_mariadb="$with_system_libs"])
 
+AC_ARG_ENABLE(bundle-mariadb,
+    AS_HELP_STRING([--enable-bundle-mariadb],
+        [When using MariaDB/MySQL libraries already on system, bundle them with the MariaDB Connector/LibreOffice extension.])
+)
+
 AC_ARG_WITH(system-mysql-cppconn,
     AS_HELP_STRING([--with-system-mysql-cppconn],
         [Use MySQL C++ Connector libraries already on system.]),,
@@ -8185,11 +8190,12 @@ if test "$ENABLE_MARIADBC" = "TRUE"; then
     if test "$with_system_mariadb" = "yes"; then
         AC_MSG_RESULT([external])
         SYSTEM_MARIADB=YES
-        AC_PATH_PROG(MARIADBCONFIG, [mariadb_config])
+        #AC_PATH_PROG(MARIADBCONFIG, [mariadb_config])
         if test -z "$MARIADBCONFIG"; then
             AC_PATH_PROG(MARIADBCONFIG, [mysql_config])
             if test -z "$MARIADBCONFIG"; then
-                AC_MSG_ERROR([mariadb_config and mysql_config are missing. Install MariaDB or MySQL package.])
+                #AC_MSG_ERROR([mariadb_config and mysql_config are missing. Install MariaDB or MySQL package.])
+                AC_MSG_ERROR([mysql_config is missing. Install MySQL client library development package.])
             fi
         fi
         AC_MSG_CHECKING([MariaDB version])
@@ -8202,10 +8208,36 @@ if test "$ENABLE_MARIADBC" = "TRUE"; then
         fi
         AC_MSG_CHECKING([for MariaDB Client library])
         MARIADB_CFLAGS=`$MARIADBCONFIG --cflags`
-        MARIADB_LIBS=`$MARIADBCONFIG --libs`
-        AC_MSG_RESULT([includes $MARIADB_CFLAGS, libraries $MARIADB_LIBS])
+        MARIADB_LIBS=`$MARIADBCONFIG --libs_r`
+        AC_MSG_RESULT([includes '$MARIADB_CFLAGS', libraries '$MARIADB_LIBS'])
+        AC_MSG_CHECKING([whether to bundle the MySQL/MariaDB client library])
+        if test "$enable_bundle_mariadb" = "yes"; then
+            AC_MSG_RESULT([yes])
+            BUNDLE_MARIADB=YES
+            LIBMARIADB=lib$(echo "${MARIADB_LIBS}" | sed -e 's/[[[:space:]]]\+-l/\n/g' | grep -E '(mysqlclient|mariadb)')
+            if test "$_os" = "Darwin"; then
+                LIBMARIADB=${LIBMARIADB}.dylib
+            elif test "$_os" = "WINNT"; then
+                LIBMARIADB=${LIBMARIADB}.dll
+            else
+                LIBMARIADB=${LIBMARIADB}.so
+            fi
+            LIBMARIADB_PATH=$($MARIADBCONFIG --variable=pkglibdir)
+            AC_MSG_CHECKING([for $LIBMARIADB in $LIBMARIADB_PATH])
+            if test -e "$LIBMARIADB_PATH/$LIBMARIADB"; then
+                AC_MSG_RESULT([found.])
+                PathFormat "$LIBMARIADB_PATH"
+                LIBMARIADB_PATH="$formatted_path"
+            else
+                AC_MSG_ERROR([not found.])
+            fi
+        else
+            AC_MSG_RESULT([no])
+            BUNDLE_MARIADB=NO
+        fi
     else
         AC_MSG_RESULT([internal])
+        AC_MSG_ERROR([libmariadb is known to be broken as of 2013-10; use libmysqlclient])
         SYSTEM_MARIADB=NO
         MARIADB_CFLAGS="-I${WORKDIR}/UnpackedTarball/mariadb/include"
         MARIADB_LIBS="-L${WORKDIR}/LinkTarget/StaticLibrary -lmariadblib"
@@ -8215,6 +8247,9 @@ if test "$ENABLE_MARIADBC" = "TRUE"; then
     AC_SUBST(SYSTEM_MARIADB)
     AC_SUBST(MARIADB_CFLAGS)
     AC_SUBST(MARIADB_LIBS)
+    AC_SUBST(LIBMARIADB)
+    AC_SUBST(LIBMARIADB_PATH)
+    AC_SUBST(BUNDLE_MARIADB)
 
     AC_LANG_PUSH([C++])
     dnl ===================================================================
diff --git a/external/mysqlcppconn/Library_mysqlcppconn.mk b/external/mysqlcppconn/Library_mysqlcppconn.mk
index adebc5b..eccc521 100644
--- a/external/mysqlcppconn/Library_mysqlcppconn.mk
+++ b/external/mysqlcppconn/Library_mysqlcppconn.mk
@@ -12,7 +12,6 @@ $(eval $(call gb_Library_Library,mysqlcppconn))
 $(eval $(call gb_Library_use_unpacked,mysqlcppconn,mysqlcppconn))
 
 $(eval $(call gb_Library_use_externals,mysqlcppconn, \
-	mysql \
 	boost_headers \
 	mariadb \
 ))
diff --git a/mysqlc/Extension_mysql-connector-ooo.mk b/mysqlc/Extension_mysql-connector-ooo.mk
index 810ede5..d949057 100644
--- a/mysqlc/Extension_mysql-connector-ooo.mk
+++ b/mysqlc/Extension_mysql-connector-ooo.mk
@@ -26,4 +26,10 @@ ifeq ($(SYSTEM_MYSQL_CPPCONN),NO)
 $(eval $(call gb_Extension_add_library,mysql-connector-ooo,mysqlcppconn))
 endif
 
+ifeq ($(BUNDLE_MARIADB),YES)
+$(eval $(call gb_Extension_add_files,mysql-connector-ooo,,\
+       $(LIBMARIADB_PATH)/$(LIBMARIADB) \
+))
+endif
+
 # vim: set noet sw=4 ts=4:
diff --git a/mysqlc/Library_mysqlc.mk b/mysqlc/Library_mysqlc.mk
index 72787fc..00c35e3 100644
--- a/mysqlc/Library_mysqlc.mk
+++ b/mysqlc/Library_mysqlc.mk
@@ -42,6 +42,8 @@ $(eval $(call gb_Library_add_defs,mysqlc,\
 	-DMARIADBC_VERSION_MICRO=$(MARIADBC_MICRO) \
 	$(if $(filter NO,$(SYSTEM_MYSQL_CPPCONN)),\
 	-DCPPCONN_LIB=\"$(call gb_Library_get_runtime_filename,mysqlcppconn)\") \
+	$(if $(filter YES,$(BUNDLE_MARIADB)),\
+	-DBUNDLE_MARIADB=\"$(LIBMARIADB)\") \
 ))
 
 $(eval $(call gb_Library_add_exception_objects,mysqlc,\
diff --git a/mysqlc/source/mysqlc_driver.cxx b/mysqlc/source/mysqlc_driver.cxx
index abd2977..f6181e7 100644
--- a/mysqlc/source/mysqlc_driver.cxx
+++ b/mysqlc/source/mysqlc_driver.cxx
@@ -143,9 +143,30 @@ void MysqlCDriver::impl_initCppConn_lck_throw()
 #ifdef SYSTEM_MYSQL_CPPCONN
     cppDriver = get_driver_instance();
 #else
+#ifdef BUNDLE_MARIADB
+    if ( !m_bAttemptedLoadCConn )
+    {
+        const OUString sModuleName(BUNDLE_MARIADB);
+        m_hCConnModule = osl_loadModuleRelative( &thisModule, sModuleName.pData, 0 );
+        m_bAttemptedLoadCConn = true;
+    }
+
+    // attempted to load - was it successful?
+    if ( !m_hCConnModule )
+    {
+        OSL_FAIL( "MysqlCDriver::impl_initCppConn_lck_throw: could not load the " BUNDLE_MARIADB " library!");
+        throw SQLException(
+            OUString( "Unable to load the " BUNDLE_MARIADB " library."  ),
+            *this,
+            OUString( "08001"  ),  // "unable to connect"
+            0,
+            Any()
+        );
+    }
+#endif
     if ( !m_bAttemptedLoadCppConn )
     {
-        const OUString sModuleName(CPPCONN_LIB );
+        const OUString sModuleName(CPPCONN_LIB);
         m_hCppConnModule = osl_loadModuleRelative( &thisModule, sModuleName.pData, 0 );
         m_bAttemptedLoadCppConn = true;
     }
diff --git a/mysqlc/source/mysqlc_driver.hxx b/mysqlc/source/mysqlc_driver.hxx
index 0c14e8a..d63ed05 100644
--- a/mysqlc/source/mysqlc_driver.hxx
+++ b/mysqlc/source/mysqlc_driver.hxx
@@ -63,6 +63,10 @@ namespace connectivity
                                             // of all the Connection objects
                                             // for this Driver
 #ifndef SYSTEM_MYSQL_CPPCONN
+#ifdef BUNDLE_MARIADB
+            oslModule       m_hCConnModule;
+            bool            m_bAttemptedLoadCConn;
+#endif
             oslModule       m_hCppConnModule;
             bool            m_bAttemptedLoadCppConn;
 #endif
commit 96953171bf0503a89611b7c518668f749fe14425
Author: Lionel Elie Mamane <lionel at mamane.lu>
Date:   Sat Oct 19 16:28:37 2013 +0200

    update libmariadb to bzr revision 101
    
    Change-Id: I98b7442aa9843f206549ad7c5a2ae141b70b1542

diff --git a/external/libmariadb/README b/external/libmariadb/README
new file mode 100644
index 0000000..03a1138
--- /dev/null
+++ b/external/libmariadb/README
@@ -0,0 +1,16 @@
+Update to new upstream bzr snapshot:
+
+Don't use 'bzr diff', it will not put renames in the diff in a way
+that patch understands.
+
+bzr -Ossl.cert_reqs=none branch lp:mariadb-native-client
+mv mariadb-native-client mariadb-native-client.trunk
+cp -R mariadb-native-client.trunk mariadb-native-client.release
+cd mariadb-native-client.release
+bzr revert -r mariadb-native-client-1.0.0
+cd ..
+diff -x .bzr -u --recursive -N mariadb-native-client.release/ mariadb-native-client.trunk/  > /path/to/libreoffice_tree/libmariadb/mariadb-trunk-NNN.patch
+sed -i -e 's@^\([+-]\{3\} \)mariadb-native-client.\(trunk\|release\)/@\1mariadb/@' /path/to/libreoffice_tree/libmariadb/mariadb-trunk-NNN.patch
+dos2unix -f /path/to/libreoffice_tree/libmariadb/mariadb-trunk-NNN.patch
+
+regenerate configs
\ No newline at end of file
diff --git a/external/libmariadb/StaticLibrary_mariadb.mk b/external/libmariadb/StaticLibrary_mariadb.mk
index 1174c97..b0434a4 100644
--- a/external/libmariadb/StaticLibrary_mariadb.mk
+++ b/external/libmariadb/StaticLibrary_mariadb.mk
@@ -21,94 +21,92 @@ $(eval $(call gb_StaticLibrary_set_include,mariadblib,\
 # This is needed for MSVC 2008: it somehow finds a dlopen somewhere
 # but the static library then contains unreferenced symbols.
 # This macro enables a re-definition to native Win32 APIs in my_global.h.
-$(eval $(call gb_StaticLibrary_add_cflags,mariadblib,-DHAVE_DLOPEN))
+## TODO missing enable: -DHAVE_OPENSSL -D HAVE_COMPRESS
+## (but then need to add "-lssl -lcrypto -lz" to mysqlcppconn linking)
+$(eval $(call gb_StaticLibrary_add_cflags,mariadblib,-DHAVE_DLOPEN -D ENABLED_LOCAL_INFILE -D LIBMARIADB -D THREAD -DSQLITE_ENABLE_COLUMN_METADATA=1))
 
 $(eval $(call gb_StaticLibrary_add_generated_cobjects,mariadblib,\
-    UnpackedTarball/mariadb/libmysql/array \
-    UnpackedTarball/mariadb/libmysql/bchange \
-    UnpackedTarball/mariadb/libmysql/bmove \
-    UnpackedTarball/mariadb/libmysql/bmove_upp \
-    UnpackedTarball/mariadb/libmysql/charset \
-    UnpackedTarball/mariadb/libmysql/client_plugin \
-    UnpackedTarball/mariadb/libmysql/dbug \
-    UnpackedTarball/mariadb/libmysql/default \
-    UnpackedTarball/mariadb/libmysql/errmsg \
-    UnpackedTarball/mariadb/libmysql/errors \
-    UnpackedTarball/mariadb/libmysql/getopt \
-    UnpackedTarball/mariadb/libmysql/getopt1 \
-    UnpackedTarball/mariadb/libmysql/get_password \
-    UnpackedTarball/mariadb/libmysql/int2str \
-    UnpackedTarball/mariadb/libmysql/is_prefix \
-    UnpackedTarball/mariadb/libmysql/libmysql \
-    UnpackedTarball/mariadb/libmysql/list \
-    UnpackedTarball/mariadb/libmysql/llstr \
-    UnpackedTarball/mariadb/libmysql/longlong2str \
-    UnpackedTarball/mariadb/libmysql/mf_dirname \
-    UnpackedTarball/mariadb/libmysql/mf_fn_ext \
-    UnpackedTarball/mariadb/libmysql/mf_format \
-    UnpackedTarball/mariadb/libmysql/mf_loadpath \
-    UnpackedTarball/mariadb/libmysql/mf_pack \
-    UnpackedTarball/mariadb/libmysql/mf_path \
-    UnpackedTarball/mariadb/libmysql/mf_tempfile \
-    UnpackedTarball/mariadb/libmysql/mf_unixpath \
-    UnpackedTarball/mariadb/libmysql/mf_wcomp \
-    UnpackedTarball/mariadb/libmysql/mulalloc \
-    UnpackedTarball/mariadb/libmysql/my_alloc \
-    UnpackedTarball/mariadb/libmysql/my_auth \
-    UnpackedTarball/mariadb/libmysql/my_charset \
-    UnpackedTarball/mariadb/libmysql/my_compress \
-    UnpackedTarball/mariadb/libmysql/my_create \
-    UnpackedTarball/mariadb/libmysql/my_delete \
-    UnpackedTarball/mariadb/libmysql/my_div \
-    UnpackedTarball/mariadb/libmysql/my_error \
-    UnpackedTarball/mariadb/libmysql/my_fopen \
-    UnpackedTarball/mariadb/libmysql/my_fstream \
-    UnpackedTarball/mariadb/libmysql/my_gethostbyname \
-    UnpackedTarball/mariadb/libmysql/my_getwd \
-    UnpackedTarball/mariadb/libmysql/my_init \
-    UnpackedTarball/mariadb/libmysql/my_lib \
-    UnpackedTarball/mariadb/libmysql/my_loaddata \
-    UnpackedTarball/mariadb/libmysql/my_malloc \
-    UnpackedTarball/mariadb/libmysql/my_messnc \
-    UnpackedTarball/mariadb/libmysql/my_net \
-    UnpackedTarball/mariadb/libmysql/my_once \
-    UnpackedTarball/mariadb/libmysql/my_open \
-    UnpackedTarball/mariadb/libmysql/my_port \
-    UnpackedTarball/mariadb/libmysql/my_pthread \
-    UnpackedTarball/mariadb/libmysql/my_read \
-    UnpackedTarball/mariadb/libmysql/my_realloc \
-    UnpackedTarball/mariadb/libmysql/my_secure \
-    UnpackedTarball/mariadb/libmysql/my_seek \
-    UnpackedTarball/mariadb/libmysql/my_static \
-    UnpackedTarball/mariadb/libmysql/my_stmt \
-    UnpackedTarball/mariadb/libmysql/my_stmt_codec \
-    UnpackedTarball/mariadb/libmysql/my_symlink \
-    UnpackedTarball/mariadb/libmysql/my_thr_init \
-    UnpackedTarball/mariadb/libmysql/my_vsnprintf \
-    UnpackedTarball/mariadb/libmysql/my_write \
-    UnpackedTarball/mariadb/libmysql/net \
-    UnpackedTarball/mariadb/libmysql/password \
-    UnpackedTarball/mariadb/libmysql/safemalloc \
-    UnpackedTarball/mariadb/libmysql/sha1 \
-    UnpackedTarball/mariadb/libmysql/str2int \
-    UnpackedTarball/mariadb/libmysql/strcend \
-    UnpackedTarball/mariadb/libmysql/strcont \
-    UnpackedTarball/mariadb/libmysql/strend \
-    UnpackedTarball/mariadb/libmysql/strfill \
-    UnpackedTarball/mariadb/libmysql/string \
-    UnpackedTarball/mariadb/libmysql/strinstr \
-    UnpackedTarball/mariadb/libmysql/strmake \
-    UnpackedTarball/mariadb/libmysql/strmov \
-    UnpackedTarball/mariadb/libmysql/strnlen \
-    UnpackedTarball/mariadb/libmysql/strnmov \
-    UnpackedTarball/mariadb/libmysql/strto \
-    UnpackedTarball/mariadb/libmysql/strtoll \
-    UnpackedTarball/mariadb/libmysql/strtoull \
-    UnpackedTarball/mariadb/libmysql/strxmov \
-    UnpackedTarball/mariadb/libmysql/strxnmov \
-    UnpackedTarball/mariadb/libmysql/thr_mutex \
-    UnpackedTarball/mariadb/libmysql/typelib \
-    UnpackedTarball/mariadb/libmysql/violite \
+	UnpackedTarball/mariadb/libmariadb/array \
+	UnpackedTarball/mariadb/libmariadb/ma_dyncol \
+	UnpackedTarball/mariadb/libmariadb/bchange \
+	UnpackedTarball/mariadb/libmariadb/bmove \
+	UnpackedTarball/mariadb/libmariadb/bmove_upp \
+	UnpackedTarball/mariadb/libmariadb/my_charset \
+	UnpackedTarball/mariadb/libmariadb/hash \
+	UnpackedTarball/mariadb/libmariadb/violite \
+	UnpackedTarball/mariadb/libmariadb/net \
+	UnpackedTarball/mariadb/libmariadb/charset \
+	UnpackedTarball/mariadb/libmariadb/ma_time \
+	UnpackedTarball/mariadb/libmariadb/dbug \
+	UnpackedTarball/mariadb/libmariadb/default \
+	UnpackedTarball/mariadb/libmariadb/errmsg \
+	UnpackedTarball/mariadb/libmariadb/my_vsnprintf \
+	UnpackedTarball/mariadb/libmariadb/errors \
+	UnpackedTarball/mariadb/libmariadb/getopt1 \
+	UnpackedTarball/mariadb/libmariadb/getopt \
+	UnpackedTarball/mariadb/libmariadb/get_password \
+	UnpackedTarball/mariadb/libmariadb/int2str \
+	UnpackedTarball/mariadb/libmariadb/is_prefix \
+	UnpackedTarball/mariadb/libmariadb/libmariadb \
+	UnpackedTarball/mariadb/libmariadb/list \
+	UnpackedTarball/mariadb/libmariadb/llstr \
+	UnpackedTarball/mariadb/libmariadb/longlong2str \
+	UnpackedTarball/mariadb/libmariadb/mf_dirname \
+	UnpackedTarball/mariadb/libmariadb/mf_fn_ext \
+	UnpackedTarball/mariadb/libmariadb/mf_format \
+	UnpackedTarball/mariadb/libmariadb/mf_loadpath \
+	UnpackedTarball/mariadb/libmariadb/mf_pack \
+	UnpackedTarball/mariadb/libmariadb/mf_path \
+	UnpackedTarball/mariadb/libmariadb/mf_unixpath \
+	UnpackedTarball/mariadb/libmariadb/mf_wcomp \
+	UnpackedTarball/mariadb/libmariadb/mulalloc \
+	UnpackedTarball/mariadb/libmariadb/my_alloc \
+	UnpackedTarball/mariadb/libmariadb/my_compress \
+	UnpackedTarball/mariadb/libmariadb/my_div \
+	UnpackedTarball/mariadb/libmariadb/my_error \
+	UnpackedTarball/mariadb/libmariadb/my_fopen \
+	UnpackedTarball/mariadb/libmariadb/my_fstream \
+	UnpackedTarball/mariadb/libmariadb/my_getwd \
+	UnpackedTarball/mariadb/libmariadb/my_init \
+	UnpackedTarball/mariadb/libmariadb/my_lib \
+	UnpackedTarball/mariadb/libmariadb/my_malloc \
+	UnpackedTarball/mariadb/libmariadb/my_messnc \
+	UnpackedTarball/mariadb/libmariadb/my_net \
+	UnpackedTarball/mariadb/libmariadb/my_once \
+	UnpackedTarball/mariadb/libmariadb/my_open \
+	UnpackedTarball/mariadb/libmariadb/my_port \
+	UnpackedTarball/mariadb/libmariadb/my_pthread \
+	UnpackedTarball/mariadb/libmariadb/my_read \
+	UnpackedTarball/mariadb/libmariadb/my_realloc \
+	UnpackedTarball/mariadb/libmariadb/my_seek \
+	UnpackedTarball/mariadb/libmariadb/my_static \
+	UnpackedTarball/mariadb/libmariadb/my_symlink \
+	UnpackedTarball/mariadb/libmariadb/my_thr_init \
+	UnpackedTarball/mariadb/libmariadb/my_write \
+	UnpackedTarball/mariadb/libmariadb/password \
+	UnpackedTarball/mariadb/libmariadb/str2int \
+	UnpackedTarball/mariadb/libmariadb/strcend \
+	UnpackedTarball/mariadb/libmariadb/strcont \
+	UnpackedTarball/mariadb/libmariadb/strend \
+	UnpackedTarball/mariadb/libmariadb/strfill \
+	UnpackedTarball/mariadb/libmariadb/string \
+	UnpackedTarball/mariadb/libmariadb/strinstr \
+	UnpackedTarball/mariadb/libmariadb/strmake \
+	UnpackedTarball/mariadb/libmariadb/strmov \
+	UnpackedTarball/mariadb/libmariadb/strnmov \
+	UnpackedTarball/mariadb/libmariadb/strtoll \
+	UnpackedTarball/mariadb/libmariadb/strtoull \
+	UnpackedTarball/mariadb/libmariadb/strxmov \
+	UnpackedTarball/mariadb/libmariadb/strxnmov \
+	UnpackedTarball/mariadb/libmariadb/thr_mutex \
+	UnpackedTarball/mariadb/libmariadb/typelib \
+	UnpackedTarball/mariadb/libmariadb/sha1 \
+	UnpackedTarball/mariadb/libmariadb/my_stmt \
+	UnpackedTarball/mariadb/libmariadb/my_loaddata \
+	UnpackedTarball/mariadb/libmariadb/my_stmt_codec \
+	UnpackedTarball/mariadb/libmariadb/client_plugin \
+	UnpackedTarball/mariadb/libmariadb/my_auth \
+	UnpackedTarball/mariadb/libmariadb/ma_secure \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libmariadb/UnpackedTarball_mariadb.mk b/external/libmariadb/UnpackedTarball_mariadb.mk
index a198440..489477c 100644
--- a/external/libmariadb/UnpackedTarball_mariadb.mk
+++ b/external/libmariadb/UnpackedTarball_mariadb.mk
@@ -27,15 +27,9 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,mariadb,1))
 # <https://mariadb.atlassian.net/browse/CONC-18> "no external definition of
 # non-static inline local_thr_alarm in libmariadb/net.c":
 $(eval $(call gb_UnpackedTarball_add_patches,mariadb,\
-    external/libmariadb/mariadb-thread.patch \
     external/libmariadb/mariadb-swap.patch \
-    external/libmariadb/mariadb-trunk-40.patch \
-    external/libmariadb/mariadb-static-inline.patch \
+    external/libmariadb/mariadb-trunk-101.patch \
     external/libmariadb/mariadb-msvc.patch.1 \
 ))
 
-$(eval $(call gb_UnpackedTarball_fix_end_of_line,mariadb,\
-	libmysql/libmysql_exports.def \
-))
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/libmariadb/configs/linux_my_config.h b/external/libmariadb/configs/linux_my_config.h
index 6007d85..a52a62c 100644
--- a/external/libmariadb/configs/linux_my_config.h
+++ b/external/libmariadb/configs/linux_my_config.h
@@ -1,6 +1,4 @@
 
-#define HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE 1
-
 /*
  * Include file constants (processed in LibmysqlIncludeFiles.txt 1
  */
@@ -60,7 +58,7 @@
 /* #undef HAVE_BFILL */
 /* #undef HAVE_BMOVE */
 #define HAVE_BZERO 1
-/* #undef HAVE_CLOCK_GETTIME */
+#define HAVE_CLOCK_GETTIME 1
 /* #undef HAVE_COMPRESS */
 /* #undef HAVE_CRYPT */
 #define HAVE_DLERROR 1
@@ -69,7 +67,7 @@
 #define HAVE_FCNTL 1
 /* #undef HAVE_FCONVERT */
 #define HAVE_FDATASYNC 1
-/* #undef HAVE_FESETROUND */
+#define HAVE_FESETROUND 1
 #define HAVE_FINITE 1
 #define HAVE_FSEEKO 1
 #define HAVE_FSYNC 1
@@ -91,7 +89,7 @@
 #define HAVE_INITGROUPS 1
 #define HAVE_LDIV 1
 #define HAVE_LOCALTIME_R 1
-/* #undef HAVE_LOG2 */
+#define HAVE_LOG2 1
 #define HAVE_LONGJMP 1
 #define HAVE_LSTAT 1
 #define HAVE_MADVISE 1
@@ -108,19 +106,19 @@
 #define HAVE_POLL 1
 #define HAVE_PREAD 1
 /* #undef HAVE_PTHREAD_ATTR_CREATE */
-/* #undef HAVE_PTHREAD_ATTR_GETSTACKSIZE */
+#define HAVE_PTHREAD_ATTR_GETSTACKSIZE 1
 /* #undef HAVE_PTHREAD_ATTR_SETPRIO */
 #define HAVE_PTHREAD_ATTR_SETSCHEDPARAM 1
 #define HAVE_PTHREAD_ATTR_SETSCOPE 1
-/* #undef HAVE_PTHREAD_ATTR_SETSTACKSIZE */
+#define HAVE_PTHREAD_ATTR_SETSTACKSIZE 1
 /* #undef HAVE_PTHREAD_CONDATTR_CREATE */
 /* #undef HAVE_PTHREAD_INIT */
-/* #undef HAVE_PTHREAD_KEY_DELETE */
-/* #undef HAVE_PTHREAD_KILL */
-/* #undef HAVE_PTHREAD_RWLOCK_RDLOCK */
+#define HAVE_PTHREAD_KEY_DELETE 1
+#define HAVE_PTHREAD_KILL 1
+#define HAVE_PTHREAD_RWLOCK_RDLOCK 1
 /* #undef HAVE_PTHREAD_SETPRIO_NP */
 #define HAVE_PTHREAD_SETSCHEDPARAM 1
-/* #undef HAVE_PTHREAD_SIGMASK */
+#define HAVE_PTHREAD_SIGMASK 1
 /* #undef HAVE_PTHREAD_THREADMASK */
 /* #undef HAVE_PTHREAD_YIELD_NP */
 #define HAVE_READDIR_R 1
@@ -137,6 +135,7 @@
 #define HAVE_SIGWAIT 1
 #define HAVE_SLEEP 1
 #define HAVE_SNPRINTF 1
+/* #undef HAVE_SQLITE */
 #define HAVE_STPCPY 1
 #define HAVE_STRERROR 1
 /* #undef HAVE_STRLCPY */
@@ -160,127 +159,107 @@
  */
 /* Types we may use */
 #define SIZEOF_CHAR 1
-#ifdef SIZEOF_CHAR
+#if SIZEOF_CHAR
 # define HAVE_CHAR 1
 #endif
 
-#if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__)
 #define SIZEOF_CHARP 8
-#else
-#define SIZEOF_CHARP 4
-#endif
-#ifdef SIZEOF_CHARP
+#if SIZEOF_CHARP
 # define HAVE_CHARP 1
 #endif
 
 #define SIZEOF_SHORT 2
-#ifdef SIZEOF_SHORT
+#if SIZEOF_SHORT
 # define HAVE_SHORT 1
 #endif
 
 #define SIZEOF_INT 4
-#ifdef SIZEOF_INT
+#if SIZEOF_INT
 # define HAVE_INT 1
 #endif
 
-#if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__)
 #define SIZEOF_LONG 8
-#else
-#define SIZEOF_LONG 4
-#endif
-#ifdef SIZEOF_LONG
+#if SIZEOF_LONG
 # define HAVE_LONG 1
 #endif
 
 #define SIZEOF_LONG_LONG 8
-#ifdef SIZEOF_LONG_LONG
+#if SIZEOF_LONG_LONG
 # define HAVE_LONG_LONG 1
 #endif
 
-#if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__)
 #define SIZEOF_OFF_T 8
-#else
-#define SIZEOF_OFF_T 4
-#endif
-#ifdef SIZEOF_OFF_T
+#if SIZEOF_OFF_T
 # define HAVE_OFF_T 1
 #endif
 
 #define SIZEOF_SIGSET_T 128
-#ifdef SIZEOF_SIGSET_T
+#if SIZEOF_SIGSET_T
 # define HAVE_SIGSET_T 1
 #endif
 
-#if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__)
 #define SIZEOF_SIZE_T 8
-#else
-#define SIZEOF_SIZE_T 4
-#endif
-#ifdef SIZEOF_SIZE_T
+#if SIZEOF_SIZE_T
 # define HAVE_SIZE_T 1
 #endif
 
 /* #undef SIZEOF_UCHAR */
-#ifdef SIZEOF_UCHAR
+#if SIZEOF_UCHAR
 # define HAVE_UCHAR 1
 #endif
 
 #define SIZEOF_UINT 4
-#ifdef SIZEOF_UINT
+#if SIZEOF_UINT
 # define HAVE_UINT 1
 #endif
 
-#if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__)
 #define SIZEOF_ULONG 8
-#else
-#define SIZEOF_ULONG 4
-#endif
-#ifdef SIZEOF_ULONG
+#if SIZEOF_ULONG
 # define HAVE_ULONG 1
 #endif
 
 /* #undef SIZEOF_INT8 */
-#ifdef SIZEOF_INT8
+#if SIZEOF_INT8
 # define HAVE_INT8 1
 #endif
 /* #undef SIZEOF_UINT8 */
-#ifdef SIZEOF_UINT8
+#if SIZEOF_UINT8
 # define HAVE_UINT8 1
 #endif
 
 /* #undef SIZEOF_INT16 */
-#ifdef SIZEOF_INT16
+#if SIZEOF_INT16
 # define HAVE_INT16 1
 #endif
 /* #undef SIZEOF_UINT16 */
-#ifdef SIZEOF_UINT16
+#if SIZEOF_UINT16
 # define HAVE_UINT16 1
 #endif
 
 /* #undef SIZEOF_INT32 */
-#ifdef SIZEOF_INT32
+#if SIZEOF_INT32
 # define HAVE_INT32 1
 #endif
 /* #undef SIZEOF_UINT32 */
-#ifdef SIZEOF_UINT32
+#if SIZEOF_UINT32
 # define HAVE_UINT32 1
 #endif
 /* #undef SIZEOF_U_INT32_T */
-#ifdef SIZEOF_U_INT32_T
+#if SIZEOF_U_INT32_T
 # define HAVE_U_INT32_T 1
 #endif
 
 /* #undef SIZEOF_INT64 */
-#ifdef SIZEOF_INT64
+#if SIZEOF_INT64
 # define HAVE_INT64 1
 #endif
 /* #undef SIZEOF_UINT64 */
-#ifdef SIZEOF_UINT64
+#if SIZEOF_UINT64
 # define HAVE_UINT64 1
 #endif
 
 /* #undef SIZEOF_SOCKLEN_T */
-#ifdef SIZEOF_SOCKLEN_T
+#if SIZEOF_SOCKLEN_T
 # define HAVE_SOCKLEN_T 1
 #endif
 
@@ -295,3 +274,5 @@
 /* #undef HAVE_THREADS */
 #define SHAREDIR "share"
 #define DEFAULT_CHARSET_HOME "/usr/local"
+#define PLUGINDIR "/usr/local/lib/plugin"
+
diff --git a/external/libmariadb/configs/mysql_version.h b/external/libmariadb/configs/mysql_version.h
index 26120a9..050e861 100644
--- a/external/libmariadb/configs/mysql_version.h
+++ b/external/libmariadb/configs/mysql_version.h
@@ -7,15 +7,19 @@
 #include <custom_conf.h>
 #else
 #define PROTOCOL_VERSION 10
-#define MYSQL_CLIENT_VERSION "5.3.2"
-#define MYSQL_SERVER_VERSION "5.3.2"
+#define MYSQL_CLIENT_VERSION "5.5.0"
+#define MYSQL_SERVER_VERSION "5.5.0"
 #define MYSQL_SERVER_SUFFIX ""
 #define FRM_VER
-#define MYSQL_VERSION_ID 50302
+#define MYSQL_VERSION_ID 50500
 #define MYSQL_PORT 3306
 #define MYSQL_UNIX_ADDR "/tmp/mysql.sock"
 #define MYSQL_CONFIG_NAME "my"
 
+#define MARIADB_PACKAGE_VERSION "1.1.2"
+#define MARIADB_SYSTEM_TYPE "Linux"
+#define MARIADB_MACHINE_TYPE "x86_64"
+
 /* mysqld compile time options */
 #ifndef MYSQL_CHARSET
 #define MYSQL_CHARSET ""
diff --git a/external/libmariadb/mariadb-msvc.patch.1 b/external/libmariadb/mariadb-msvc.patch.1
index 60fddae..b88f00f 100644
--- a/external/libmariadb/mariadb-msvc.patch.1
+++ b/external/libmariadb/mariadb-msvc.patch.1
@@ -1,5 +1,5 @@
---- mariadb/libmysql/my_pthread.c.orig	2013-04-17 15:45:52.025896770 +0200
-+++ mariadb/libmysql/my_pthread.c	2013-04-17 15:47:32.292895908 +0200
+--- mariadb/libmariadb/my_pthread.c.orig	2013-04-17 15:45:52.025896770 +0200
++++ mariadb/libmariadb/my_pthread.c	2013-04-17 15:47:32.292895908 +0200
 @@ -28,6 +28,10 @@
  
  #ifdef _WIN32
diff --git a/external/libmariadb/mariadb-static-inline.patch b/external/libmariadb/mariadb-static-inline.patch
deleted file mode 100644
index c82266b..0000000
--- a/external/libmariadb/mariadb-static-inline.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mariadb/libmysql/net.c	2013-03-15 21:05:15.551769966 +0100
-+++ mariadb/libmysql/net.c	2013-03-15 21:26:13.543332306 +0100
-@@ -75,7 +75,7 @@
- #define thr_alarm_in_use(A) (*(A))
- #define thr_end_alarm(A)
- #define thr_alarm(A,B,C) local_thr_alarm((A),(B),(C))
--inline int local_thr_alarm(my_bool *A,int B __attribute__((unused)),ALARM *C __attribute__((unused)))
-+static inline int local_thr_alarm(my_bool *A,int B __attribute__((unused)),ALARM *C __attribute__((unused)))
- {
-   *A=1;
-   return 0;
diff --git a/external/libmariadb/mariadb-thread.patch b/external/libmariadb/mariadb-thread.patch
deleted file mode 100644
index 997929f..0000000
--- a/external/libmariadb/mariadb-thread.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- mariadb/libmysql/client_plugin.c	2013-03-06 17:06:42.548905989 +0100
-+++ mariadb/libmysql/client_plugin.c	2013-03-06 17:14:29.721588964 +0100
-@@ -175,7 +175,9 @@
-     goto err2;
-   }
- 
-+#ifdef THREAD
-   safe_mutex_assert_owner(&LOCK_load_client_plugin);
-+#endif
- 
-   p->next= plugin_list[plugin->type];
-   plugin_list[plugin->type]= p;
diff --git a/external/libmariadb/mariadb-trunk-40.patch b/external/libmariadb/mariadb-trunk-101.patch
similarity index 66%
rename from external/libmariadb/mariadb-trunk-40.patch
rename to external/libmariadb/mariadb-trunk-101.patch
index 968a750..a5a74a5 100644
--- a/external/libmariadb/mariadb-trunk-40.patch
+++ b/external/libmariadb/mariadb-trunk-101.patch
@@ -1,7 +1,780 @@
-=== modified file 'CMakeLists.txt'
---- mariadb/CMakeLists.txt	2012-11-28 21:44:42 +0000
-+++ mariadb/CMakeLists.txt	2013-03-14 21:01:43 +0000
-@@ -1,35 +1,57 @@
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/CheckFunctions.cmake mariadb-native-client.trunk/cmake/CheckFunctions.cmake
+--- mariadb/cmake/CheckFunctions.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/CheckFunctions.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,108 @@
++# This file is included by CMakeLists.txt and
++# checks for various functions.
++# include/my_config.h.in
++# You will find the appropiate defines in 
++
++INCLUDE(CheckFunctionExists)
++
++CHECK_FUNCTION_EXISTS (access HAVE_ACCESS)
++CHECK_FUNCTION_EXISTS (aiowait HAVE_AIOWAIT)
++CHECK_FUNCTION_EXISTS (alarm HAVE_ALARM)
++CHECK_FUNCTION_EXISTS (alloca HAVE_ALLOCA)
++CHECK_FUNCTION_EXISTS (bcmp HAVE_BCMP)
++CHECK_FUNCTION_EXISTS (bfill HAVE_BFILL)
++CHECK_FUNCTION_EXISTS (bmove HAVE_BMOVE)
++CHECK_FUNCTION_EXISTS (bzero HAVE_BZERO)
++CHECK_FUNCTION_EXISTS (clock_gettime HAVE_CLOCK_GETTIME)
++CHECK_FUNCTION_EXISTS (compress HAVE_COMPRESS)
++CHECK_FUNCTION_EXISTS (crypt HAVE_CRYPT)
++CHECK_FUNCTION_EXISTS (dlerror HAVE_DLERROR)
++CHECK_FUNCTION_EXISTS (dlopen HAVE_DLOPEN)
++CHECK_FUNCTION_EXISTS (fchmod HAVE_FCHMOD)
++CHECK_FUNCTION_EXISTS (fcntl HAVE_FCNTL)
++CHECK_FUNCTION_EXISTS (fconvert HAVE_FCONVERT)
++CHECK_FUNCTION_EXISTS (fdatasync HAVE_FDATASYNC)
++CHECK_FUNCTION_EXISTS (fesetround HAVE_FESETROUND)
++CHECK_FUNCTION_EXISTS (finite HAVE_FINITE)
++CHECK_FUNCTION_EXISTS (fseeko HAVE_FSEEKO)
++CHECK_FUNCTION_EXISTS (fsync HAVE_FSYNC)
++CHECK_FUNCTION_EXISTS (getaddrinfo HAVE_GETADDRINFO)
++CHECK_FUNCTION_EXISTS (getcwd HAVE_GETCWD)
++CHECK_FUNCTION_EXISTS (gethostbyaddr_r HAVE_GETHOSTBYADDR_R)
++CHECK_FUNCTION_EXISTS (gethostbyname_r HAVE_GETHOSTBYNAME_R)
++CHECK_FUNCTION_EXISTS (gethrtime HAVE_GETHRTIME)
++CHECK_FUNCTION_EXISTS (getnameinfo HAVE_GETNAMEINFO)
++CHECK_FUNCTION_EXISTS (getpagesize HAVE_GETPAGESIZE)
++CHECK_FUNCTION_EXISTS (getpass HAVE_GETPASS)
++CHECK_FUNCTION_EXISTS (getpassphrase HAVE_GETPASSPHRASE)
++CHECK_FUNCTION_EXISTS (getpwnam HAVE_GETPWNAM)
++CHECK_FUNCTION_EXISTS (getpwuid HAVE_GETPWUID)
++CHECK_FUNCTION_EXISTS (getrlimit HAVE_GETRLIMIT)
++CHECK_FUNCTION_EXISTS (getrusage HAVE_GETRUSAGE)
++CHECK_FUNCTION_EXISTS (getwd HAVE_GETWD)
++CHECK_FUNCTION_EXISTS (gmtime_r HAVE_GMTIME_R)
++CHECK_FUNCTION_EXISTS (initgroups HAVE_INITGROUPS)
++CHECK_FUNCTION_EXISTS (ldiv HAVE_LDIV)
++CHECK_FUNCTION_EXISTS (localtime_r HAVE_LOCALTIME_R)
++CHECK_FUNCTION_EXISTS (log2 HAVE_LOG2)
++CHECK_FUNCTION_EXISTS (longjmp HAVE_LONGJMP)
++CHECK_FUNCTION_EXISTS (lstat HAVE_LSTAT)
++CHECK_FUNCTION_EXISTS (madvise HAVE_MADVISE)
++CHECK_FUNCTION_EXISTS (mallinfo HAVE_MALLINFO)
++CHECK_FUNCTION_EXISTS (memalign HAVE_MEMALIGN)
++CHECK_FUNCTION_EXISTS (memcpy HAVE_MEMCPY)
++CHECK_FUNCTION_EXISTS (memmove HAVE_MEMMOVE)
++CHECK_FUNCTION_EXISTS (mkstemp HAVE_MKSTEMP)
++CHECK_FUNCTION_EXISTS (mlock HAVE_MLOCK)
++CHECK_FUNCTION_EXISTS (mlockall HAVE_MLOCKALL)
++CHECK_FUNCTION_EXISTS (mmap HAVE_MMAP)
++CHECK_FUNCTION_EXISTS (mmap64 HAVE_MMAP64)
++CHECK_FUNCTION_EXISTS (perror HAVE_PERROR)
++CHECK_FUNCTION_EXISTS (poll HAVE_POLL)
++CHECK_FUNCTION_EXISTS (pread HAVE_PREAD)
++CHECK_FUNCTION_EXISTS (pthread_attr_create HAVE_PTHREAD_ATTR_CREATE)
++CHECK_FUNCTION_EXISTS (pthread_attr_getstacksize HAVE_PTHREAD_ATTR_GETSTACKSIZE)
++CHECK_FUNCTION_EXISTS (pthread_attr_setprio HAVE_PTHREAD_ATTR_SETPRIO)
++CHECK_FUNCTION_EXISTS (pthread_attr_setschedparam HAVE_PTHREAD_ATTR_SETSCHEDPARAM)
++CHECK_FUNCTION_EXISTS (pthread_attr_setscope HAVE_PTHREAD_ATTR_SETSCOPE)
++CHECK_FUNCTION_EXISTS (pthread_attr_setstacksize HAVE_PTHREAD_ATTR_SETSTACKSIZE)
++CHECK_FUNCTION_EXISTS (pthread_condattr_create HAVE_PTHREAD_CONDATTR_CREATE)
++CHECK_FUNCTION_EXISTS (pthread_init HAVE_PTHREAD_INIT)
++CHECK_FUNCTION_EXISTS (pthread_key_delete HAVE_PTHREAD_KEY_DELETE)
++CHECK_FUNCTION_EXISTS (pthread_kill HAVE_PTHREAD_KILL)
++CHECK_FUNCTION_EXISTS (pthread_rwlock_rdlock HAVE_PTHREAD_RWLOCK_RDLOCK)
++CHECK_FUNCTION_EXISTS (pthread_setprio_np HAVE_PTHREAD_SETPRIO_NP)
++CHECK_FUNCTION_EXISTS (pthread_setschedparam HAVE_PTHREAD_SETSCHEDPARAM)
++CHECK_FUNCTION_EXISTS (pthread_sigmask HAVE_PTHREAD_SIGMASK)
++CHECK_FUNCTION_EXISTS (pthread_threadmask HAVE_PTHREAD_THREADMASK)
++CHECK_FUNCTION_EXISTS (pthread_yield_np HAVE_PTHREAD_YIELD_NP)
++CHECK_FUNCTION_EXISTS (readdir_r HAVE_READDIR_R)
++CHECK_FUNCTION_EXISTS (readlink HAVE_READLINK)
++CHECK_FUNCTION_EXISTS (realpath HAVE_REALPATH)
++CHECK_FUNCTION_EXISTS (rename HAVE_RENAME)
++CHECK_FUNCTION_EXISTS (sched_yield HAVE_SCHED_YIELD)
++CHECK_FUNCTION_EXISTS (select HAVE_SELECT)
++CHECK_FUNCTION_EXISTS (setfd HAVE_SETFD)
++CHECK_FUNCTION_EXISTS (setfilepointer HAVE_SETFILEPOINTER)
++CHECK_FUNCTION_EXISTS (sigaction HAVE_SIGACTION)
++CHECK_FUNCTION_EXISTS (sigthreadmask HAVE_SIGTHREADMASK)
++CHECK_FUNCTION_EXISTS (sigwait HAVE_SIGWAIT)
++CHECK_FUNCTION_EXISTS (sleep HAVE_SLEEP)
++CHECK_FUNCTION_EXISTS (snprintf HAVE_SNPRINTF)
++CHECK_FUNCTION_EXISTS (stpcpy HAVE_STPCPY)
++CHECK_FUNCTION_EXISTS (strerror HAVE_STRERROR)
++CHECK_FUNCTION_EXISTS (strlcpy HAVE_STRLCPY)
++CHECK_FUNCTION_EXISTS (strnlen HAVE_STRNLEN)
++CHECK_FUNCTION_EXISTS (strpbrk HAVE_STRPBRK)
++CHECK_FUNCTION_EXISTS (strsep HAVE_STRSEP)
++CHECK_FUNCTION_EXISTS (strstr HAVE_STRSTR)
++CHECK_FUNCTION_EXISTS (strtok_r HAVE_STRTOK_R)
++CHECK_FUNCTION_EXISTS (strtol HAVE_STRTOL)
++CHECK_FUNCTION_EXISTS (strtoll HAVE_STRTOLL)
++CHECK_FUNCTION_EXISTS (strtoul HAVE_STRTOUL)
++CHECK_FUNCTION_EXISTS (strtoull HAVE_STRTOULL)
++CHECK_FUNCTION_EXISTS (tell HAVE_TELL)
++CHECK_FUNCTION_EXISTS (thr_setconcurrency HAVE_THR_SETCONCURRENCY)
++CHECK_FUNCTION_EXISTS (thr_yield HAVE_THR_YIELD)
++CHECK_FUNCTION_EXISTS (vasprintf HAVE_VASPRINTF)
++CHECK_FUNCTION_EXISTS (vsnprintf HAVE_VSNPRINTF)
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/CheckIncludeFiles.cmake mariadb-native-client.trunk/cmake/CheckIncludeFiles.cmake
+--- mariadb/cmake/CheckIncludeFiles.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/CheckIncludeFiles.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,68 @@
++# This file is included by CMakeLists.txt and
++# checks for various header files.
++# You will find the appropiate defines in 
++# include/my_config.h.in
++
++INCLUDE(CheckIncludeFiles)
++
++CHECK_INCLUDE_FILES (alloca.h HAVE_ALLOCA_H)
++CHECK_INCLUDE_FILES (arpa/inet.h HAVE_ARPA_INET_H)
++CHECK_INCLUDE_FILES (crypt.h HAVE_CRYPT_H)
++CHECK_INCLUDE_FILES (dirent.h HAVE_DIRENT_H)
++CHECK_INCLUDE_FILES (dlfcn.h HAVE_DLFCN_H)
++CHECK_INCLUDE_FILES (execinfo.h HAVE_EXECINFO_H)
++CHECK_INCLUDE_FILES (fcntl.h HAVE_FCNTL_H)
++CHECK_INCLUDE_FILES (fenv.h HAVE_FENV_H)
++CHECK_INCLUDE_FILES (float.h HAVE_FLOAT_H)
++CHECK_INCLUDE_FILES (fpu/control.h HAVE_FPU_CONTROL_H)
++CHECK_INCLUDE_FILES (grp.h HAVE_GRP_H)
++CHECK_INCLUDE_FILES (ieeefp.h HAVE_IEEEFP_H)
++CHECK_INCLUDE_FILES (limits.h HAVE_LIMITS_H)
++CHECK_INCLUDE_FILES (malloc.h HAVE_MALLOC_H)
++CHECK_INCLUDE_FILES (memory.h HAVE_MEMORY_H)
++CHECK_INCLUDE_FILES (netinet/in.h HAVE_NETINET_IN_H)
++CHECK_INCLUDE_FILES (paths.h HAVE_PATHS_H)
++CHECK_INCLUDE_FILES (pwd.h HAVE_PWD_H)
++CHECK_INCLUDE_FILES (sched.h HAVE_SCHED_H)
++CHECK_INCLUDE_FILES (select.h HAVE_SELECT_H)
++
++CHECK_INCLUDE_FILES (signal.h INCLUDE_SIGNAL)
++IF(INCLUDE_SIGNAL)
++  SET(HAVE_SIGNAL 1)
++  SET(CMAKE_EXTRA_INCLUDE_FILES signal.h)
++ENDIF(INCLUDE_SIGNAL)
++
++CHECK_INCLUDE_FILES (stddef.h HAVE_STDDEF_H)
++
++CHECK_INCLUDE_FILES (stdint.h HAVE_STDINT_H)
++IF(HAVE_STDINT_H)
++  SET(CMAKE_EXTRA_INCLUDE_FILES stdint.h)
++ENDIF(HAVE_STDINT_H)
++
++CHECK_INCLUDE_FILES (stdlib.h HAVE_STDLIB_H)
++CHECK_INCLUDE_FILES (string.h HAVE_STRING_H)
++CHECK_INCLUDE_FILES (strings.h HAVE_STRINGS_H)
++CHECK_INCLUDE_FILES (synch.h HAVE_SYNCH_H)
++CHECK_INCLUDE_FILES (sys/fpu.h HAVE_SYS_FPU_H)
++CHECK_INCLUDE_FILES (sys/ioctl.h HAVE_SYS_IOCTL_H)
++CHECK_INCLUDE_FILES (sys/ipc.h HAVE_SYS_IPC_H)
++CHECK_INCLUDE_FILES (sys/mman.h HAVE_SYS_MMAN_H)
++CHECK_INCLUDE_FILES (sys/prctl.h HAVE_SYS_PRCTL_H)
++CHECK_INCLUDE_FILES (sys/select.h HAVE_SYS_SELECT_H)
++CHECK_INCLUDE_FILES (sys/shm.h HAVE_SYS_SHM_H)
++
++CHECK_INCLUDE_FILES (sys/socket.h HAVE_SYS_SOCKET_H)
++IF(HAVE_SYS_SOCKET_H)
++  SET(CMAKE_EXTRA_INCLUDE_FILES sys/socket.h)
++ENDIF(HAVE_SYS_SOCKET_H)
++
++CHECK_INCLUDE_FILES (sys/stat.h HAVE_SYS_STAT_H)
++CHECK_INCLUDE_FILES (sys/stream.h HAVE_SYS_STREAM_H)
++CHECK_INCLUDE_FILES (sys/timeb.h HAVE_SYS_TIMEB_H)
++CHECK_INCLUDE_FILES (sys/types.h HAVE_SYS_TYPES_H)
++CHECK_INCLUDE_FILES (sys/un.h HAVE_SYS_UN_H)
++CHECK_INCLUDE_FILES (sysent.h HAVE_SYSENT_H)
++CHECK_INCLUDE_FILES (termio.h HAVE_TERMIO_H)
++CHECK_INCLUDE_FILES (termios.h HAVE_TERMIOS_H)
++CHECK_INCLUDE_FILES (unistd.h HAVE_UNISTD_H)
++CHECK_INCLUDE_FILES (utime.h HAVE_UTIME_H)
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/CheckTypes.cmake mariadb-native-client.trunk/cmake/CheckTypes.cmake
+--- mariadb/cmake/CheckTypes.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/CheckTypes.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,106 @@
++# This file is included by CMakeLists.txt and
++# checks for type sizes.
++# You will find the appropiate defines in 
++# include/my_config.h.in
++INCLUDE (CheckTypeSize)
++
++SET(CMAKE_EXTRA_INCLUDE_FILES signal.h)
++CHECK_TYPE_SIZE(sigset_t SIZEOF_SIGSET_T)
++CHECK_TYPE_SIZE(char SIZEOF_CHAR)
++CHECK_TYPE_SIZE("char *" SIZEOF_CHARP)
++CHECK_TYPE_SIZE(short SIZEOF_SHORT)
++CHECK_TYPE_SIZE(int SIZEOF_INT)
++CHECK_TYPE_SIZE(long SIZEOF_LONG)
++CHECK_TYPE_SIZE("long long" SIZEOF_LONG_LONG)
++SET(CMAKE_EXTRA_INCLUDE_FILES stdio.h)
++CHECK_TYPE_SIZE(size_t SIZEOF_SIZE_T)
++SET(CMAKE_EXTRA_INCLUDE_FILES sys/types.h)
++CHECK_TYPE_SIZE(off_t SIZEOF_OFF_T)
++CHECK_TYPE_SIZE(uchar SIZEOF_UCHAR)
++CHECK_TYPE_SIZE(uint SIZEOF_UINT)
++CHECK_TYPE_SIZE(ulong SIZEOF_ULONG)
++CHECK_TYPE_SIZE(int8 SIZEOF_INT8)
++CHECK_TYPE_SIZE(uint8 SIZEOF_UINT8)
++CHECK_TYPE_SIZE(int16 SIZEOF_INT16)
++CHECK_TYPE_SIZE(uint16 SIZEOF_UINT16)
++CHECK_TYPE_SIZE(int32 SIZEOF_INT32)
++CHECK_TYPE_SIZE(uint32 SIZEOF_UINT32)
++CHECK_TYPE_SIZE(u_int32_t SIZEOF_UINT_32_T)
++CHECK_TYPE_SIZE(int64 SIZEOF_INT64)
++CHECK_TYPE_SIZE(uint64 SIZEOF_UINT64)
++CHECK_TYPE_SIZE(socklen_t SIZEOF_SOCKLEN_T)
++
++#
++# Compile testing
++#
++INCLUDE (CheckCSourceCompiles)
++
++#
++# signal handler
++#
++CHECK_C_SOURCE_COMPILES("
++  #include <signal.h>
++
++  #ifdef signal
++  #undef signal
++  #endif
++
++  #ifdef __cplusplus
++    extern \"C\" void (*signal (int, void (*)(int)))(int);
++  #else
++  void (*signal ()) ();
++  #endif
++
++  int main(int ac, char **av) 
++  {
++  }"
++  IS_VOID_SIGNAL)
++
++IF(IS_VOID_SIGNAL)
++  SET(RETSIGTYPE "void")
++ELSE(IS_VOID_SIGNAL)
++  SET(RETSIGTYPE "int")
++ENDIF(IS_VOID_SIGNAL)
++
++#
++# quick sort
++#
++CHECK_C_SOURCE_COMPILES("
++  #include <stdlib.h>
++  #ifdef __cplusplus
++    extern \"C\" void qsort(void *base, size_t nel, size_t width, int (*compar) (const void *, const void *));
++  #else
++    void qsort(void *base, size_t nel, size_t width, int (*compar) (const void *, const void *));
++  #endif
++  int main(int ac, char **av)
++  {
++  }"
++  IS_VOID_QSORT)
++IF(IS_VOID_QSORT)
++  SET(RETQSORTTYPE "void")
++ELSE(IS_VOID_QSORT)
++  SET(RETQSORTTYPE "int")
++ENDIF(IS_VOID_QSORT)
++
++#
++# SOCKET_SIZE 
++#
++IF(WIN32)
++  SET(SOCKET_SIZE_TYPE int)
++ELSE(WIN32)
++  FOREACH(CHECK_TYPE "socklen_t" "size_t" "int")
++    IF (NOT SOCKET_SIZE_TYPE)
++      CHECK_C_SOURCE_COMPILES("
++        #include <sys/socket.h>
++        int main(int argc, char **argv)
++        {
++          getsockname(0, 0, (${CHECK_TYPE} *)0);
++          return 0;
++        }"
++        SOCKET_SIZE_FOUND_${CHECK_TYPE})
++      IF(SOCKET_SIZE_FOUND_${CHECK_TYPE})
++        SET(SOCKET_SIZE_TYPE ${CHECK_TYPE})
++      ENDIF(SOCKET_SIZE_FOUND_${CHECK_TYPE})
++    ENDIF (NOT SOCKET_SIZE_TYPE)
++  ENDFOREACH()
++ENDIF(WIN32)
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/FindIconv.cmake mariadb-native-client.trunk/cmake/FindIconv.cmake
+--- mariadb/cmake/FindIconv.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/FindIconv.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,52 @@
++#  Copyright (c) 2010 Michael Bell <michael.bell at web.de>
++
++if (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
++  # Already in cache, be silent
++  set(ICONV_FIND_QUIETLY TRUE)
++endif (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
++
++find_path(ICONV_INCLUDE_DIR iconv.h)
++
++find_library(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c)
++
++if (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
++   set (ICONV_FOUND TRUE)
++endif (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
++
++set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
++set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})
++
++if (ICONV_FOUND)
++  include(CheckCSourceCompiles)
++  CHECK_C_SOURCE_COMPILES("
++  #include <iconv.h>
++  int main(){
++    iconv_t conv = 0;
++    const char* in = 0;
++    size_t ilen = 0;
++    char* out = 0;
++    size_t olen = 0;
++    iconv(conv, &in, &ilen, &out, &olen);
++    return 0;
++  }
++" ICONV_SECOND_ARGUMENT_IS_CONST )
++endif (ICONV_FOUND)
++
++set (CMAKE_REQUIRED_INCLUDES)
++set (CMAKE_REQUIRED_LIBRARIES)
++
++if (ICONV_FOUND)
++  if (NOT ICONV_FIND_QUIETLY)
++    message (STATUS "Found Iconv: ${ICONV_LIBRARIES}")
++  endif (NOT ICONV_FIND_QUIETLY)
++else (ICONV_FOUND)
++  if (Iconv_FIND_REQUIRED)
++    message (FATAL_ERROR "Could not find Iconv")
++  endif (Iconv_FIND_REQUIRED)
++endif (ICONV_FOUND)
++
++MARK_AS_ADVANCED(
++  ICONV_INCLUDE_DIR
++  ICONV_LIBRARIES
++  ICONV_SECOND_ARGUMENT_IS_CONST
++)
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/SearchLibrary.cmake mariadb-native-client.trunk/cmake/SearchLibrary.cmake
+--- mariadb/cmake/SearchLibrary.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/SearchLibrary.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,23 @@
++INCLUDE(CheckFunctionExists)
++INCLUDE(CheckLibraryExists)
++ 
++FUNCTION(SEARCH_LIBRARY library_name function liblist)
++  IF(${${library_name}})
++    RETURN()
++  ENDIF()
++  CHECK_FUNCTION_EXISTS(${function} HAVE_${function}_IN_LIBC)
++  # check if function is part of libc
++  IF(HAVE_${function}_IN_LIBC)
++    SET(${library_name} "" PARENT_SCOPE)
++    RETURN()
++  ENDIF()
++  FOREACH(lib ${liblist})
++    CHECK_LIBRARY_EXISTS(${lib} ${function} "" HAVE_${function}_IN_${lib})
++    IF(HAVE_${function}_IN_${lib})
++      SET(${library_name} ${lib} PARENT_SCOPE)
++      SET(HAVE_${library_name} 1 PARENT_SCOPE)
++      RETURN()
++    ENDIF()
++  ENDFOREACH()
++ENDFUNCTION()
++
+diff -x .bzr -u --recursive -N mariadb-native-client.release/cmake/WindowsCache.cmake mariadb-native-client.trunk/cmake/WindowsCache.cmake
+--- mariadb/cmake/WindowsCache.cmake	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/cmake/WindowsCache.cmake	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,392 @@
++IF(MSVC)
++SET(BFD_H_EXISTS 0 CACHE INTERNAL "")
++SET(HAVE_ACCESS 1 CACHE  INTERNAL "")
++SET(HAVE_AIO_H CACHE  INTERNAL "")
++SET(HAVE_AIO_READ CACHE  INTERNAL "")
++SET(HAVE_ALARM CACHE  INTERNAL "")
++SET(HAVE_ALLOCA_H CACHE  INTERNAL "")
++SET(HAVE_ARPA_INET_H CACHE  INTERNAL "")
++SET(HAVE_ASM_MSR_H CACHE  INTERNAL "")
++SET(HAVE_BACKTRACE CACHE  INTERNAL "")
++SET(HAVE_BACKTRACE_SYMBOLS CACHE  INTERNAL "")
++SET(HAVE_BACKTRACE_SYMBOLS_FD CACHE  INTERNAL "")
++SET(HAVE_BFILL CACHE  INTERNAL "")
++SET(HAVE_BMOVE CACHE  INTERNAL "")
++SET(HAVE_BSD_SIGNALS CACHE  INTERNAL "")
++SET(HAVE_BSEARCH 1 CACHE  INTERNAL "")
++SET(HAVE_BSS_START CACHE  INTERNAL "")
++SET(HAVE_BZERO CACHE  INTERNAL "")
++SET(HAVE_CHOWN CACHE  INTERNAL "")
++SET(HAVE_CLOCK_GETTIME CACHE  INTERNAL "")
++SET(HAVE_COMPRESS CACHE  INTERNAL "")
++SET(HAVE_CRYPT CACHE  INTERNAL "")
++SET(HAVE_CRYPT_H CACHE  INTERNAL "")
++SET(HAVE_CUSERID CACHE  INTERNAL "")
++SET(HAVE_CXX_NEW 1 CACHE  INTERNAL "")
++SET(HAVE_DECL_MADVISE CACHE  INTERNAL "")
++SET(HAVE_DIRECTIO CACHE  INTERNAL "")
++SET(HAVE_DIRENT_H CACHE  INTERNAL "")
++SET(HAVE_DLERROR CACHE  INTERNAL "")
++SET(HAVE_DLFCN_H CACHE  INTERNAL "")
++SET(HAVE_DLOPEN CACHE  INTERNAL "")
++SET(HAVE_DOPRNT CACHE  INTERNAL "")
++SET(HAVE_EXECINFO_H CACHE  INTERNAL "")
++SET(HAVE_FCHMOD CACHE  INTERNAL "")
++SET(HAVE_FCNTL CACHE  INTERNAL "")
++SET(HAVE_FCNTL_H 1 CACHE  INTERNAL "")
++SET(HAVE_FCNTL_NONBLOCK CACHE  INTERNAL "")
++SET(HAVE_FCONVERT CACHE  INTERNAL "")
++SET(HAVE_FDATASYNC CACHE  INTERNAL "")
++SET(HAVE_DECL_FDATASYNC CACHE INTERNAL "")
++SET(HAVE_FEDISABLEEXCEPT CACHE INTERNAL "")
++SET(HAVE_FENV_H CACHE  INTERNAL "")
++SET(HAVE_FESETROUND CACHE  INTERNAL "")
++SET(HAVE_FGETLN CACHE  INTERNAL "")
++SET(HAVE_FINITE CACHE  INTERNAL "")
++SET(HAVE_FINITE_IN_MATH_H CACHE  INTERNAL "")
++SET(HAVE_FLOATINGPOINT_H CACHE  INTERNAL "")
++SET(HAVE_FLOAT_H 1 CACHE  INTERNAL "")
++SET(HAVE_FLOCKFILE CACHE  INTERNAL "")
++SET(HAVE_FNMATCH_H CACHE  INTERNAL "")
++SET(HAVE_FPSETMASK CACHE  INTERNAL "")
++SET(HAVE_FPU_CONTROL_H CACHE  INTERNAL "")
++SET(HAVE_FSEEKO CACHE  INTERNAL "")
++SET(HAVE_FSYNC CACHE  INTERNAL "")
++SET(HAVE_FTIME 1 CACHE  INTERNAL "")
++SET(HAVE_FTRUNCATE CACHE  INTERNAL "")
++SET(HAVE_GETADDRINFO 1 CACHE  INTERNAL "")
++SET(HAVE_GETCWD 1 CACHE  INTERNAL "")
++SET(HAVE_GETHOSTBYADDR_R CACHE  INTERNAL "")
++SET(HAVE_GETHRTIME CACHE  INTERNAL "")
++SET(HAVE_GETLINE CACHE  INTERNAL "")
++SET(HAVE_GETNAMEINFO CACHE  INTERNAL "")
++SET(HAVE_GETPAGESIZE CACHE  INTERNAL "")
++SET(HAVE_GETPASS CACHE  INTERNAL "")
++SET(HAVE_GETPASSPHRASE CACHE  INTERNAL "")
++SET(HAVE_GETPWNAM CACHE  INTERNAL "")
++SET(HAVE_GETPWUID CACHE  INTERNAL "")
++SET(HAVE_GETRLIMIT CACHE  INTERNAL "")
++SET(HAVE_GETRUSAGE CACHE  INTERNAL "")
++SET(HAVE_GETTIMEOFDAY CACHE  INTERNAL "")
++SET(HAVE_GETWD CACHE  INTERNAL "")
++SET(HAVE_GMTIME_R CACHE  INTERNAL "")
++SET(HAVE_GRP_H CACHE  INTERNAL "")
++SET(HAVE_IA64INTRIN_H CACHE  INTERNAL "")
++SET(HAVE_IEEEFP_H CACHE  INTERNAL "")
++SET(HAVE_INDEX CACHE  INTERNAL "")
++SET(HAVE_INITGROUPS CACHE  INTERNAL "")
++SET(HAVE_INTTYPES_H CACHE  INTERNAL "")
++SET(HAVE_IPPROTO_IPV6 CACHE  INTERNAL "")
++SET(HAVE_IPV6 TRUE CACHE  INTERNAL "")
++SET(HAVE_IPV6_V6ONLY 1 CACHE  INTERNAL "")
++SET(HAVE_ISINF CACHE  INTERNAL "")
++SET(HAVE_ISNAN CACHE  INTERNAL "")
++SET(HAVE_ISSETUGID CACHE  INTERNAL "")
++SET(HAVE_GETUID CACHE  INTERNAL "")
++SET(HAVE_GETEUID CACHE  INTERNAL "")
++SET(HAVE_GETGID CACHE  INTERNAL "")
++SET(HAVE_GETEGID CACHE  INTERNAL "")
++SET(HAVE_LANGINFO_H CACHE  INTERNAL "")
++SET(HAVE_LDIV 1 CACHE  INTERNAL "")
++SET(HAVE_LIMITS_H 1 CACHE  INTERNAL "")
++SET(HAVE_LOCALE_H 1 CACHE  INTERNAL "")
++SET(HAVE_LOCALTIME_R CACHE  INTERNAL "")
++SET(HAVE_LOG2 CACHE  INTERNAL "")
++SET(HAVE_LONGJMP 1 CACHE  INTERNAL "")
++SET(HAVE_LRAND48 CACHE  INTERNAL "")
++SET(HAVE_LSTAT CACHE  INTERNAL "")
++SET(HAVE_MADVISE CACHE  INTERNAL "")
++SET(HAVE_MALLINFO CACHE  INTERNAL "")
++SET(HAVE_MALLOC_H 1 CACHE  INTERNAL "")
++SET(HAVE_MEMALIGN CACHE  INTERNAL "")
++SET(HAVE_MEMCPY 1 CACHE  INTERNAL "")
++SET(HAVE_MEMMOVE 1 CACHE  INTERNAL "")
++SET(HAVE_MEMORY_H 1 CACHE  INTERNAL "")
++SET(HAVE_MKSTEMP CACHE  INTERNAL "")
++SET(HAVE_MLOCK CACHE  INTERNAL "")
++SET(HAVE_MLOCKALL CACHE  INTERNAL "")
++SET(HAVE_MMAP CACHE  INTERNAL "")
++SET(HAVE_MMAP64 CACHE  INTERNAL "")
++SET(HAVE_NETDB_H CACHE INTERNAL "")
++SET(HAVE_NETINET_IN6_H CACHE  INTERNAL "")
++SET(HAVE_NETINET_IN_H CACHE  INTERNAL "")
++SET(HAVE_NL_LANGINFO CACHE  INTERNAL "")
++SET(HAVE_PASE_ENVIRONMENT CACHE  INTERNAL "")
++SET(HAVE_PATHS_H CACHE  INTERNAL "")
++SET(HAVE_PCLOSE CACHE  INTERNAL "")
++SET(HAVE_PERROR 1 CACHE  INTERNAL "")
++SET(HAVE_PEERCRED CACHE INTERNAL "")
++SET(HAVE_PAM_APPL_H CACHE INTERNAL "")
++SET(HAVE_POLL_H CACHE  INTERNAL "")
++SET(HAVE_POPEN CACHE  INTERNAL "")
++SET(HAVE_POLL CACHE INTERNAL "")
++SET(HAVE_PORT_CREATE CACHE  INTERNAL "")
++SET(HAVE_PORT_H CACHE  INTERNAL "")
++SET(HAVE_POSIX_FALLOCATE CACHE  INTERNAL "")
++SET(HAVE_POSIX_SIGNALS CACHE  INTERNAL "")
++SET(HAVE_PREAD CACHE  INTERNAL "")
++SET(HAVE_PRINTSTACK CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_CREATE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_GETSTACKSIZE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_SETSCOPE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_SETSTACKSIZE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_CONDATTR_CREATE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_CONDATTR_SETCLOCK CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_INIT CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_KEY_DELETE CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_RWLOCK_RDLOCK CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_SIGMASK CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_THREADMASK CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_YIELD_NP CACHE  INTERNAL "")
++SET(HAVE_PTHREAD_YIELD_ZERO_ARG CACHE  INTERNAL "")
++SET(HAVE_PUTENV 1 CACHE  INTERNAL "")
++SET(HAVE_PWD_H CACHE  INTERNAL "")
++SET(HAVE_RDTSCLL CACHE  INTERNAL "")
++SET(HAVE_READDIR_R CACHE  INTERNAL "")
++SET(HAVE_READLINK CACHE  INTERNAL "")
++SET(HAVE_READ_REAL_TIME CACHE  INTERNAL "")
++SET(HAVE_REALPATH CACHE  INTERNAL "")
++SET(HAVE_REGCOMP CACHE  INTERNAL "")
++SET(HAVE_RENAME 1 CACHE  INTERNAL "")
++SET(HAVE_RE_COMP CACHE  INTERNAL "")
++SET(HAVE_RINT CACHE  INTERNAL "")
++SET(HAVE_RWLOCK_INIT CACHE  INTERNAL "")
++SET(HAVE_SCHED_H CACHE  INTERNAL "")
++SET(HAVE_SCHED_YIELD CACHE  INTERNAL "")
++SET(HAVE_SELECT 1 CACHE  INTERNAL "")
++SET(HAVE_SELECT_H CACHE  INTERNAL "")
++SET(HAVE_SEMAPHORE_H CACHE  INTERNAL "")
++SET(HAVE_SETENV CACHE  INTERNAL "")
++SET(HAVE_SETFD CACHE  INTERNAL "")
++SET(HAVE_SETLOCALE 1 CACHE  INTERNAL "")
++SET(HAVE_SHMAT CACHE  INTERNAL "")
++SET(HAVE_SHMCTL CACHE  INTERNAL "")
++SET(HAVE_SHMDT CACHE  INTERNAL "")
++SET(HAVE_SHMGET CACHE  INTERNAL "")
++SET(HAVE_SIGACTION CACHE  INTERNAL "")
++SET(HAVE_SIGADDSET CACHE  INTERNAL "")
++SET(HAVE_SIGEMPTYSET CACHE  INTERNAL "")
++SET(HAVE_SIGHOLD CACHE  INTERNAL "")
++SET(HAVE_SIGINT 1 CACHE  INTERNAL "")
++SET(HAVE_SIGPIPE CACHE  INTERNAL "")
++SET(HAVE_SIGQUIT CACHE  INTERNAL "")
++SET(HAVE_SIGSET CACHE  INTERNAL "")
++SET(HAVE_SIGTERM 1 CACHE  INTERNAL "")
++SET(HAVE_SIGTHREADMASK CACHE  INTERNAL "")
++SET(HAVE_SIGWAIT CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_BOOL FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_CHAR TRUE CACHE  INTERNAL "")
++SET(SIZEOF_CHAR 1 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_CHARP TRUE CACHE  INTERNAL "")
++SET(SIZEOF_CHARP ${CMAKE_SIZEOF_VOID_P} CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_IN6_ADDR TRUE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_INT TRUE CACHE  INTERNAL "")
++SET(SIZEOF_INT 4 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_INT16 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_INT32 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_INT64 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_INT8 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_LONG TRUE CACHE  INTERNAL "")
++SET(SIZEOF_LONG 4 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_LONG_LONG TRUE CACHE  INTERNAL "")
++SET(SIZEOF_LONG_LONG 8 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_MODE_T FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_OFF_T TRUE CACHE  INTERNAL "")
++SET(SIZEOF_OFF_T 4 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_SHORT TRUE CACHE  INTERNAL "")
++SET(SIZEOF_SHORT 2 CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_SIGSET_T FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_SIZE_T TRUE CACHE  INTERNAL "")
++SET(SIZEOF_SIZE_T ${CMAKE_SIZEOF_VOID_P} CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_SOCKADDR_IN6 TRUE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_SOCKLEN_T FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UCHAR FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UINT FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UINT16 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UINT32 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UINT64 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_UINT8 FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_ULONG FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZEOF_U_INT32_T FALSE CACHE  INTERNAL "")
++SET(HAVE_SIZE_OF_SSIZE_T FALSE CACHE  INTERNAL "")
++SET(HAVE_SLEEP CACHE  INTERNAL "")
++SET(HAVE_SNPRINTF CACHE  INTERNAL "")
++SET(HAVE_SOCKADDR_STORAGE_SS_FAMILY 1 CACHE  INTERNAL "")
++SET(HAVE_SOLARIS_STYLE_GETHOST CACHE  INTERNAL "")
++SET(STACK_DIRECTION -1 CACHE INTERNAL "")
++SET(HAVE_STDARG_H 1 CACHE  INTERNAL "")
++SET(HAVE_STDDEF_H 1 CACHE  INTERNAL "")
++SET(HAVE_STDINT_H CACHE  INTERNAL "")
++SET(HAVE_STDLIB_H 1 CACHE  INTERNAL "")
++SET(HAVE_STPCPY CACHE  INTERNAL "")
++SET(HAVE_STRCASECMP CACHE  INTERNAL "")
++SET(HAVE_STRCOLL 1 CACHE  INTERNAL "")
++SET(HAVE_STRDUP 1 CACHE  INTERNAL "")
++SET(HAVE_STRERROR 1 CACHE  INTERNAL "")
++SET(HAVE_STRINGS_H CACHE  INTERNAL "")
++SET(HAVE_STRING_H 1 CACHE  INTERNAL "")
++SET(HAVE_STRLCAT CACHE  INTERNAL "")
++SET(HAVE_STRLCPY CACHE  INTERNAL "")
++SET(HAVE_STRNCASECMP CACHE  INTERNAL "")
++SET(HAVE_STRNDUP CACHE  INTERNAL "")
++IF(MSVC_VERSION GREATER 1310)
++SET(HAVE_STRNLEN 1 CACHE  INTERNAL "")
++ENDIF()
++SET(HAVE_STRPBRK 1 CACHE  INTERNAL "")
++SET(HAVE_STRSEP CACHE  INTERNAL "")
++SET(HAVE_STRSIGNAL CACHE  INTERNAL "")
++SET(HAVE_STRSTR 1 CACHE  INTERNAL "")
++SET(HAVE_STRTOK_R CACHE  INTERNAL "")
++SET(HAVE_STRTOL 1 CACHE  INTERNAL "")
++SET(HAVE_STRTOLL CACHE  INTERNAL "")
++SET(HAVE_STRTOUL 1 CACHE  INTERNAL "")
++SET(HAVE_STRTOULL CACHE  INTERNAL "")
++SET(HAVE_SVR3_SIGNALS CACHE  INTERNAL "")
++SET(HAVE_SYNCH_H CACHE  INTERNAL "")
++SET(HAVE_SYSENT_H CACHE  INTERNAL "")
++SET(HAVE_SYS_CDEFS_H CACHE  INTERNAL "")
++SET(HAVE_SYS_DIR_H CACHE  INTERNAL "")
++SET(HAVE_SYS_ERRLIST CACHE  INTERNAL "")
++SET(HAVE_SYS_FILE_H CACHE  INTERNAL "")
++SET(HAVE_SYS_FPU_H CACHE  INTERNAL "")
++SET(HAVE_SYS_IOCTL_H CACHE  INTERNAL "")
++SET(HAVE_SYS_IPC_H CACHE  INTERNAL "")
++SET(HAVE_SYS_MALLOC_H CACHE  INTERNAL "")
++SET(HAVE_SYS_MMAN_H CACHE  INTERNAL "")
++SET(HAVE_SYS_PARAM_H CACHE  INTERNAL "")
++SET(HAVE_SYS_PRCTL_H CACHE  INTERNAL "")
++SET(HAVE_SYS_PTEM_H CACHE  INTERNAL "")
++SET(HAVE_SYS_PTE_H CACHE  INTERNAL "")
++SET(HAVE_SYS_RESOURCE_H CACHE  INTERNAL "")
++SET(HAVE_SYS_SELECT_H CACHE  INTERNAL "")
++SET(HAVE_SYS_SHM_H CACHE  INTERNAL "")
++SET(HAVE_SYS_SOCKIO_H CACHE INTERNAL "")
++SET(HAVE_SYS_SOCKET_H CACHE  INTERNAL "")
++SET(HAVE_SYS_STAT_H 1 CACHE  INTERNAL "")
++SET(HAVE_SYS_STREAM_H CACHE  INTERNAL "")
++SET(HAVE_SYS_TERMCAP_H CACHE  INTERNAL "")
++SET(HAVE_SYS_TIMEB_H 1 CACHE  INTERNAL "")
++SET(HAVE_SYS_TIMES_H CACHE  INTERNAL "")
++SET(HAVE_SYS_TIME_H CACHE  INTERNAL "")
++SET(HAVE_SYS_TYPES_H 1 CACHE  INTERNAL "")
++SET(HAVE_SYS_UN_H CACHE  INTERNAL "")
++SET(HAVE_SYS_UTIME_H 1 CACHE  INTERNAL "")
++SET(HAVE_SYS_VADVISE_H CACHE  INTERNAL "")
++SET(HAVE_SYS_WAIT_H CACHE  INTERNAL "")
++SET(HAVE_TCGETATTR CACHE  INTERNAL "")
++SET(HAVE_TELL 1 CACHE  INTERNAL "")
++SET(HAVE_TEMPNAM 1 CACHE  INTERNAL "")
++SET(HAVE_TERMCAP_H CACHE  INTERNAL "")
++SET(HAVE_TERMIOS_H CACHE  INTERNAL "")
++SET(HAVE_TERMIO_H CACHE  INTERNAL "")
++SET(HAVE_TERM_H CACHE  INTERNAL "")
++SET(HAVE_THR_SETCONCURRENCY CACHE  INTERNAL "")
++SET(HAVE_THR_YIELD CACHE  INTERNAL "")
++SET(HAVE_TIME 1 CACHE  INTERNAL "")
++SET(HAVE_TIMES CACHE  INTERNAL "")
++SET(HAVE_TIMESPEC_TS_SEC CACHE  INTERNAL "")
++SET(HAVE_TIME_H 1 CACHE  INTERNAL "")
++SET(HAVE_TZNAME 1 CACHE  INTERNAL "")
++SET(HAVE_UNISTD_H CACHE  INTERNAL "")
++SET(HAVE_UTIME_H CACHE  INTERNAL "")
++SET(HAVE_VALLOC CACHE  INTERNAL "")
++SET(HAVE_VARARGS_H 1 CACHE  INTERNAL "")
++SET(HAVE_VASPRINTF CACHE  INTERNAL "")
++SET(HAVE_VPRINTF 1 CACHE  INTERNAL "")
++IF(MSVC_VERSION GREATER 1310)
++SET(HAVE_VSNPRINTF 1 CACHE  INTERNAL "")
++ENDIF()
++SET(HAVE_WEAK_SYMBOL CACHE  INTERNAL "")
++SET(HAVE_WORDS_BIGENDIAN TRUE CACHE  INTERNAL "")
++SET(WORDS_BIGENDIAN CACHE  INTERNAL "")
++SET(HAVE__S_IFIFO 1 CACHE  INTERNAL "")
++SET(HAVE__S_IREAD 1 CACHE  INTERNAL "")
++SET(HAVE__finite 1 CACHE  INTERNAL "")
++SET(HAVE__isnan 1 CACHE  INTERNAL "")
++SET(HAVE__pclose 1 CACHE  INTERNAL "")
++SET(HAVE__popen 1 CACHE  INTERNAL "")
++SET(HAVE__snprintf 1 CACHE  INTERNAL "")
++SET(HAVE__stricmp 1 CACHE  INTERNAL "")
++SET(HAVE__strnicmp 1 CACHE  INTERNAL "")
++SET(HAVE__strtoi64 1 CACHE  INTERNAL "")
++SET(HAVE__strtoui64 1 CACHE  INTERNAL "")
++IF(MSVC_VERSION GREATER 1310)
++ SET(HAVE_strtok_s 1 CACHE  INTERNAL "")
++ENDIF()
++SET(STDC_HEADERS CACHE 1 INTERNAL "")
++SET(STRUCT_DIRENT_HAS_D_INO CACHE INTERNAL "")
++SET(STRUCT_DIRENT_HAS_D_INO CACHE INTERNAL "")
++SET(STRUCT_DIRENT_HAS_D_NAMLEN CACHE INTERNAL "")
++SET(TIME_WITH_SYS_TIME CACHE INTERNAL "")
++SET(TIME_T_UNSIGNED 1 CACHE INTERNAL "")
++SET(TIOCSTAT_IN_SYS_IOCTL CACHE INTERNAL "")
++SET(HAVE_S_IROTH CACHE INTERNAL "")
++SET(HAVE_S_IFIFO CACHE INTERNAL "")
++SET(QSORT_TYPE_IS_VOID 1 CACHE INTERNAL "")
++SET(SIGNAL_RETURN_TYPE_IS_VOID 1 CACHE INTERNAL "")
++SET(C_HAS_inline CACHE INTERNAL "")
++SET(C_HAS___inline 1 CACHE INTERNAL "")
++SET(FIONREAD_IN_SYS_IOCTL CACHE INTERNAL "")
++SET(FIONREAD_IN_SYS_FILIO CACHE INTERNAL "")
++SET(GWINSZ_IN_SYS_IOCTL CACHE INTERNAL "")
++SET(HAVE_CXXABI_H CACHE INTERNAL "")
++SET(HAVE_NDIR_H CACHE INTERNAL "")
++SET(HAVE_SYS_NDIR_H CACHE INTERNAL "")
++SET(HAVE_SYS_NDIR_H CACHE INTERNAL "")
++SET(HAVE_ASM_TERMBITS_H CACHE INTERNAL "")
++SET(HAVE_TERMBITS_H CACHE INTERNAL "")
++SET(HAVE_VIS_H CACHE INTERNAL "")
++SET(HAVE_WCHAR_H 1 CACHE INTERNAL "")
++SET(HAVE_WCTYPE_H 1 CACHE INTERNAL "")
++SET(HAVE_PTHREAD_RWLOCKATTR_SETKIND_NP CACHE INTERNAL "")
++SET(HAVE_SOCKADDR_IN_SIN_LEN CACHE INTERNAL "")
++SET(HAVE_SOCKADDR_IN6_SIN6_LEN CACHE INTERNAL "")
++SET(HAVE_VALGRIND CACHE INTERNAL "")
++SET(HAVE_EVENT_H CACHE INTERNAL "")
++SET(HAVE_LINUX_UNISTD_H CACHE INTERNAL "")
++SET(HAVE_SYS_UTSNAME_H CACHE INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_GETGUARDSIZE CACHE INTERNAL "")
++SET(FIONREAD_IN_SYS_FILIO CACHE INTERNAL "")
++SET(FIONREAD_IN_SYS_IOCTL CACHE INTERNAL "")
++SET(GWINSZ_IN_SYS_IOCTL CACHE INTERNAL "")
++SET(HAVE_ACCESS 1 CACHE INTERNAL "")
++SET(HAVE_AIOWAIT CACHE INTERNAL "")
++SET(HAVE_AIO_H CACHE INTERNAL "")
++SET(HAVE_AIO_READ CACHE INTERNAL "")
++SET(HAVE_ALARM CACHE INTERNAL "")
++SET(HAVE_ALLOCA CACHE INTERNAL "")
++SET(HAVE_ALLOCA_H CACHE INTERNAL "")
++SET(HAVE_ARPA_INET_H CACHE INTERNAL "")
++SET(HAVE_ASM_MSR_H CACHE INTERNAL "")
++SET(HAVE_ASM_TERMBITS_H CACHE INTERNAL "")
++SET(HAVE_BACKTRACE CACHE INTERNAL "")
++SET(HAVE_BACKTRACE_SYMBOLS CACHE INTERNAL "")
++SET(HAVE_BACKTRACE_SYMBOLS_FD CACHE INTERNAL "")
++SET(HAVE_BCMP CACHE INTERNAL "")
++SET(HAVE_BFILL CACHE INTERNAL "")
++SET(HAVE_BMOVE CACHE INTERNAL "")
++SET(HAVE_BSD_SIGNALS CACHE INTERNAL "")
++SET(HAVE_BSEARCH CACHE INTERNAL "")
++SET(HAVE_BSS_START CACHE INTENAL "")
++SET(HAVE_BZERO CACHE INTERNAL "")
++SET(HAVE_CHOWN CACHE INTERNAL "")
++SET(HAVE_CLOCK_GETTIME CACHE INTERNAL "")
++SET(HAVE_COMPRESS CACHE INTERNAL "")
++SET(HAVE_CRYPT CACHE INTERNAL "")
++SET(HAVE_CRYPT_H CACHE INTERNAL "")
++SET(HAVE_CUSERID CACHE INTERNAL "")
++SET(HAVE_CXXABI_H CACHE INTERNAL "")
++SET(HAVE_CXX_NEW CACHE INTERNAL "")
++SET(HAVE_DECL_FDATASYNC CACHE INTERNAL "")
++SET(HAVE_SIGNAL_H 1 CACHE INTERNAL "")
++SET(HAVE_GETHOSTBYNAME_R CACHE INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_SETPRIO CACHE INTERNAL "")
++SET(HAVE_PTHREAD_ATTR_SETSCHEDPARAM CACHE INTERNAL "")
++SET(HAVE_PTHREAD_KILL CACHE INTERNAL "")
++SET(HAVE_PTHREAD_SETPRIO_NP CACHE INTERNAL "")
++SET(HAVE_PTHREAD_SETSCHEDPARAM CACHE INTERNAL "")
++SET(HAVE_SETFILEPOINTER CACHE INTERNAL "")
++SET(SIZEOF_U_INT32_T CACHE INTERNAL "")
++SET(IS_VOID_SIGNAL 1 CACHE INTERNAL "")
++SET(IS_VOID_QSORT 1 CACHE INTERNAL "")
++ENDIF()
+diff -x .bzr -u --recursive -N mariadb-native-client.release/CMakeLists.txt mariadb-native-client.trunk/CMakeLists.txt
+--- mariadb/CMakeLists.txt	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/CMakeLists.txt	2013-10-19 07:29:16.000000000 +0200
+@@ -1,26 +1,68 @@
  # CMakeLists.txt
  
  
@@ -11,8 +784,10 @@
  
  SET(CPACK_PACKAGE_VERSION_MAJOR 1)
 -SET(CPACK_PACKAGE_VERSION_MINOR 0)
+-SET(CPACK_PACKAGE_VERSION_PATCH 0)
 +SET(CPACK_PACKAGE_VERSION_MINOR 1)
- SET(CPACK_PACKAGE_VERSION_PATCH 0)
++SET(CPACK_PACKAGE_VERSION_PATCH 2)
++SET(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
  
 -# Minimum required version is Cmake 2.6.x
 -CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0 FATAL_ERROR)
@@ -26,37 +801,58 @@
 +### Options ###
 +IF(NOT WIN32)
 +  OPTION(WITH_MYSQLCOMPAT "creates libmysql* symbolic links" ON)
++  OPTION(WITH_OPENSSL "enables SSL support" ON)
++ELSE()
++  OPTION(WITH_OPENSSL "enables SSL support" OFF)
 +ENDIF()
 +
-+OPTION(WITH_SQLITE "Enables Sqlite support" ON)
++OPTION(WITH_SQLITE "Enables Sqlite support" OFF)
++OPTION(WITH_EXTERNAL_ZLIB "Enables use of external zlib" OFF)
 +###############
 +
  
  IF(WIN32)
    # Speedup system tests
 -  INCLUDE(${CMAKE_SOURCE_DIR}/WindowsCache.cmake)
+-ENDIF()
 +  INCLUDE(${CMAKE_SOURCE_DIR}/cmake/WindowsCache.cmake)
 +  IF (MSVC)
-+    FOREACH(flag_var
-+        CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
-+        CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
-+      IF(${flag_var} MATCHES "/MD")
-+        STRING(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
-+      ENDIF()
-+    ENDFOREACH(flag_var)
++    SET(CONFIG_TYPES "DEBUG" "RELEASE" "RELWITHDEBINFO")
++    FOREACH(BUILD_TYPE ${CONFIG_TYPES})
++      FOREACH(COMPILER CXX C)
++        SET(COMPILER_FLAGS "${CMAKE_${COMPILER}_FLAGS_${BUILD_TYPE}}")
++        IF (NOT COMPILER_FLAGS STREQUAL "")
++          STRING(REPLACE "/MD" "/MT" COMPILER_FLAGS ${COMPILER_FLAGS})
++          IF (CMAKE_BUILD_TYPE STREQUAL "Debug")
++            SET(COMPILER_FLAGS "${COMPILER_FLAGS} /RTC1 /RTCc")
++            STRING(REPLACE "/Zi" "/ZI" COMPILER_FLAGS ${COMPILER_FLAGS})
++          ENDIF()
++          MESSAGE (STATUS "CMAKE_${COMPILER}_FLAGS_${BUILD_TYPE}= ${COMPILER_FLAGS}") 
++          SET(CMAKE_${COMPILER}_FLAGS_${BUILD_TYPE} ${COMPILER_FLAGS} CACHE 
++               STRING "overwritten by libmariadb" FORCE)
++        ENDIF()
++      ENDFOREACH()
++    ENDFOREACH()
 +  ENDIF()
- ENDIF()
++ENDIF()
++
++# Disable dbug information for release builds 
++SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DDBUG_OFF")
++SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DDBUG_OFF")
++SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -DDBUG_OFF")
++SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DDBUG_OFF")
  
  IF(UNIX)
-   SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
- ENDIF()
- 
-+IF(CMAKE_COMPILER_IS_GNUCC)
-+  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wunused -Wno-uninitialized")
+-  SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
++  SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFE_MUTEX")
 +ENDIF()
 +
++IF(CMAKE_COMPILER_IS_GNUCC)
++  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wunused -Wno-uninitialized")
+ ENDIF()
+ 
  # If the build type isn't specified, set to Relwithdebinfo as default.
- IF(NOT CMAKE_BUILD_TYPE)
+@@ -28,33 +70,59 @@
    SET(CMAKE_BUILD_TYPE "Relwithdebinfo")
  ENDIF()
  
@@ -65,8 +861,13 @@
 +
  SET(PROTOCOL_VERSION 10) # we adapted new password option from PHP's mysqlnd !
  SET(MYSQL_CLIENT_VERSION_MAJOR "5")
- SET(MYSQL_CLIENT_VERSION_MINOR "3")
-@@ -40,14 +62,15 @@
+-SET(MYSQL_CLIENT_VERSION_MINOR "3")
+-SET(MYSQL_CLIENT_VERSION_PATCH "2")
++SET(MYSQL_CLIENT_VERSION_MINOR "5")
++SET(MYSQL_CLIENT_VERSION_PATCH "0")
+ SET(MYSQL_CLIENT_VERSION "${MYSQL_CLIENT_VERSION_MAJOR}.${MYSQL_CLIENT_VERSION_MINOR}.${MYSQL_CLIENT_VERSION_PATCH}")
+ MATH(EXPR MYSQL_VERSION_ID "${MYSQL_CLIENT_VERSION_MAJOR} * 10000 +
+                             ${MYSQL_CLIENT_VERSION_MINOR} * 100   +
                              ${MYSQL_CLIENT_VERSION_PATCH}")
  IF (NOT MYSQL_PORT)
    SET(MYSQL_PORT 3306)
@@ -81,12 +882,54 @@
  SET(SHAREDIR "share")
  SET(DEFAULT_CHARSET_HOME "${CMAKE_INSTALL_PREFIX}")
 +SET(PLUGINDIR "${CMAKE_INSTALL_PREFIX}/lib/plugin")
++
++INCLUDE(cmake/SearchLibrary.cmake)
++
++IF(WITH_EXTERNAL_ZLIB)
++  FIND_PACKAGE(ZLIB QUIET)
++  IF(${ZLIB_FOUND})
++    SET(LIBZ "-lz")
++  ENDIF()
++ENDIF()
++
++IF(UNIX)
++  SEARCH_LIBRARY(LIBNSL inet_ntoa "nsl_r;nsl")
++  SEARCH_LIBRARY(LIBBIND bind "bind;socket")
++  SEARCH_LIBRARY(LIBSOCKET setsockopt "socket")
++  SEARCH_LIBRARY(LIBDL dlopen "dl")
++  SEARCH_LIBRARY(LIBM floor m)
++  SET(EXTRA_LIBS "${LIBNSL}" "${LIBBIND}" "${LIBSOCKET}" "${LIBDL}" "${LIBM}" "${LIBZ}")
++  FIND_PACKAGE(Threads)
++  SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${LIBNSL} ${LIBBIND}
++                               ${LIBSOCKET} ${LIBDL} ${LIBM} ${CMAKE_THREAD_LIBS_INIT})
++  #remove possible dups from required libraries
++  LIST(LENGTH CMAKE_REQUIRED_LIBRARIES rllength)
++  IF(${rllength} GREATER 0)
++    LIST(REMOVE_DUPLICATES CMAKE_REQUIRED_LIBRARIES)
++  ENDIF()
++ENDIF()
  
- FIND_PACKAGE(Threads)
+-FIND_PACKAGE(Threads)
  
-@@ -72,13 +95,11 @@
+ IF(CMAKE_HAVE_PTHREAD_H)
+   SET(CMAKE_REQUIRED_INCLUDES pthread.h)
+ ENDIF()
+-#Check for threads
++
+ IF(WIN32)
+   SET(HAVE_THREADS 1)
+   ADD_DEFINITIONS(-DHAVE_DLOPEN)
+@@ -64,29 +132,28 @@
+   SET(HAVE_THREADS ${CMAKE_USE_PTHREADS})
  ENDIF()
  
+-IF(UNIX)
+-FIND_LIBRARY(DL_LIBRARY dl)
+-IF(DL_LIBRARY)
+-  SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${CMAKE_DL_LIBS})
+-ENDIF()
+-ENDIF()
+-
  # check for various include files
 -INCLUDE(LibmysqlIncludeFiles.cmake)
 +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/CheckIncludeFiles.cmake)
@@ -100,26 +943,36 @@
 +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/CheckTypes.cmake)
  
  # Check for OpenSSL
- FIND_PACKAGE(OpenSSL)
-@@ -88,6 +109,10 @@
- 
- FIND_PACKAGE(ZLIB QUIET)
- 
+-FIND_PACKAGE(OpenSSL)
+-IF(OPENSSL_FOUND)
+-  ADD_DEFINITIONS(-DHAVE_OPENSSL)
++IF(WITH_OPENSSL)
++  FIND_PACKAGE(OpenSSL)
++  IF(OPENSSL_FOUND)
++    ADD_DEFINITIONS(-DHAVE_OPENSSL)
++  ENDIF()
++ENDIF()
++
 +IF(WITH_SQLITE)
 +  ADD_DEFINITIONS(-DHAVE_SQLITE)
+ ENDIF()
+ 
+-FIND_PACKAGE(ZLIB QUIET)
++IF(NOT WIN32)
++  INCLUDE(cmake/FindIconv.cmake)
 +ENDIF()
-+
+ 
  CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/mysql_version.h.in
                 ${CMAKE_CURRENT_BINARY_DIR}/include/mysql_version.h)
- CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/my_config.h.in
-@@ -95,15 +120,16 @@
+@@ -95,15 +162,16 @@
  
  INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/include)
  
 -ADD_SUBDIRECTORY(libmysql)
+-ADD_SUBDIRECTORY(examples)
++ADD_SUBDIRECTORY(include)
 +ADD_SUBDIRECTORY(plugins)
 +ADD_SUBDIRECTORY(libmariadb)
- ADD_SUBDIRECTORY(examples)
  IF(NOT WIN32)
 -  ADD_SUBDIRECTORY(mysql_config)
 +  ADD_SUBDIRECTORY(mariadb_config)
@@ -132,37 +985,28 @@
  ENDIF()
  
  IF(BUILD_DOCS)
-
-=== modified file 'README'
---- mariadb/README	2012-11-26 10:23:56 +0000
-+++ mariadb/README	2013-03-14 21:01:43 +0000
-@@ -4,10 +4,15 @@
- This code is based on the LGPL libmysql client library from MySQL 3.23
- and PHP's mysqlnd extension.
+@@ -115,14 +183,16 @@
+  SET(CMAKE_INSTALL_PREFIX "")
+ ENDIF()
  
-+This product includes PHP software, freely available from
-+<http://www.php.net/software/>
-+
- The following are the main known limitations:
+-
++IF(WIN32)
++  ADD_SUBDIRECTORY(win/packaging)
++ENDIF()
  
--  - float to string conversion for prepared statements
--    doesn't work correctly
-+- double to string conversion for prepared statements
-+  doesn't work correctly
-+- support for dynamic columns is not integrated yet
-+- Asynchronus interface is not integrated yet
+ SET(CPACK_PACKAGE_VENDOR "Monty Program AB")
+ SET(CPACK_PACKAGE_DESCRIPTION "MariaDB client library. A library for connecting to MariaDB and MySQL servers")
+ SET(CPACK_PACKAGE_NAME "mariadb_client")
+ SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.LIB")
+ SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
+-SET(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${MYSQL_CLIENT_VERSION}-src")
++SET(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-src")
  
- If you want to be part of this development effort, you can discuss this at
- maria-developers at lists.launchpad.org.
-
-=== added directory 'cmake'
-=== renamed file 'LibmysqlFunctions.cmake' => 'cmake/CheckFunctions.cmake'
-=== renamed file 'LibmysqlIncludeFiles.cmake' => 'cmake/CheckIncludeFiles.cmake'
-=== renamed file 'LibmysqlTypes.cmake' => 'cmake/CheckTypes.cmake'
-=== renamed file 'WindowsCache.cmake' => 'cmake/WindowsCache.cmake'
-=== modified file 'docs/funcref/functions.ent'
---- mariadb/docs/funcref/functions.ent	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/funcref/functions.ent	2013-03-14 21:01:43 +0000
+ SET(CPACK_SOURCE_IGNORE_FILES
+ .bzr/
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/functions.ent mariadb-native-client.trunk/docs/funcref/functions.ent
+--- mariadb/docs/funcref/functions.ent	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/funcref/functions.ent	2013-10-19 07:29:16.000000000 +0200
 @@ -1,97 +1,97 @@
 -<!ENTITY myodbc_remove_escape "funcref/myodbc_remove_escape.xml">
 -<!ENTITY mysql_affected_rows "funcref/mysql_affected_rows.xml">
@@ -359,10 +1203,9 @@
 +<!ENTITY functions.mysql_thread_safe "funcref/mysql_thread_safe.xml">
 +<!ENTITY functions.mysql_use_result "funcref/mysql_use_result.xml">
 +<!ENTITY functions.mysql_warning_count "funcref/mysql_warning_count.xml">
-
-=== removed file 'docs/funcref/myodbc_remove_escape.xml'
---- mariadb/docs/funcref/myodbc_remove_escape.xml	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/funcref/myodbc_remove_escape.xml	1970-01-01 00:00:00 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/myodbc_remove_escape.xml mariadb-native-client.trunk/docs/funcref/myodbc_remove_escape.xml
+--- mariadb/docs/funcref/myodbc_remove_escape.xml	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/funcref/myodbc_remove_escape.xml	1970-01-01 01:00:00.000000000 +0100
 @@ -1,40 +0,0 @@
 -<?xml version='1.0' encoding='UTF-8'?>
 -    <refentry id="functions.myodbc_remove_escape" display-name="0">
@@ -404,10 +1247,9 @@
 -        <title>See also</title>
 -      </refsect1>
 -    </refentry>
-
-=== modified file 'docs/funcref/mysql_commit.xml'
---- mariadb/docs/funcref/mysql_commit.xml	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/funcref/mysql_commit.xml	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/mysql_commit.xml mariadb-native-client.trunk/docs/funcref/mysql_commit.xml
+--- mariadb/docs/funcref/mysql_commit.xml	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/funcref/mysql_commit.xml	2013-10-19 07:29:16.000000000 +0200
 @@ -39,6 +39,6 @@
        </refsect1>
        <refsect1 role="seealso">
@@ -416,10 +1258,9 @@
 +        <para><function>mysql_rollback</function></para>
        </refsect1>
      </refentry>
-
-=== added file 'docs/funcref/mysql_get_server_name.xml'
---- mariadb/docs/funcref/mysql_get_server_name.xml	1970-01-01 00:00:00 +0000
-+++ mariadb/docs/funcref/mysql_get_server_name.xml	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/mysql_get_server_name.xml mariadb-native-client.trunk/docs/funcref/mysql_get_server_name.xml
+--- mariadb/docs/funcref/mysql_get_server_name.xml	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/docs/funcref/mysql_get_server_name.xml	2013-10-19 07:29:16.000000000 +0200
 @@ -0,0 +1,44 @@
 +<?xml version='1.0' encoding='UTF-8'?>
 +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
@@ -465,10 +1306,9 @@
 +        <para><function>mysql_options()</function>, <function>mysql_real_connect()</function></para>
 +      </refsect1>
 +    </refentry>
-
-=== modified file 'docs/funcref/mysql_options.xml'
---- mariadb/docs/funcref/mysql_options.xml	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/funcref/mysql_options.xml	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/mysql_options.xml mariadb-native-client.trunk/docs/funcref/mysql_options.xml
+--- mariadb/docs/funcref/mysql_options.xml	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/funcref/mysql_options.xml	2013-10-19 07:29:16.000000000 +0200
 @@ -202,6 +202,19 @@
                   </informalexample>
                 </listitem>
@@ -489,10 +1329,9 @@
              </variablelist>
  </listitem></varlistentry>
              <varlistentry><term><parameter>arg</parameter></term><listitem><para>The value for the option</para></listitem></varlistentry>
-
-=== modified file 'docs/funcref/mysql_real_escape_string.xml'
---- mariadb/docs/funcref/mysql_real_escape_string.xml	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/funcref/mysql_real_escape_string.xml	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/funcref/mysql_real_escape_string.xml mariadb-native-client.trunk/docs/funcref/mysql_real_escape_string.xml
+--- mariadb/docs/funcref/mysql_real_escape_string.xml	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/funcref/mysql_real_escape_string.xml	2013-10-19 07:29:16.000000000 +0200
 @@ -19,7 +19,7 @@
             <methodparam><type>MYSQL *</type><parameter>mysql</parameter></methodparam>
             <methodparam><type>char *</type><parameter>to</parameter></methodparam>
@@ -527,10 +1366,9 @@
        <refsect1 role="seealso">
          <title>See also</title>
        </refsect1>
-
-=== modified file 'docs/mariadb-client.xml'
---- mariadb/docs/mariadb-client.xml	2012-11-26 10:23:56 +0000
-+++ mariadb/docs/mariadb-client.xml	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/docs/mariadb-client.xml mariadb-native-client.trunk/docs/mariadb-client.xml
+--- mariadb/docs/mariadb-client.xml	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/docs/mariadb-client.xml	2013-10-19 07:29:16.000000000 +0200
 @@ -3,7 +3,6 @@
                 "docbook/dtd/xml/4.2/docbookx.dtd" [
  <!ENTITY % global_ents SYSTEM "global.ent">
@@ -569,10 +1407,48 @@
        <xi:include href="&mysql_get_server_version;" xmlns:xi="http://www.w3.org/2001/XInclude"/>
        <xi:include href="&mysql_get_ssl_cipher;" xmlns:xi="http://www.w3.org/2001/XInclude"/>
        <xi:include href="&mysql_hex_string;" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-=== modified file 'include/config-win.h'
---- mariadb/include/config-win.h	2012-11-14 17:43:45 +0000
-+++ mariadb/include/config-win.h	2013-03-14 21:01:43 +0000
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/CMakeLists.txt mariadb-native-client.trunk/include/CMakeLists.txt
+--- mariadb/include/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/include/CMakeLists.txt	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,35 @@
++SET(MARIADB_CLIENT_INCLUDES config-win.h
++                            dbug.h
++                            errmsg.h
++                            getopt.h
++                            global.h
++                            hash.h
++                            ma_common.h
++                            m_ctype.h
++                            m_string.h
++                            ma_dyncol.h
++                            ma_secure.h
++                            my_alarm.h
++                            my_base.h
++                            my_config.h
++                            my_dir.h
++                            my_global.h
++                            my_list.h
++                            my_net.h
++                            my_no_pthread.h
++                            my_pthread.h
++                            my_stmt.h
++                            my_sys.h
++                            mysql.h
++                            mysql_com.h
++                            mysql_io.h
++                            mysql_mm.h
++                            mysql_priv.h
++                            mysql_version.h
++                            mysql_wireprotocol.h
++                            mysqld_error.h
++                            mysys_err.h
++                            sha1.h
++                            thr_alarm.h
++                            violite.h
++                            PARENT_SCOPE)
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/config-win.h mariadb-native-client.trunk/include/config-win.h
+--- mariadb/include/config-win.h	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/include/config-win.h	2013-10-19 07:29:16.000000000 +0200
 @@ -111,7 +111,7 @@
  #define bool_defined
  #define byte_defined
@@ -582,22 +1458,622 @@
  
  #define VOID_SIGHANDLER
  #define SIZEOF_CHAR		1
-
-=== modified file 'include/errmsg.h'
---- mariadb/include/errmsg.h	2012-11-26 07:32:41 +0000
-+++ mariadb/include/errmsg.h	2013-03-14 21:01:43 +0000
-@@ -71,5 +71,6 @@
+@@ -213,9 +213,9 @@
+ #define HAVE_STRPBRK
+ #define HAVE_STRSTR
+ 
+-#ifdef NOT_USED
++#ifdef WIN32
+ #define HAVE_SNPRINTF		/* Gave link error */
+-#define _snprintf snprintf
++#define snprintf _snprintf
+ #endif
+ 
+ #ifdef _MSC_VER
+@@ -264,4 +264,9 @@
+ #define statistic_increment(V,L) thread_safe_increment((V),(L))
+ #define strcasecmp(A,B) _stricmp((A),(B))
+ 
++#define close(A) _close((A))
++#define fdopen(A,B) _fdopen((A),(B))
++#define sopen(A,B,C,D) _sopen((A),(B),(C),(D))
++
++
+ #endif
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/dbug.h mariadb-native-client.trunk/include/dbug.h
+--- mariadb/include/dbug.h	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/include/dbug.h	2013-10-19 07:29:16.000000000 +0200
+@@ -21,34 +21,48 @@
+ extern "C" {
+ #endif
+ #if !defined(DBUG_OFF) && !defined(_lint)
+-extern	int _db_on_,_no_db_;
+-extern	FILE *_db_fp_;
+-extern	char *_db_process_;
+-extern	int _db_keyword_(const char *keyword);
+-extern	void _db_setjmp_(void);
+-extern	void _db_longjmp_(void);
+-extern	void _db_push_(const char *control);
+-extern	void _db_pop_(void);
+-extern	void _db_enter_(const char *_func_,const char *_file_,uint _line_,
+-			const char **_sfunc_,const char **_sfile_,
+-			uint *_slevel_, char ***);
+-extern	void _db_return_(uint _line_,const char **_sfunc_,const char **_sfile_,
+-			 uint *_slevel_);
+-extern	void _db_pargs_(uint _line_,const char *keyword);
+-extern	void _db_doprnt_ _VARARGS((const char *format,...));
+-extern	void _db_dump_(uint _line_,const char *keyword,const char *memory,
+-		       uint length);
+-extern	void _db_lock_file();
+-extern	void _db_unlock_file();
+ 
+-#define DBUG_ENTER(a) const char *_db_func_, *_db_file_; uint _db_level_; \
+-	char **_db_framep_; \
+-	_db_enter_ (a,__FILE__,__LINE__,&_db_func_,&_db_file_,&_db_level_, \
+-		    &_db_framep_)
++struct _db_stack_frame_ {
++  const char *func;      /* function name of the previous stack frame       */
++  const char *file;      /* filename of the function of previous frame      */
++  uint level;            /* this nesting level, highest bit enables tracing */
++  struct _db_stack_frame_ *prev; /* pointer to the previous frame */
++};
++
++struct  _db_code_state_;
++extern  my_bool _dbug_on_;
++extern  my_bool _db_keyword_(struct _db_code_state_ *, const char *, int);
++extern  int _db_explain_(struct _db_code_state_ *cs, char *buf, size_t len);
++extern  int _db_explain_init_(char *buf, size_t len);
++extern	int _db_is_pushed_(void);
++extern  void _db_setjmp_(void);
++extern  void _db_longjmp_(void);
++extern  void _db_process_(const char *name);
++extern  void _db_push_(const char *control);
++extern  void _db_pop_(void);
++extern  void _db_set_(const char *control);
++extern  void _db_set_init_(const char *control);
++extern void _db_enter_(const char *_func_, const char *_file_, uint _line_,
++                       struct _db_stack_frame_ *_stack_frame_);
++extern  void _db_return_(uint _line_, struct _db_stack_frame_ *_stack_frame_);
++extern  void _db_pargs_(uint _line_,const char *keyword);
++extern	void _db_doprnt_ _VARARGS((const char *format,...));
++extern  void _db_dump_(uint _line_,const char *keyword,
++                       const unsigned char *memory, size_t length);
++extern  void _db_end_(void);
++extern  void _db_lock_file_(void);
++extern  void _db_unlock_file_(void);
++extern  FILE *_db_fp_(void);
++extern  void _db_flush_();
++extern  const char* _db_get_func_(void);
++/*
++#define DBUG_ENTER(a) struct _db_stack_frame_ _db_stack_frame_; \
++        _db_enter_ (a,__FILE__,__LINE__,&_db_stack_frame_)
+ #define DBUG_LEAVE \
+ 	(_db_return_ (__LINE__, &_db_func_, &_db_file_, &_db_level_))
+-#define DBUG_RETURN(a1) {DBUG_LEAVE; return(a1);}
++#define DBUG_RETURN(a1) do {DBUG_LEAVE; return(a1);} while(0)
+ #define DBUG_VOID_RETURN {DBUG_LEAVE; return;}
++#define DBUG_END() _db_end_ ()
+ #define DBUG_EXECUTE(keyword,a1) \
+ 	{if (_db_on_) {if (_db_keyword_ (keyword)) { a1 }}}
+ #define DBUG_PRINT(keyword,arglist) \
+@@ -66,10 +80,49 @@
+ #define DEBUGGER_ON  _no_db_=0
+ #define DBUG_LOCK_FILE { _db_lock_file(); }
+ #define DBUG_UNLOCK_FILE { _db_unlock_file(); }
++#define DBUG_ASSERT(A) assert(A) */
++#define DBUG_ENTER(a) struct _db_stack_frame_ _db_stack_frame_; \
++        _db_enter_ (a,__FILE__,__LINE__,&_db_stack_frame_)
++#define DBUG_LEAVE _db_return_ (__LINE__, &_db_stack_frame_)
++#define DBUG_RETURN(a1) do {DBUG_LEAVE; return(a1);} while(0)
++#define DBUG_VOID_RETURN do {DBUG_LEAVE; return;} while(0)
++#define DBUG_EXECUTE(keyword,a1) \
++        do {if (_db_keyword_(0, (keyword), 0)) { a1 }} while(0)
++#define DBUG_EXECUTE_IF(keyword,a1) \
++        do {if (_db_keyword_(0, (keyword), 1)) { a1 }} while(0)
++#define DBUG_EVALUATE(keyword,a1,a2) \
++        (_db_keyword_(0,(keyword), 0) ? (a1) : (a2))
++#define DBUG_EVALUATE_IF(keyword,a1,a2) \
++        (_db_keyword_(0,(keyword), 1) ? (a1) : (a2))
++#define DBUG_PRINT(keyword,arglist) \
++        do {_db_pargs_(__LINE__,keyword); _db_doprnt_ arglist;} while(0)
++#define DBUG_PUSH(a1) _db_push_ (a1)
++#define DBUG_POP() _db_pop_ ()
++#define DBUG_SET(a1) _db_set_ (a1)
++#define DBUG_SET_INITIAL(a1) _db_set_init_ (a1)
++#define DBUG_PROCESS(a1) _db_process_(a1)
++#define DBUG_FILE _db_fp_()
++#define DBUG_SETJMP(a1) (_db_setjmp_ (), setjmp (a1))
++#define DBUG_LONGJMP(a1,a2) (_db_longjmp_ (), longjmp (a1, a2))
++#define DBUG_DUMP(keyword,a1,a2) _db_dump_(__LINE__,keyword,a1,a2)
++#define DBUG_END()  _db_end_ ()
++#define DBUG_LOCK_FILE _db_lock_file_()
++#define DBUG_UNLOCK_FILE _db_unlock_file_()
+ #define DBUG_ASSERT(A) assert(A)
++#define DBUG_EXPLAIN(buf,len) _db_explain_(0, (buf),(len))
++#define DBUG_EXPLAIN_INITIAL(buf,len) _db_explain_init_((buf),(len))
++#define DEBUGGER_OFF                    do { _dbug_on_= 0; } while(0)
++#define DEBUGGER_ON                     do { _dbug_on_= 1; } while(0)
++#ifndef _WIN32
++#define DBUG_ABORT()                    (_db_flush_(), abort())
++#else
++#define DBUG_ABORT()                    (_db_flush_(), exit(3))
++#endif
++
+ #else						/* No debugger */
+ 
+ #define DBUG_ENTER(a1)
++#define DBUG_END() {}
+ #define DBUG_RETURN(a1) return(a1)
+ #define DBUG_VOID_RETURN return
+ #define DBUG_EXECUTE(keyword,a1) {}
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/errmsg.h mariadb-native-client.trunk/include/errmsg.h
+--- mariadb/include/errmsg.h	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/include/errmsg.h	2013-10-19 07:29:16.000000000 +0200
+@@ -17,6 +17,8 @@
+ 
+ /* Error messages for mysql clients */
+ /* error messages for the demon is in share/language/errmsg.sys */
++#ifndef _errmsg_h_
++#define _errmsg_h_
+ 
+ #ifdef	__cplusplus
+ extern "C" {
+@@ -71,5 +73,8 @@
  #define CR_NEW_STMT_METADATA    2057
  #define CR_AUTH_PLUGIN_CANNOT_LOAD 2058
  #define CR_ALREADY_CONNECTED    2059
 +#define CR_PLUGIN_FUNCTION_NOT_SUPPORTED 2060
  
  #define SQLSTATE_UNKNOWN "HY000"
-
-=== modified file 'include/m_ctype.h'
---- mariadb/include/m_ctype.h	2012-11-14 17:43:45 +0000
-+++ mariadb/include/m_ctype.h	2013-03-14 21:01:43 +0000
-@@ -32,6 +32,8 @@
++
++#endif
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/global.h mariadb-native-client.trunk/include/global.h
+--- mariadb/include/global.h	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/include/global.h	2013-10-19 07:29:16.000000000 +0200
+@@ -402,11 +402,7 @@
+ #define IO_SIZE			4096
+ /* How much overhead does malloc have. The code often allocates
+    something like 1024-MALLOC_OVERHEAD bytes */
+-#ifdef SAFEMALLOC
+-#define MALLOC_OVERHEAD (8+24+4)
+-#else
+ #define MALLOC_OVERHEAD 8
+-#endif
+ 	/* get memory in huncs */
+ #define ONCE_ALLOC_INIT		(uint) (4096-MALLOC_OVERHEAD)
+ 	/* Typical record cash */
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/hash.h mariadb-native-client.trunk/include/hash.h
+--- mariadb/include/hash.h	2013-10-19 08:05:08.000000000 +0200
++++ mariadb/include/hash.h	2013-10-19 07:29:16.000000000 +0200
+@@ -1,4 +1,6 @@
+-/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
++/************************************************************************************
++    Copyright (C) 2000, 2012 MySQL AB & MySQL Finland AB & TCX DataKonsult AB,
++                 Monty Program AB
+    
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Library General Public
+@@ -11,11 +13,13 @@
+    Library General Public License for more details.
+    
+    You should have received a copy of the GNU Library General Public
+-   License along with this library; if not, write to the Free
+-   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+-   MA 02111-1307, USA */
+-
+-/* Dynamic hashing of record with different key-length */
++   License along with this library; if not see <http://www.gnu.org/licenses>
++   or write to the Free Software Foundation, Inc., 
++   51 Franklin St., Fifth Floor, Boston, MA 02110, USA
++
++   Part of this code includes code from the PHP project which
++   is freely available from http://www.php.net
++*************************************************************************************/
+ 
+ #ifndef _hash_h
+ #define _hash_h
+@@ -23,7 +27,7 @@
+ extern "C" {
+ #endif
+ 
+-typedef byte *(*hash_get_key)(const byte *,uint*,my_bool);
++typedef uchar *(*hash_get_key)(const uchar *,uint*,my_bool);
+ typedef void (*hash_free_key)(void *);
+ 
+   /* flags for hash_init */
+@@ -31,7 +35,7 @@
+ 
+ typedef struct st_hash_info {
+   uint next;					/* index to next key */
+-  byte *data;					/* data for current entry */
++  uchar *data;					/* data for current entry */
+ } HASH_LINK;
+ 
+ typedef struct st_hash {
+@@ -41,7 +45,7 @@
+   DYNAMIC_ARRAY array;				/* Place for hash_keys */
+   hash_get_key get_key;
+   void (*free)(void *);
+-  uint (*calc_hashnr)(const byte *key,uint length);
++  uint (*calc_hashnr)(const uchar *key,uint length);
+ } HASH;
+ 
+ #define hash_init(A,B,C,D,E,F,G) _hash_init(A,B,C,D,E,F,G CALLER_INFO)
+@@ -49,12 +53,12 @@
+ 		  uint key_length, hash_get_key get_key,
+ 		  void (*free_element)(void*), uint flags CALLER_INFO_PROTO);
+ void hash_free(HASH *tree);
+-byte *hash_element(HASH *hash,uint idx);
+-gptr hash_search(HASH *info,const byte *key,uint length);
+-gptr hash_next(HASH *info,const byte *key,uint length);
+-my_bool hash_insert(HASH *info,const byte *data);
+-my_bool hash_delete(HASH *hash,byte *record);
+-my_bool hash_update(HASH *hash,byte *record,byte *old_key,uint old_key_length);
++uchar *hash_element(HASH *hash,uint idx);
++gptr hash_search(HASH *info,const uchar *key,uint length);
++gptr hash_next(HASH *info,const uchar *key,uint length);
++my_bool hash_insert(HASH *info,const uchar *data);
++my_bool hash_delete(HASH *hash,uchar *record);
++my_bool hash_update(HASH *hash,uchar *record,uchar *old_key,uint old_key_length);
+ my_bool hash_check(HASH *hash);			/* Only in debug library */
+ 
+ #define hash_clear(H) bzero((char*) (H),sizeof(*(H)))
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/ma_common.h mariadb-native-client.trunk/include/ma_common.h
+--- mariadb/include/ma_common.h	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/include/ma_common.h	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,52 @@
++/* Copyright (C) 2013 by MontyProgram AB
++
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Library General Public
++   License as published by the Free Software Foundation; either
++   version 2 of the License, or (at your option) any later version.
++   
++   This library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Library General Public License for more details.
++   
++   You should have received a copy of the GNU Library General Public
++   License along with this library; if not, write to the Free
++   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
++   MA 02111-1307, USA */
++
++/* defines for the libmariadb library */
++
++#ifndef _ma_common_h
++#define _ma_common_h
++
++#include <mysql.h>
++#include <hash.h>
++
++
++typedef struct st_mariadb_db_driver
++{
++  struct st_mariadb_client_plugin_DB *plugin;
++  char *name;
++  void *buffer;
++} MARIADB_DB_DRIVER;
++
++struct st_mysql_options_extention {
++  char *plugin_dir;
++  char *default_auth;
++  char *ssl_crl;
++  char *ssl_crlpath;
++  char *server_public_key_path;
++  HASH connect_attrs;
++  size_t connect_attrs_len;
++  void (*report_progress)(const MYSQL *mysql,
++                          unsigned int stage,
++                          unsigned int max_stage,
++                          double progress,
++                          const char *proc_info,
++                          unsigned int proc_info_length);
++  MARIADB_DB_DRIVER       *db_driver;
++};
++
++
++#endif
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/ma_dyncol.h mariadb-native-client.trunk/include/ma_dyncol.h
+--- mariadb/include/ma_dyncol.h	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/include/ma_dyncol.h	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,244 @@
++/* Copyright (c) 2011, Monty Program Ab
++   Copyright (c) 2011, Oleksandr Byelkin
++
++   Redistribution and use in source and binary forms, with or without
++   modification, are permitted provided that the following conditions are
++   met:
++
++   1. Redistributions of source code must retain the above copyright
++   notice, this list of conditions and the following disclaimer.
++
++   2. Redistributions in binary form must the following disclaimer in
++     the documentation and/or other materials provided with the
++     distribution.
++
++   THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ``AS IS'' AND ANY
++   EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++   PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
++   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
++   USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
++   ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
++   OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
++   OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++   SUCH DAMAGE.
++*/
++
++#ifndef ma_dyncol_h
++#define ma_dyncol_h
++
++#ifdef	__cplusplus
++extern "C" {
++#endif
++
++#ifndef LIBMARIADB
++#include <decimal.h>
++#include <my_decimal_limits.h>
++#endif
++#include <mysql.h>
++
++#ifndef _my_sys_h
++typedef struct st_dynamic_string
++{
++  char *str;
++  size_t length,max_length,alloc_increment;
++} DYNAMIC_STRING;
++#endif
++
++struct st_mysql_lex_string
++{
++  char *str;
++  size_t length;
++};
++typedef struct st_mysql_lex_string MYSQL_LEX_STRING;
++typedef struct st_mysql_lex_string LEX_STRING;
++/*
++  Limits of implementation
++*/
++#define MAX_TOTAL_NAME_LENGTH 65535
++#define MAX_NAME_LENGTH (MAX_TOTAL_NAME_LENGTH/4)
++
++/* NO and OK is the same used just to show semantics */
++#define ER_DYNCOL_NO ER_DYNCOL_OK
++
++enum enum_dyncol_func_result
++{
++  ER_DYNCOL_OK= 0,
++  ER_DYNCOL_YES= 1,                /* For functions returning 0/1 */
++  ER_DYNCOL_FORMAT= -1,            /* Wrong format of the encoded string */
++  ER_DYNCOL_LIMIT=  -2,            /* Some limit reached */
++  ER_DYNCOL_RESOURCE= -3,          /* Out of resourses */
++  ER_DYNCOL_DATA= -4,              /* Incorrect input data */
++  ER_DYNCOL_UNKNOWN_CHARSET= -5,   /* Unknown character set */
++  ER_DYNCOL_TRUNCATED= 2           /* OK, but data was truncated */
++};
++
++typedef DYNAMIC_STRING DYNAMIC_COLUMN;
++
++enum enum_dynamic_column_type
++{
++  DYN_COL_NULL= 0,
++  DYN_COL_INT,
++  DYN_COL_UINT,
++  DYN_COL_DOUBLE,
++  DYN_COL_STRING,
++  DYN_COL_DECIMAL,
++  DYN_COL_DATETIME,
++  DYN_COL_DATE,
++  DYN_COL_TIME,
++  DYN_COL_DYNCOL
++};
++
++typedef enum enum_dynamic_column_type DYNAMIC_COLUMN_TYPE;
++
++struct st_dynamic_column_value
++{
++  DYNAMIC_COLUMN_TYPE type;
++  union
++  {
++    long long long_value;
++    unsigned long long ulong_value;
++    double double_value;
++    struct {
++      MYSQL_LEX_STRING value;
++      CHARSET_INFO *charset;
++    } string;
++#ifndef LIBMARIADB
++    struct {
++      decimal_digit_t buffer[DECIMAL_BUFF_LENGTH];
++      decimal_t value;
++    } decimal;
++#endif
++    MYSQL_TIME time_value;
++  } x;
++};
++
++typedef struct st_dynamic_column_value DYNAMIC_COLUMN_VALUE;
++
++#ifdef MADYNCOL_DEPRECATED
++enum enum_dyncol_func_result
++dynamic_column_create(DYNAMIC_COLUMN *str,
++                      uint column_nr, DYNAMIC_COLUMN_VALUE *value);
++
++enum enum_dyncol_func_result
++dynamic_column_create_many(DYNAMIC_COLUMN *str,
++                           uint column_count,
++                           uint *column_numbers,
++                           DYNAMIC_COLUMN_VALUE *values);
++enum enum_dyncol_func_result
++dynamic_column_update(DYNAMIC_COLUMN *org, uint column_nr,
++                      DYNAMIC_COLUMN_VALUE *value);
++enum enum_dyncol_func_result
++dynamic_column_update_many(DYNAMIC_COLUMN *str,
++                           uint add_column_count,
++                           uint *column_numbers,
++                           DYNAMIC_COLUMN_VALUE *values);
++
++enum enum_dyncol_func_result
++dynamic_column_exists(DYNAMIC_COLUMN *org, uint column_nr);
++
++enum enum_dyncol_func_result
++dynamic_column_list(DYNAMIC_COLUMN *org, DYNAMIC_ARRAY *array_of_uint);
++
++enum enum_dyncol_func_result
++dynamic_column_get(DYNAMIC_COLUMN *org, uint column_nr,
++                   DYNAMIC_COLUMN_VALUE *store_it_here);
++#endif
++
++/* new functions */
++enum enum_dyncol_func_result
++mariadb_dyncol_create_many_num(DYNAMIC_COLUMN *str,
++                               uint column_count,
++                               uint *column_numbers,
++                               DYNAMIC_COLUMN_VALUE *values,
++                               my_bool new_string);
++enum enum_dyncol_func_result
++mariadb_dyncol_create_many_named(DYNAMIC_COLUMN *str,
++                                 uint column_count,
++                                 MYSQL_LEX_STRING *column_keys,
++                                 DYNAMIC_COLUMN_VALUE *values,
++                                 my_bool new_string);
++
++
++enum enum_dyncol_func_result
++mariadb_dyncol_update_many_num(DYNAMIC_COLUMN *str,
++                               uint add_column_count,
++                               uint *column_keys,
++                               DYNAMIC_COLUMN_VALUE *values);
++enum enum_dyncol_func_result
++mariadb_dyncol_update_many_named(DYNAMIC_COLUMN *str,
++                                 uint add_column_count,
++                                 MYSQL_LEX_STRING *column_keys,
++                                 DYNAMIC_COLUMN_VALUE *values);
++
++
++enum enum_dyncol_func_result
++mariadb_dyncol_exists_num(DYNAMIC_COLUMN *org, uint column_nr);
++enum enum_dyncol_func_result
++mariadb_dyncol_exists_named(DYNAMIC_COLUMN *str, MYSQL_LEX_STRING *name);
++
++/* List of not NULL columns */
++enum enum_dyncol_func_result
++mariadb_dyncol_list_num(DYNAMIC_COLUMN *str, uint *count, uint **nums);
++enum enum_dyncol_func_result
++mariadb_dyncol_list_named(DYNAMIC_COLUMN *str, uint *count,
++                          MYSQL_LEX_STRING **names);
++
++/*
++   if the column do not exists it is NULL
++*/
++enum enum_dyncol_func_result
++mariadb_dyncol_get_num(DYNAMIC_COLUMN *org, uint column_nr,
++                       DYNAMIC_COLUMN_VALUE *store_it_here);
++enum enum_dyncol_func_result
++mariadb_dyncol_get_named(DYNAMIC_COLUMN *str, MYSQL_LEX_STRING *name,
++                         DYNAMIC_COLUMN_VALUE *store_it_here);
++
++my_bool mariadb_dyncol_has_names(DYNAMIC_COLUMN *str);
++
++enum enum_dyncol_func_result
++mariadb_dyncol_check(DYNAMIC_COLUMN *str);
++
++enum enum_dyncol_func_result
++mariadb_dyncol_json(DYNAMIC_COLUMN *str, DYNAMIC_STRING *json);
++
++void mariadb_dyncol_free(DYNAMIC_COLUMN *str);
++
++#define mariadb_dyncol_init(A) memset((A), 0, sizeof(DYNAMIC_COLUMN))
++#define dynamic_column_initialize(A) mariadb_dyncol_init((A))
++#define dynamic_column_column_free(A) mariadb_dyncol_free((A))
++
++/* conversion of values to 3 base types */
++enum enum_dyncol_func_result
++mariadb_dyncol_val_str(DYNAMIC_STRING *str, DYNAMIC_COLUMN_VALUE *val,
++                       CHARSET_INFO *cs, my_bool quote);
++enum enum_dyncol_func_result
++mariadb_dyncol_val_long(longlong *ll, DYNAMIC_COLUMN_VALUE *val);
++enum enum_dyncol_func_result
++mariadb_dyncol_val_double(double *dbl, DYNAMIC_COLUMN_VALUE *val);
++
++enum enum_dyncol_func_result
++mariadb_dyncol_unpack(DYNAMIC_COLUMN *str,
++                      uint *count,
++                      MYSQL_LEX_STRING **names, DYNAMIC_COLUMN_VALUE **vals);
++
++int mariadb_dyncol_column_cmp_named(const MYSQL_LEX_STRING *s1,
++                                    const MYSQL_LEX_STRING *s2);
++
++enum enum_dyncol_func_result
++mariadb_dyncol_column_count(DYNAMIC_COLUMN *str, uint *column_count);
++
++#define mariadb_dyncol_value_init(V) (V)->type= DYN_COL_NULL
++
++/*
++  Prepare value for using as decimal
++*/
++void mariadb_dyncol_prepare_decimal(DYNAMIC_COLUMN_VALUE *value);
++
++
++#ifdef	__cplusplus
++}
++#endif
++#endif
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/ma_secure.h mariadb-native-client.trunk/include/ma_secure.h
+--- mariadb/include/ma_secure.h	1970-01-01 01:00:00.000000000 +0100
++++ mariadb/include/ma_secure.h	2013-10-19 07:29:16.000000000 +0200
+@@ -0,0 +1,44 @@
++/************************************************************************************
++    Copyright (C) 2012 Monty Program AB
++   
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Library General Public
++   License as published by the Free Software Foundation; either
++   version 2 of the License, or (at your option) any later version.
++   
++   This library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Library General Public License for more details.
++   
++   You should have received a copy of the GNU Library General Public
++   License along with this library; if not see <http://www.gnu.org/licenses>
++   or write to the Free Software Foundation, Inc., 
++   51 Franklin St., Fifth Floor, Boston, MA 02110, USA
++
++   Part of this code includes code from the PHP project which
++   is freely available from http://www.php.net
++*************************************************************************************/
++#ifndef _ma_secure_h_
++#define _ma_secure_h_
++
++#ifdef HAVE_OPENSSL
++#include <mysql.h>
++#include <openssl/ssl.h> /* SSL and SSL_CTX */
++#include <openssl/err.h> /* error reporting */
++#include <openssl/conf.h>
++
++struct MYSQL;
++
++size_t my_ssl_read(Vio *vio, uchar* buf, size_t size);
++int my_ssl_close(Vio *vio);
++size_t my_ssl_write(Vio *vio, const uchar* buf, size_t size);
++SSL *my_ssl_init(MYSQL *mysql);
++int my_ssl_connect(SSL *ssl);
++int my_ssl_verify_server_cert(SSL *ssl);
++
++int my_ssl_start(MYSQL *mysql);
++void my_ssl_end(void);
++
++#endif /* HAVE_OPENSSL */
++#endif /* _ma_secure_h_ */
+diff -x .bzr -u --recursive -N mariadb-native-client.release/include/m_ctype.h mariadb-native-client.trunk/include/m_ctype.h

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list