summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/ac-macros/plugins.m411
-rw-r--r--configure.in13
-rw-r--r--sql/sql_yacc.yy2
3 files changed, 24 insertions, 2 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])
diff --git a/configure.in b/configure.in
index 0fe2f1b5510..0c5fe692edf 100644
--- a/configure.in
+++ b/configure.in
@@ -1745,7 +1745,18 @@ then
LDFLAGS="$LDFLAGS -rdynamic"
AC_MSG_RESULT("-rdynamic")
else
- AC_MSG_RESULT("none")
+ case "$SYSTEM_TYPE$with_mysqld_ldflags " in
+ *freebsd*"-all-static "*|*dragonfly*"-all-static "*)
+ AC_MSG_RESULT("none")
+ ;;
+ *freebsd*|*dragonfly*)
+ MYSQLD_EXTRA_LDFLAGS="$MYSQLD_EXTRA_LDFLAGS -export-dynamic"
+ AC_MSG_RESULT("-export-dynamic")
+ ;;
+ *)
+ AC_MSG_RESULT("none")
+ ;;
+ esac
fi
dnl Checks for typedefs, structures, and compiler characteristics.
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 30e62c5d7b5..16fda2886f8 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -6492,7 +6492,7 @@ bool_pri:
{ $$= (*$2)(0)->create($1,$3); }
| bool_pri comp_op all_or_any '(' subselect ')' %prec EQ
{ $$= all_any_subquery_creator($1, $2, $3, $5); }
- | predicate ;
+ | predicate
;
predicate: