summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/ac-macros/plugins.m455
1 files changed, 43 insertions, 12 deletions
diff --git a/config/ac-macros/plugins.m4 b/config/ac-macros/plugins.m4
index 86481cd0aa9..cfc70d188a9 100644
--- a/config/ac-macros/plugins.m4
+++ b/config/ac-macros/plugins.m4
@@ -38,6 +38,7 @@ AC_DEFUN([_MYSQL_PLUGIN],[
_MYSQL_PLUGAPPEND([__mysql_plugin_list__],[$1])
m4_define([MYSQL_PLUGIN_NAME_]AS_TR_CPP([$1]), [$3])
m4_define([MYSQL_PLUGIN_DESC_]AS_TR_CPP([$1]), [$4])
+ m4_ifdef([_AC_ENABLE_IF], [_AC_ENABLE_IF([with],[plugin-$1])])
_MYSQL_PLUGAPPEND_META([$1], $5)
ifelse(m4_bregexp(__mysql_include__,[/plug\.in$]),-1,[],[
MYSQL_PLUGIN_DIRECTORY([$1],
@@ -202,6 +203,30 @@ AC_DEFUN([_MYSQL_PLUGIN_DISABLED],[
dnl ---------------------------------------------------------------------------
+dnl Macro: MYSQL_PLUGIN_WITHOUT
+dnl
+dnl SYNOPSIS
+dnl MYSQL_PLUGIN_WITHOUT([name])
+dnl
+dnl DESCRIPTION
+dnl Exclude the plugin from being built, as if --without-plugin-name
+dnl was specified.
+dnl If the plugin was selected manually by --with-plugin-name,
+dnl excluding it here will abort the configure script with an error,
+dnl otherwise plugin will be silently disabled.
+dnl
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([MYSQL_PLUGIN_WITHOUT],[
+ MYSQL_REQUIRE_PLUGIN([$1])
+ if test "X[$with_plugin_]$1" = Xyes; then
+ AC_MSG_ERROR([Plugin $1 cannot be built])
+ else
+ [with_plugin_]$1=no
+ fi
+])
+
+dnl ---------------------------------------------------------------------------
dnl Macro: MYSQL_PLUGIN_DEPENDS
dnl
dnl SYNOPSIS
@@ -342,7 +367,7 @@ AC_DEFUN([_MYSQL_EMIT_CHECK_PLUGIN],[
AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
m4_ifdef([$5],[
- AH_TEMPLATE($5, [Include ]$4[ into mysqld])
+ AH_TEMPLATE($5, [Include ]$3[ into mysqld])
])
AC_MSG_CHECKING([whether to use ]$3)
mysql_use_plugin_dir=""
@@ -350,10 +375,10 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
if test "X[$mysql_plugin_]$2" = Xyes -a \
"X[$with_plugin_]$2" != Xno -o \
"X[$with_plugin_]$2" = Xyes; then
- AC_MSG_RESULT([error])
+ __MYSQL_EMIT_CHECK_RESULT($3,[error])
AC_MSG_ERROR([disabled])
fi
- AC_MSG_RESULT([no])
+ __MYSQL_EMIT_CHECK_RESULT($3,[no])
],[
# Plugin is not disabled, determine if it should be built,
@@ -364,7 +389,7 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
# Plugin directory was removed after autoconf was run; treat
# this as a disabled plugin
if test "X[$with_plugin_]$2" = Xyes; then
- AC_MSG_RESULT([error])
+ __MYSQL_EMIT_CHECK_RESULT($3,[error])
AC_MSG_ERROR([disabled])
fi
@@ -375,7 +400,7 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
m4_ifdef([$9],[
if test "X[$with_plugin_]$2" = Xno; then
- AC_MSG_RESULT([error])
+ __MYSQL_EMIT_CHECK_RESULT($3,[error])
AC_MSG_ERROR([cannot disable mandatory plugin])
fi
[mysql_plugin_]$2=yes
@@ -402,7 +427,7 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
if test "X[$with_plugin_]$2" = Xno; then
- AC_MSG_RESULT([no])
+ __MYSQL_EMIT_CHECK_RESULT($3,[no])
else
m4_ifdef([$8],m4_ifdef([$7],[],[[with_plugin_]$2='']))
if test "X[$mysql_plugin_]$2" != Xyes -a \
@@ -415,16 +440,16 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
AC_SUBST([plugin_]$2[_shared_target], "$8")
AC_SUBST([plugin_]$2[_static_target], [""])
[with_plugin_]$2=yes
- AC_MSG_RESULT([plugin])
+ __MYSQL_EMIT_CHECK_RESULT($3,[plugin])
m4_ifdef([$6],[
else
[mysql_plugin_]$2=no
- AC_MSG_RESULT([no])
+ __MYSQL_EMIT_CHECK_RESULT($3,[no])
fi
])
],[
[with_plugin_]$2=no
- AC_MSG_RESULT([no])
+ __MYSQL_EMIT_CHECK_RESULT($3,[no])
])
else
m4_ifdef([$7],[
@@ -457,7 +482,7 @@ dnl Although this is "pretty", it breaks libmysqld build
AC_SUBST([plugin_]$2[_shared_target], [""])
],[
m4_ifdef([$6],[
- AC_MSG_RESULT([error])
+ __MYSQL_EMIT_CHECK_RESULT($3,[error])
AC_MSG_ERROR([Plugin $1 does not support static linking])
],[
m4_ifdef([$5],[
@@ -467,9 +492,9 @@ dnl Although this is "pretty", it breaks libmysqld build
])
])
])
- mysql_plugin_defs="$mysql_plugin_defs, [builtin_]$2[_plugin]"
+ maria_plugin_defs="$maria_plugin_defs, [builtin_maria_]$2[_plugin]"
[with_plugin_]$2=yes
- AC_MSG_RESULT([yes])
+ __MYSQL_EMIT_CHECK_RESULT($3,[yes])
m4_ifdef([$11], [
m4_foreach([plugin], [$11], [
condition_dependent_plugin_modules="$condition_dependent_plugin_modules m4_bregexp(plugin, [[^/]+$], [\&])"
@@ -525,6 +550,12 @@ dnl
])
])
+AC_DEFUN([__MYSQL_EMIT_CHECK_RESULT],[
+ AC_MSG_RESULT($2)
+ plugin_report="[$plugin_report]
+m4_format([ * %-32s $2],$1:)"
+])
+
AC_DEFUN([_MYSQL_EMIT_PLUGIN_ACTIONS],[
ifelse($#, 0, [], $#, 1, [
_MYSQL_EMIT_PLUGIN_ACTION([$1])