summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorunknown <joerg@trift2.>2006-11-01 13:26:03 +0100
committerunknown <joerg@trift2.>2006-11-01 13:26:03 +0100
commita1db0e72de8805fe0652c7142be5ec59cd659c67 (patch)
treed892b80d02ea4fde1d578793a28d89757ed13b4a /config
parent40a3f6f72e5eae25c6fc86d667d0a21f643f8005 (diff)
parentc35715392f01b34865a5cbbdbfa89efb58814482 (diff)
downloadmariadb-git-a1db0e72de8805fe0652c7142be5ec59cd659c67.tar.gz
Merge trift2.:/MySQL/M51/clone-5.1
into trift2.:/MySQL/M51/push-5.1 configure.in: Auto merged sql/sql_yacc.yy: Auto merged storage/ndb/src/mgmsrv/Services.cpp: Auto merged storage/ndb/src/ndbapi/NdbScanOperation.cpp: Auto merged
Diffstat (limited to 'config')
-rw-r--r--config/ac-macros/plugins.m432
1 files changed, 32 insertions, 0 deletions
diff --git a/config/ac-macros/plugins.m4 b/config/ac-macros/plugins.m4
index 87f057e696a..b022ab67045 100644
--- a/config/ac-macros/plugins.m4
+++ b/config/ac-macros/plugins.m4
@@ -254,6 +254,29 @@ AC_DEFUN([MYSQL_PLUGIN_ACTIONS],[
])
dnl ---------------------------------------------------------------------------
+dnl Macro: MYSQL_PLUGIN_DEPENDS_ON_MYSQL_INTERNALS
+dnl
+dnl SYNOPSIS
+dnl MYSQL_PLUGIN_DEPENDS_ON_MYSQL_INTERNALS([name],[file name])
+dnl
+dnl DESCRIPTION
+dnl Some modules in plugins keep dependance on structures
+dnl declared in sql/ (THD class usually)
+dnl That has to be fixed in the future, but until then
+dnl we have to recompile these modules when we want to
+dnl to compile server parts with the different #defines
+dnl Normally it happens when we compile the embedded server
+dnl Thus one should mark such files in his handler using this macro
+dnl (currently only one such a file per plugin is supported)
+dnl
+dnl ---------------------------------------------------------------------------
+
+AC_DEFUN([MYSQL_PLUGIN_DEPENDS_ON_MYSQL_INTERNALS],[
+ MYSQL_REQUIRE_PLUGIN([$1])
+ m4_define([MYSQL_PLUGIN_DEPENDS_ON_MYSQL_INTERNALS_]AS_TR_CPP([$1]), [$2])
+])
+
+dnl ---------------------------------------------------------------------------
dnl Macro: MYSQL_CONFIGURE_PLUGINS
dnl
dnl SYNOPSIS
@@ -282,6 +305,9 @@ AC_DEFUN([MYSQL_CONFIGURE_PLUGINS],[
AC_SUBST([mysql_pg_dirs])
AC_SUBST([mysql_se_unittest_dirs])
AC_SUBST([mysql_pg_unittest_dirs])
+ AC_SUBST([condition_dependent_plugin_modules])
+ AC_SUBST([condition_dependent_plugin_links])
+ AC_SUBST([condition_dependent_plugin_includes])
])
])
])
@@ -307,6 +333,7 @@ AC_DEFUN([_MYSQL_EMIT_CHECK_PLUGIN],[
[MYSQL_PLUGIN_DYNAMIC_]AS_TR_CPP([$1]),
[MYSQL_PLUGIN_MANDATORY_]AS_TR_CPP([$1]),
[MYSQL_PLUGIN_DISABLED_]AS_TR_CPP([$1]),
+ [MYSQL_PLUGIN_DEPENDS_ON_MYSQL_INTERNALS_]AS_TR_CPP([$1]),
[MYSQL_PLUGIN_ACTIONS_]AS_TR_CPP([$1])
)
])
@@ -402,6 +429,11 @@ dnl Although this is "pretty", it breaks libmysqld build
mysql_plugin_defs="$mysql_plugin_defs, [builtin_]$2[_plugin]"
[with_plugin_]$2=yes
AC_MSG_RESULT([yes])
+ m4_ifdef([$11],[
+ condition_dependent_plugin_modules="$condition_dependent_plugin_modules m4_bregexp($11, [[^/]+$], [\&])"
+ condition_dependent_plugin_links="$condition_dependent_plugin_links $6/$11"
+ condition_dependent_plugin_includes="$condition_dependent_plugin_includes -I[\$(top_srcdir)]/$6/m4_bregexp($11, [^.+[/$]], [\&])"
+ ])
fi
m4_ifdef([$6],[
if test -n "$mysql_use_plugin_dir" ; then