#ifndef MYSQL_INCL_H #define MYSQL_INCL_H #ifndef HAVE_CONFIG_H #define HAVE_CONFIG_H #endif #define MYSQL_DYNAMIC_PLUGIN #define MYSQL_SERVER 1 //Fix for VIO. We don't want to using method mapping as then a change in the struct will cause the offsets compiled with to //be wrong. As is the case with ndb which uses a version of Vio with support for ipv6 similar to 5.5 but different from 5.1 #define DONT_MAP_VIO #include #include //version 5.5.x doesn't contain mysql_priv.h . We need to add the includes provided by it. #if MYSQL_VERSION_ID >= 50505 #include #include #include #if MYSQL_VERSION_ID >= 50600 //in 5.6 we use the audit plugin interface #include #endif #include #include #include #include #include #include #include //TODO: use mysql mutex instead of pthread /* #define pthread_mutex_lock mysql_mutex_lock #define pthread_mutex_unlock mysql_mutex_unlock #define pthread_mutex_init mysql_mutex_init #define pthread_mutex_destroy mysql_mutex_destroy #define pthread_mutex_t mysql_mutex_t */ #else #include #endif #include #include #include #include #include //5.5 use my_free with a single param. 5.1 use with 2 params //based on: http://bazaar.launchpad.net/~mysql/myodbc/5.1/view/head:/util/stringutil.h #ifndef x_free # if MYSQL_VERSION_ID >= 50500 # define x_free(A) { void *tmp= (A); if (tmp) my_free((char *) tmp); } # else # define x_free(A) { void *tmp= (A); if (tmp) my_free((char *) tmp,MYF(0)); } # endif #endif #endif //MYSQL_INCL_H