list assigned leases using "ipsec leases"
[strongswan.git] / configure.in
index 8f3b7fa..ea9b6dd 100644 (file)
@@ -16,7 +16,7 @@ dnl ===========================
 dnl  initialize & set some vars
 dnl ===========================
 
-AC_INIT(strongSwan,4.2.9)
+AC_INIT(strongSwan,4.2.10)
 AM_INIT_AUTOMAKE(tar-ustar)
 AC_C_BIGENDIAN
 AC_SUBST(confdir, '${sysconfdir}')
@@ -378,6 +378,14 @@ AC_ARG_ENABLE(
 )
 
 AC_ARG_ENABLE(
+       [lock-profiler],
+       AS_HELP_STRING([--enable-lock-profiler],[enable lock/mutex profiling code (default is NO).]),
+       [if test x$enableval = xyes; then
+               lock_profiler=true
+       fi]
+)
+
+AC_ARG_ENABLE(
        [unit-tests],
        AS_HELP_STRING([--enable-unit-tests],[enable unit tests on IKEv2 daemon startup (default is NO).]),
        [if test x$enableval = xyes; then
@@ -386,6 +394,14 @@ AC_ARG_ENABLE(
 )
 
 AC_ARG_ENABLE(
+       [load-tests],
+       AS_HELP_STRING([--enable-load-tests],[enable load testing plugin for IKEv2 daemon (default is NO).]),
+       [if test x$enableval = xyes; then
+               loadtest=true
+       fi]
+)
+
+AC_ARG_ENABLE(
        [eap-sim],
        AS_HELP_STRING([--enable-eap-sim],[build SIM authenication module for EAP (default is NO).]),
        [if test x$enableval = xyes; then
@@ -445,6 +461,22 @@ AC_ARG_ENABLE(
 )
 
 AC_ARG_ENABLE(
+       [kernel-pfkey],
+       AS_HELP_STRING([--enable-kernel-pfkey],[enable the PF_KEY kernel interface. (default is NO).]),
+       [if test x$enableval = xyes; then
+               kernel_pfkey=true
+       fi]
+)
+
+AC_ARG_ENABLE(
+       [kernel-klips],
+       AS_HELP_STRING([--enable-kernel-klips],[enable the KLIPS kernel interface. (default is NO).]),
+       [if test x$enableval = xyes; then
+               kernel_klips=true
+       fi]
+)
+
+AC_ARG_ENABLE(
        [nat-transport],
        AS_HELP_STRING([--enable-nat-transport],[enable NAT traversal with IPsec transport mode (default is NO).]),
        [if test x$enableval = xyes; then
@@ -538,6 +570,17 @@ AC_ARG_ENABLE(
 )
 
 AC_ARG_ENABLE(
+       [threads],
+       AS_HELP_STRING([--disable-threads],[disable the use of threads in pluto. Charon always uses threads. (default is NO).]),
+       [if test x$enableval = xyes; then
+               threads=true
+        else
+               threads=false
+       fi],
+       threads=true
+)
+
+AC_ARG_ENABLE(
        [charon],
        AS_HELP_STRING([--disable-charon],[disable the IKEv2 keying daemon charon. (default is NO).]),
        [if test x$enableval = xyes; then
@@ -561,7 +604,7 @@ AC_ARG_ENABLE(
 
 AC_ARG_ENABLE(
        [updown],
-       AS_HELP_STRING([--disable-updown],[disable installation of firewall scripts. (default is NO).]),
+       AS_HELP_STRING([--disable-updown],[disable updown firewall script plugin. (default is NO).]),
        [if test x$enableval = xyes; then
                updown=true
         else
@@ -665,6 +708,21 @@ AC_HAVE_LIBRARY(dl)
 AC_CHECK_FUNCS(backtrace)
 AC_CHECK_FUNCS(dladdr)
 
+AC_MSG_CHECKING([for gcc atomic operations])
+AC_TRY_RUN(
+[
+       int main() {
+               volatile int ref = 1;
+               __sync_fetch_and_add (&ref, 1);
+               __sync_sub_and_fetch (&ref, 1);
+               /* Make sure test fails if operations are not supported */
+               __sync_val_compare_and_swap(&ref, 1, 0);
+               return ref;
+       }
+],
+[AC_MSG_RESULT([yes]); AC_DEFINE(HAVE_GCC_ATOMIC_OPERATIONS)],
+[AC_MSG_RESULT([no])])
+
 if test x$gmp = xtrue; then
        AC_HAVE_LIBRARY([gmp],[LIBS="$LIBS"],[AC_MSG_ERROR([GNU Multi Precision library gmp not found])])
        AC_MSG_CHECKING([gmp.h version >= 4.1.4])
@@ -866,7 +924,9 @@ AM_CONDITIONAL(USE_NM, test x$nm = xtrue)
 AM_CONDITIONAL(USE_UCI, test x$uci = xtrue)
 AM_CONDITIONAL(USE_SMP, test x$smp = xtrue)
 AM_CONDITIONAL(USE_SQL, test x$sql = xtrue)
+AM_CONDITIONAL(USE_UPDOWN, test x$updown = xtrue)
 AM_CONDITIONAL(USE_UNIT_TESTS, test x$unittest = xtrue)
+AM_CONDITIONAL(USE_LOAD_TESTS, test x$loadtest = xtrue)
 AM_CONDITIONAL(USE_EAP_SIM, test x$eap_sim = xtrue)
 AM_CONDITIONAL(USE_EAP_SIM_FILE, test x$eap_sim_file = xtrue)
 AM_CONDITIONAL(USE_EAP_IDENTITY, test x$eap_identity = xtrue)
@@ -874,12 +934,15 @@ AM_CONDITIONAL(USE_EAP_MD5, test x$eap_md5 = xtrue)
 AM_CONDITIONAL(USE_EAP_GTC, test x$eap_gtc = xtrue)
 AM_CONDITIONAL(USE_EAP_AKA, test x$eap_aka = xtrue)
 AM_CONDITIONAL(USE_KERNEL_NETLINK, test x$kernel_netlink = xtrue)
+AM_CONDITIONAL(USE_KERNEL_PFKEY, test x$kernel_pfkey = xtrue)
+AM_CONDITIONAL(USE_KERNEL_KLIPS, test x$kernel_klips = xtrue)
 
 dnl other options
 dnl =============
 AM_CONDITIONAL(USE_SMARTCARD, test x$smartcard = xtrue)
 AM_CONDITIONAL(USE_CISCO_QUIRKS, test x$cisco_quirks = xtrue)
 AM_CONDITIONAL(USE_LEAK_DETECTIVE, test x$leak_detective = xtrue)
+AM_CONDITIONAL(USE_LOCK_PROFILER, test x$lock_profiler = xtrue)
 AM_CONDITIONAL(USE_NAT_TRANSPORT, test x$nat_transport = xtrue)
 AM_CONDITIONAL(USE_VENDORID, test x$vendor_id = xtrue)
 AM_CONDITIONAL(USE_XAUTH_VID, test x$xauth_vid = xtrue)
@@ -891,9 +954,9 @@ AM_CONDITIONAL(USE_INTEGRITY_TEST, test x$integrity_test = xtrue)
 AM_CONDITIONAL(USE_SELF_TEST, test x$self_test = xtrue)
 AM_CONDITIONAL(USE_CAPABILITIES, test x$capabilities = xlibcap)
 AM_CONDITIONAL(USE_PLUTO, test x$pluto = xtrue)
+AM_CONDITIONAL(USE_THREADS, test x$threads = xtrue)
 AM_CONDITIONAL(USE_CHARON, test x$charon = xtrue)
 AM_CONDITIONAL(USE_TOOLS, test x$tools = xtrue)
-AM_CONDITIONAL(USE_UPDOWN, test x$updown = xtrue)
 AM_CONDITIONAL(USE_LIBSTRONGSWAN, test x$charon = xtrue -o x$tools = xtrue)
 AM_CONDITIONAL(USE_FILE_CONFIG, test x$pluto = xtrue -o x$stroke = xtrue)
 
@@ -949,6 +1012,8 @@ AC_OUTPUT(
        src/charon/plugins/eap_sim/Makefile
        src/charon/plugins/eap_sim_file/Makefile
        src/charon/plugins/kernel_netlink/Makefile
+       src/charon/plugins/kernel_pfkey/Makefile
+       src/charon/plugins/kernel_klips/Makefile
        src/charon/plugins/smp/Makefile
        src/charon/plugins/sql/Makefile
        src/charon/plugins/medsrv/Makefile
@@ -956,7 +1021,9 @@ AC_OUTPUT(
        src/charon/plugins/nm/Makefile
        src/charon/plugins/uci/Makefile
        src/charon/plugins/stroke/Makefile
+       src/charon/plugins/updown/Makefile
        src/charon/plugins/unit_tester/Makefile
+       src/charon/plugins/load_tester/Makefile
        src/stroke/Makefile
        src/ipsec/Makefile
        src/starter/Makefile