chiark / gitweb /
server/peer.c: Handle mobile peers switching addresses.
[tripe] / configure.ac
index 1c67cb78c975b823522e54e263e9288c254bf64f..66d216d0c5884df1cd30cdea19f5dec00688915f 100644 (file)
@@ -31,6 +31,7 @@ AC_INIT([tripe], AUTO_VERSION, [mdw@distorted.org.uk])
 AC_CONFIG_SRCDIR([server/tripe.h])
 AC_CONFIG_AUX_DIR([config])
 AM_INIT_AUTOMAKE([foreign])
+mdw_SILENT_RULES
 
 AC_PROG_CC
 AM_PROG_CC_C_O
@@ -38,6 +39,13 @@ AX_CFLAGS_WARN_ALL
 AC_CANONICAL_HOST
 AM_PROG_LIBTOOL
 
+AC_CHECK_PROGS([AUTOM4TE], [autom4te])
+
+mdw_ORIG_CFLAGS=$CFLAGS
+mdw_ORIG_CPPFLAGS=$CPPFLAGS
+AC_SUBST(AM_CFLAGS)
+AC_SUBST(AM_CPPFLAGS)
+
 dnl--------------------------------------------------------------------------
 dnl C programming environment.
 
@@ -48,18 +56,17 @@ AC_SEARCH_LIBS([socket], [socket])
 case "$host_os" in
   linux)
     AC_ARG_WITH([linux-includes],
-               AS_HELP_STRING(
+               AS_HELP_STRING(
                  [--with-linux-includes=DIR],
                  [Linux kernel includes]),
-               [CFLAGS="$CFLAGS -I$withval"], [:])
+               [AM_CPPFLAGS="AM_CPPFLAGS -I$withval"], [:])
     ;;
 esac
 
-PKG_CHECK_MODULES([mLib], [mLib >= 2.0.4])
+PKG_CHECK_MODULES([mLib], [mLib >= 2.1.0])
 PKG_CHECK_MODULES([catacomb], [catacomb >= 2.1.1])
 
-CFLAGS="$CFLAGS $mLib_CFLAGS $catacomb_CFLAGS"
-LIBS="$LIBS $mLib_LIBS"
+AM_CFLAGS="$AM_CFLAGS $mLib_CFLAGS $catacomb_CFLAGS"
 
 dnl--------------------------------------------------------------------------
 dnl Directories to install things into.
@@ -88,12 +95,22 @@ TRIPE_DEFINE_PATH(
   [pidfile], [FILE], [process-id [[./tripectl.pid]]], [tripectl.pid])
 
 TRIPE_DEFINE_PATH(
-  [initconfig], [FILE], [configuration for init script [[/etc/tripe.conf]]],
-  [/etc/tripe.conf])
+  [initconfig], [FILE],
+  [configuration for init script [[SYSCONFDIR/tripe.conf]]],
+  ['${sysconfdir}/tripe.conf'])
 
 TRIPE_DEFINE_PATH(
   [logfile], [FILE], [logging output [[./tripe.log]]], [tripe.log])
 
+dnl--------------------------------------------------------------------------
+dnl Privilege-separation helper.
+
+mdw_DEFINE_PATHS([
+  AC_DEFINE_UNQUOTED([PRIVSEP_HELPER],
+    ["mdw_PATH([$libexecdir])/mdw_PROG([tripe-privhelper])"],
+    [Pathname of privilege-separation helper.])
+])
+
 dnl--------------------------------------------------------------------------
 dnl Other options.
 
@@ -105,6 +122,19 @@ AC_ARG_WITH([tracing],
              AC_DEFINE([NTRACE], [1], [Disable all tracing.])],
            [:])
 
+dnl--------------------------------------------------------------------------
+dnl Path MTU discovery.
+
+case $host_os in
+  linux*)
+    pmtu=yes
+    ;;
+  *)
+    pmtu=no
+    ;;
+esac
+AM_CONDITIONAL([PATHMTU], [test $pmtu = yes])
+
 dnl--------------------------------------------------------------------------
 dnl Tunnel devices.
 
@@ -190,7 +220,7 @@ AC_ARG_WITH([wireshark],
               no)  haveshark=no needshark=no ;;
               yes) haveshark=yes needshark=yes ;;
               *)   haveshark=yes needshark=yes
-                   wireshark_plugindir=$withval ;;
+                   wireshark_plugindir=$withval ;;
            esac],
            [haveshark=yes needshark=no])
 
@@ -225,7 +255,7 @@ esac
 
 dnl If we're still interested, find Glib.
 case "$haveshark" in
-  yes) AM_PATH_GLIB([1.2.0], [], haveshark=false, [gmodule]) ;;
+  yes) AM_PATH_GLIB_2_0([2.4.0], [], [haveshark=false], [gmodule]) ;;
 esac
 
 dnl Find the include directory.  This would be much easier if they just
@@ -236,7 +266,7 @@ case "$haveshark" in
     mdw_CFLAGS=$CFLAGS
     wsprefix=`echo $wireshark_plugindir | sed 's:/lib/.*$::'`
     AC_CACHE_CHECK([how to find the Wireshark headers],
-                  [mdw_cv_wireshark_includes], [
+                  [mdw_cv_wireshark_includes], [
       mdw_cv_wireshark_includes=failed
       for i in \
          "" \
@@ -271,7 +301,7 @@ case "$haveshark,$needshark" in
     AC_MSG_ERROR([failed to configure Wireshark plugin])
     ;;
   yes,*)
-    WIRESHARK_CFLAGS="$CFLAGS $GLIB_CFLAGS $mdw_cv_wireshark_includes"
+    WIRESHARK_CFLAGS="$GLIB_CFLAGS $mdw_cv_wireshark_includes"
     AC_SUBST(WIRESHARK_CFLAGS)
     AC_SUBST(wireshark_plugindir)
     ;;
@@ -282,19 +312,31 @@ AM_CONDITIONAL([HAVE_WIRESHARK], [test "$haveshark" = yes])
 dnl--------------------------------------------------------------------------
 dnl Produce output.
 
+CFLAGS=$mdw_ORIG_CFLAGS
+CPPFLAGS=$mdw_ORIG_CPPFLAGS
+
 AC_CONFIG_HEADER([config/config.h])
+AC_CONFIG_TESTDIR([t])
 
 AC_CONFIG_FILES(
   [Makefile]
   [common/Makefile]
+  [uslip/Makefile]
+  [pathmtu/Makefile]
   [client/Makefile]
+  [priv/Makefile]
   [server/Makefile]
   [proxy/Makefile]
   [pkstream/Makefile]
   [wireshark/Makefile]
   [init/Makefile]
+  [py/Makefile]
+  [peerdb/Makefile]
   [keys/Makefile]
-  [mon/Makefile])
+  [svc/Makefile]
+  [mon/Makefile]
+  [contrib/Makefile]
+  [t/Makefile t/atlocal])
 AC_OUTPUT
 
 dnl ----- That's all, folks -------------------------------------------------