diff options
author | Slávek Banko <[email protected]> | 2019-09-08 20:05:18 +0200 |
---|---|---|
committer | Slávek Banko <[email protected]> | 2019-09-08 20:05:18 +0200 |
commit | fa4a35fd4b069bde6cc6d924f18376096b644737 (patch) | |
tree | 41f005c57ec51aa08c5fa8cb2e28dc36aa672a9f /kexi | |
parent | 9b2ed2915c07470d5fc3b648b8f1d5feceeba263 (diff) | |
download | koffice-fa4a35fd4b069bde6cc6d924f18376096b644737.tar.gz koffice-fa4a35fd4b069bde6cc6d924f18376096b644737.zip |
Added detection whether the basic structure of MySQL / MariaDB
client is named st_mysql or MYSQL.
This resolves FTBFS with MySQL client >= 8.0.
This resolves issue #4.
Signed-off-by: Slávek Banko <[email protected]>
Diffstat (limited to 'kexi')
-rw-r--r-- | kexi/kexidb/drivers/configure.in.in | 37 | ||||
-rw-r--r-- | kexi/kexidb/drivers/mySQL/mysqlconnection_p.h | 6 |
2 files changed, 42 insertions, 1 deletions
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 <mysql.h> + 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 <mysql.h> + 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 ======================================== diff --git a/kexi/kexidb/drivers/mySQL/mysqlconnection_p.h b/kexi/kexidb/drivers/mySQL/mysqlconnection_p.h index 85d8c57b..9b1ad402 100644 --- a/kexi/kexidb/drivers/mySQL/mysqlconnection_p.h +++ b/kexi/kexidb/drivers/mySQL/mysqlconnection_p.h @@ -20,6 +20,10 @@ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, #ifndef KEXIDB_MYSQLCLIENT_P_H #define KEXIDB_MYSQLCLIENT_P_H +#if defined(HAVE_CONFIG_H) +#include "config.h" +#endif + #include <kexidb/connection_p.h> #ifdef TQ_WS_WIN @@ -28,7 +32,7 @@ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, #include <mysql_version.h> #include <mysql.h> -typedef struct st_mysql MYSQL; +typedef struct MYSQL_STRUCT MYSQL; #undef bool class TQCString; |