aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.in14
-rw-r--r--m4/macros/enable-disable.m44
2 files changed, 16 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index cef1a4741..d2819e9b2 100644
--- a/configure.in
+++ b/configure.in
@@ -230,6 +230,19 @@ ARG_ENABL_SET([vstr], [enforce using the Vstr string library to replac
ARG_ENABL_SET([monolithic], [build monolithic version of libstrongswan that includes all enabled plugins. Similarly, the plugins of charon are assembled in libcharon.])
ARG_ENABL_SET([bfd-backtraces], [use binutils libbfd to resolve backtraces for memory leaks and segfaults.])
+dnl ===================================
+dnl option to disable default options
+dnl ===================================
+
+ARG_DISBL_SET([defaults], [disable all default plugins (they can be enabled with their respective --enable options)])
+
+if test x$defaults = xfalse; then
+ for option in $enabled_by_default; do
+ eval test x\${${option}_given} = xtrue && continue
+ let $option=false
+ done
+fi
+
dnl =========================
dnl set up compiler and flags
dnl =========================
@@ -994,7 +1007,6 @@ AC_SUBST(medsrv_plugins)
AC_SUBST(nm_plugins)
AC_SUBST(c_plugins)
-AC_SUBST(p_plugins)
AC_SUBST(h_plugins)
AC_SUBST(s_plugins)
diff --git a/m4/macros/enable-disable.m4 b/m4/macros/enable-disable.m4
index 3d423652f..2e4552068 100644
--- a/m4/macros/enable-disable.m4
+++ b/m4/macros/enable-disable.m4
@@ -20,6 +20,7 @@ AC_DEFUN([ARG_ENABL_SET],
# ARG_DISBL_SET(option, help)
# ---------------------------
# Create a --disable-$1 option with helptext, set a variable $1 to true/false
+# All $1 are collected in the variable $enabled_by_default
AC_DEFUN([ARG_DISBL_SET],
[AC_ARG_ENABLE(
[$1],
@@ -32,5 +33,6 @@ AC_DEFUN([ARG_DISBL_SET],
fi],
[patsubst([$1], [-], [_])=true
patsubst([$1], [-], [_])_given=false]
- )]
+ )
+ enabled_by_default=${enabled_by_default}" patsubst([$1], [-], [_])"]
)