summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorantony@pcg5ppc.xiphis.org <>2007-10-25 21:19:28 -0700
committerantony@pcg5ppc.xiphis.org <>2007-10-25 21:19:28 -0700
commitada0b493285392baa63650294be59cbcf9748f00 (patch)
treec1bae9176eedaa7470e9c269563fbad377abe794 /config
parente21b150a5947453104d5aa5f2899b87fa391d711 (diff)
downloadmariadb-git-ada0b493285392baa63650294be59cbcf9748f00.tar.gz
Bug#30296
"Dynamic plugins fail to load on FreeBSD" ELF executables need to be linked using the -export-dynamic option to ld(1) for symbols defined in the executable to become visible to dlsym(). Also, do not build plugins on an all-static build.
Diffstat (limited to 'config')
-rw-r--r--config/ac-macros/plugins.m411
1 files changed, 11 insertions, 0 deletions
diff --git a/config/ac-macros/plugins.m4 b/config/ac-macros/plugins.m4
index 48754563992..8dfb698709f 100644
--- a/config/ac-macros/plugins.m4
+++ b/config/ac-macros/plugins.m4
@@ -360,6 +360,17 @@ AC_DEFUN([__MYSQL_EMIT_CHECK_PLUGIN],[
AC_MSG_ERROR([cannot disable mandatory plugin])
fi
[mysql_plugin_]$2=yes
+ ],[
+ case "$with_mysqld_ldflags " in
+ *"-all-static "*)
+ # No need to build shared plugins when mysqld is linked with
+ # -all-static as it won't be able to load them.
+ if test "X[$mysql_plugin_]$2" != Xyes -a \
+ "X[$with_plugin_]$2" != Xyes; then
+ [with_plugin_]$2=no
+ fi
+ ;;
+ esac
])
if test "X[$with_plugin_]$2" = Xno; then
AC_MSG_RESULT([no])