[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