You've already forked mysql-audit
mirror of
https://github.com/trellix-enterprise/mysql-audit.git
synced 2025-12-17 18:24:02 +08:00
new readme with ref to github wiki improve performance of command lookup. Fix cmd type and object type in cached queries. Support for MySQL 5.5.21 offsets
139 lines
3.4 KiB
Plaintext
139 lines
3.4 KiB
Plaintext
# -*- Autoconf -*-
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
AC_PREREQ(2.59)
|
|
AC_INIT(mysql-audit-plugin, [dev])
|
|
AC_CONFIG_AUX_DIR([config-aux])
|
|
AC_CANONICAL_TARGET
|
|
|
|
AC_CONFIG_SRCDIR([src/audit_plugin.cc])
|
|
AC_CONFIG_HEADER([include/_config.h])
|
|
|
|
AC_DEFUN([CHECK_DEBUG], [
|
|
debug_default="no"
|
|
AC_ARG_ENABLE(debug, [ --enable-debug=[no/yes] turn on debugging
|
|
[default=$debug_default]],, enable_debug=$debug_default)
|
|
AC_MSG_CHECKING(whether to enable debugging)
|
|
|
|
if test "x$enable_debug" = "xyes"; then
|
|
CPPFLAGS="$CPPFLAGS -g -D_DEBUG"
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
CPPFLAGS="$CPPFLAGS -g -O2 -DDBUG_OFF"
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
])
|
|
|
|
dnl Run tests using C++ compiler
|
|
dnl AC_LANG(C++)
|
|
|
|
# initialize automake
|
|
AM_INIT_AUTOMAKE([1.8 foreign tar-ustar])
|
|
|
|
|
|
#check debug
|
|
CHECK_DEBUG
|
|
|
|
#check for mysql src
|
|
sinclude(config/ac_mysql.m4)
|
|
MYSQL_SRC_TEST
|
|
MYSQL_PLUGIN_DIR_TEST
|
|
MYSQL_LIB_SERVICES_TEST
|
|
AC_SUBST(MYSQL_INC)
|
|
AC_SUBST(MYSQL_PLUGIN_DIR)
|
|
AC_SUBST(MYSQL_LIBSERVICES)
|
|
#yajl include dir
|
|
YAJL_INC=-I`cd yajl/include && pwd`
|
|
AC_SUBST(YAJL_INC)
|
|
#udis86 include
|
|
UDIS_INC=-I`cd udis86 && pwd`
|
|
AC_SUBST(UDIS_INC)
|
|
|
|
|
|
dnl AC_PROG_CC set CFLAGS=-g if CFLAGS was empty before. Reset to empty value
|
|
dnl when not building a debug version.
|
|
dnl if test "$ac_test_CFLAGS" != set -a "$enable_debug" = no; then
|
|
dnl CFLAGS=
|
|
dnl fi
|
|
dnl AC_PROG_CXX set CXXFLAGS=-g if CXXFLAGS was empty before. Reset to empty
|
|
dnl value when not building a debug version.
|
|
dnl if test "$ac_test_CXXFLAGS" != set -a "$enable_debug" = no; then
|
|
dnl CXXFLAGS=
|
|
dnl fi
|
|
|
|
|
|
#check for programs
|
|
AC_PROG_CC
|
|
AC_PROG_LIBTOOL
|
|
AC_PROG_CXX
|
|
AC_PROG_CPP
|
|
|
|
AC_PATH_PROG(MV, mv, mv)
|
|
AC_PATH_PROG(RM, rm, rm)
|
|
AC_PATH_PROG(CP, cp, cp)
|
|
AC_PATH_PROG(SED, sed, sed)
|
|
AC_PATH_PROG(CMP, cmp, cmp)
|
|
AC_PATH_PROG(CHMOD, chmod, chmod)
|
|
AC_PATH_PROG(HOSTNAME, hostname, hostname)
|
|
AC_PATH_PROG(DIFF, diff, diff)
|
|
|
|
|
|
#for some reason we need to add -D_GNU_SOURCE
|
|
#this should have been added by AC_GNU_SOURCE but doesn't seem
|
|
#to work
|
|
#CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS"
|
|
|
|
#add the mysql flags needed (not needed as we put this in mysql_inc.h)
|
|
#CPPFLAGS="$CPPFLAGS -DMYSQL_DYNAMIC_PLUGIN -DMYSQL_SERVER"
|
|
|
|
#we can add the following flags for better error catching: -Werror -Wimplicit
|
|
CPPFLAGS="$CPPFLAGS -Werror -Wimplicit"
|
|
# From MySQL: Disable exceptions as they seams to create problems with gcc and threads.
|
|
CXXFLAGS="-fno-implicit-templates -fno-exceptions -fno-rtti "
|
|
|
|
#add pthread libs
|
|
LIBS="$LIBS -lpthread"
|
|
|
|
|
|
|
|
|
|
#make sure we have const
|
|
AC_C_CONST
|
|
AC_TYPE_SIZE_T
|
|
|
|
#version stuff
|
|
if test -z "$MYSQL_AUDIT_PLUGIN_VERSION" ;then
|
|
MYSQL_AUDIT_PLUGIN_VERSION=1.0.0
|
|
fi
|
|
if test -z "$MYSQL_AUDIT_PLUGIN_REVISION" ;then
|
|
MYSQL_AUDIT_PLUGIN_REVISION=99999
|
|
fi
|
|
|
|
AC_SUBST(MYSQL_AUDIT_PLUGIN_VERSION)
|
|
AC_SUBST(MYSQL_AUDIT_PLUGIN_REVISION)
|
|
echo "Version: $MYSQL_AUDIT_PLUGIN_VERSION-$MYSQL_AUDIT_PLUGIN_REVISION"
|
|
CPPFLAGS="$CPPFLAGS -DMYSQL_AUDIT_PLUGIN_VERSION='\"$MYSQL_AUDIT_PLUGIN_VERSION\"'"
|
|
CPPFLAGS="$CPPFLAGS -DMYSQL_AUDIT_PLUGIN_REVISION='\"$MYSQL_AUDIT_PLUGIN_REVISION\"'"
|
|
|
|
|
|
#subst the relevant variables
|
|
AC_SUBST(CPPFLAGS)
|
|
AC_SUBST(CXXLAGS)
|
|
AC_SUBST(CLAGS)
|
|
|
|
|
|
AC_CONFIG_FILES([Makefile
|
|
src/Makefile
|
|
yajl/Makefile
|
|
yajl/src/Makefile
|
|
udis86/Makefile
|
|
udis86/libudis86/Makefile
|
|
])
|
|
AC_OUTPUT
|
|
|
|
|
|
AC_MSG_NOTICE([CPPFLAGS: $CPPFLAGS])
|
|
|
|
|