diff options
-rw-r--r-- | configure.ac | 16 | ||||
-rw-r--r-- | plugins/ommysql/ommysql.c | 12 |
2 files changed, 27 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index e7a2619c..5124dabd 100644 --- a/configure.ac +++ b/configure.ac @@ -514,8 +514,24 @@ if test "x$enable_mysql" = "xyes"; then [AC_MSG_FAILURE([MySQL library is missing])], [`mysql_config --libs`] ) + AC_MSG_CHECKING(if we have mysql_library_init) + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $MYSQL_CFLAGS" + save_LIBS="$LIBS" + LIBS="$LIBS $MYSQL_LIBS" + AC_TRY_LINK( + [#include <mysql.h> + #include <stdio.h>], + [mysql_library_init(0, NULL, NULL)], + [have_mysql_library_init=yes], + [have_mysql_library_init=no]) + CFLAGS="$save_CFLAGS" + LIBS="$save_LIBS" fi AM_CONDITIONAL(ENABLE_MYSQL, test x$enable_mysql = xyes) +if test "$have_mysql_library_init" = "yes"; then + AC_DEFINE([HAVE_MYSQL_LIBRARY_INIT], [1], [mysql_library_init available]) +fi AC_SUBST(MYSQL_CFLAGS) AC_SUBST(MYSQL_LIBS) diff --git a/plugins/ommysql/ommysql.c b/plugins/ommysql/ommysql.c index 01f6a844..7ff89f5a 100644 --- a/plugins/ommysql/ommysql.c +++ b/plugins/ommysql/ommysql.c @@ -318,7 +318,11 @@ ENDparseSelectorAct BEGINmodExit CODESTARTmodExit +# ifdef HAVE_MYSQL_LIBRARY_INIT + mysql_library_end(); +# else mysql_server_end(); +# endif ENDmodExit @@ -348,7 +352,13 @@ CODEmodInit_QueryRegCFSLineHdlr CHKiRet(objUse(errmsg, CORE_COMPONENT)); /* we need to init the MySQL library. If that fails, we cannot run */ - if(mysql_server_init(0, NULL, NULL)) { + if( +# ifdef HAVE_MYSQL_LIBRARY_INIT + mysql_library_init(0, NULL, NULL) +# else + mysql_server_init(0, NULL, NULL) +# endif + ) { errmsg.LogError(0, NO_ERRCODE, "ommysql: mysql_server_init() failed, plugin " "can not run"); ABORT_FINALIZE(RS_RET_ERR); |