aboutsummaryrefslogtreecommitdiff
path: root/config/plugins.m4
diff options
context:
space:
mode:
Diffstat (limited to 'config/plugins.m4')
-rw-r--r--config/plugins.m426
1 files changed, 18 insertions, 8 deletions
diff --git a/config/plugins.m4 b/config/plugins.m4
index 7ee8412..513c690 100644
--- a/config/plugins.m4
+++ b/config/plugins.m4
@@ -1,11 +1,21 @@
AC_DEFUN([AC_PLUGINS],
[
-AC_ARG_ENABLE([plugins],
-AS_HELP_STRING([--enable-plugins], [Enable support for plugins (defaults no)]),
-[case "${enableval}" in
- yes | "") plugins=yes ;;
- no) plugins=no ;;
- *) plugins=yes ;;
- esac],
-[plugins=no])
+ maybe_plugins=no
+ AC_CHECK_HEADERS([dlfcn.h], [maybe_plugins=yes], [], [AC_INCLUDES_DEFAULT])
+ AC_CHECK_HEADERS([windows.h], [maybe_plugins=yes], [], [AC_INCLUDES_DEFAULT])
+
+ AC_ARG_ENABLE([plugins],
+ AS_HELP_STRING([--enable-plugins], [Enable support for plugins]),
+ [case "${enableval}" in
+ no) plugins=no ;;
+ *) plugins=yes
+ if test "$maybe_plugins" != "yes" ; then
+ AC_MSG_ERROR([Building with plugin support requires a host that supports dlopen.])
+ fi ;;
+ esac],
+ [plugins=$maybe_plugins]
+ )
+ if test "$plugins" = "yes"; then
+ AC_SEARCH_LIBS([dlopen], [dl])
+ fi
])