From fa4a35fd4b069bde6cc6d924f18376096b644737 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Sun, 8 Sep 2019 20:05:18 +0200 Subject: Added detection whether the basic structure of MySQL / MariaDB client is named st_mysql or MYSQL. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This resolves FTBFS with MySQL client >= 8.0. This resolves issue #4. Signed-off-by: Slávek Banko --- kexi/kexidb/drivers/configure.in.in | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'kexi/kexidb/drivers/configure.in.in') diff --git a/kexi/kexidb/drivers/configure.in.in b/kexi/kexidb/drivers/configure.in.in index 1afe3487..a5126cf4 100644 --- a/kexi/kexidb/drivers/configure.in.in +++ b/kexi/kexidb/drivers/configure.in.in @@ -90,6 +90,43 @@ dnl *** Show that we are doing as requested. *** AC_MSG_NOTICE([Not attempting to configure MySQL as requested]) fi +if test "$compile_mysql_plugin" = "yes"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS -I$mysql_incdir" + + AC_MSG_CHECKING([if mysql has st_mysql struct]) + AC_TRY_COMPILE( + [ + #include + typedef struct st_mysql MYSQL; + ], + [], + AC_MSG_RESULT( yes ) + mysql_struct=st_mysql, + AC_MSG_RESULT( no ) + [ + AC_MSG_CHECKING([if mysql has MYSQL struct]) + AC_TRY_COMPILE( + [ + #include + typedef struct MYSQL MYSQL; + ], + [], + AC_MSG_RESULT( yes ) + mysql_struct=MYSQL, + AC_MSG_RESULT( no ) + compile_mysql_plugin=no + ) + ] + ) + + CXXFLAGS="$save_CXXFLAGS" + AC_LANG_RESTORE +fi + +AC_DEFINE_UNQUOTED(MYSQL_STRUCT, $mysql_struct, [struct type name for MySql]) AM_CONDITIONAL(compile_mysql_plugin, test "$compile_mysql_plugin" = "yes") dnl ======================================== -- cgit v1.2.1