dnl Process this file with autoconf to produce a configure script. dnl $Id: configure.in,v 1.19 2002/04/28 12:46:25 zarq Exp $ AC_INIT(src/tincd.c) AM_INIT_AUTOMAKE(tinc, 1.0-cvs) AM_CONFIG_HEADER(config.h) dnl Include the macros from the m4/ directory AM_ACLOCAL_INCLUDE(m4) # Enable GNU extensions. # Define this here, not in acconfig's @TOP@ section, since definitions # in the latter don't make it into the configure-time tests. AC_DEFINE([_GNU_SOURCE], [__USE_BSD]) ALL_LINGUAS="nl" dnl Checks for programs. AC_PROG_CC AC_PROG_CPP AC_PROG_GCC_TRADITIONAL AC_PROG_AWK AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET jm_PERL AC_ISC_POSIX dnl Check and set OS AC_CANONICAL_HOST case $host_os in *linux*) AC_DEFINE(HAVE_LINUX) [ rm -f src/device.c; ln -sf linux/device.c src/device.c ] ;; *freebsd*) AC_DEFINE(HAVE_FREEBSD) [ rm -f src/device.c; ln -sf freebsd/device.c src/device.c ] ;; *solaris*) AC_DEFINE(HAVE_SOLARIS) [ rm -f src/device.c; ln -sf solaris/device.c src/device.c ] ;; *openbsd*) AC_DEFINE(HAVE_OPENBSD) [ rm -f src/device.c; ln -sf openbsd/device.c src/device.c ] ;; *netbsd*) AC_DEFINE(HAVE_NETBSD) [ rm -f src/device.c; ln -sf netbsd/device.c src/device.c ] ;; esac AC_CACHE_SAVE dnl Checks for libraries. dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([fcntl.h limits.h sys/ioctl.h syslog.h unistd.h \ sys/time.h malloc.h strings.h sys/file.h]) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_PID_T AC_TYPE_SIZE_T AC_HEADER_TIME AC_STRUCT_TM dnl Checks for library functions. AC_FUNC_MEMCMP AC_FUNC_ALLOCA AC_TYPE_SIGNAL AC_CHECK_FUNCS([ftime socket select strtol strerror flock unsetenv \ asprintf putenv strdup fcloseall daemon strsignal get_current_dir_name]) jm_FUNC_MALLOC jm_FUNC_REALLOC AM_GNU_GETTEXT dnl Support for SunOS AC_CHECK_FUNC(socket, [], [ AC_CHECK_LIB(socket, connect) ]) AC_CHECK_FUNC(gethostbyname, [], [ AC_CHECK_LIB(nsl, gethostbyname) ]) AC_CACHE_SAVE dnl These are defined in files in m4/ tinc_TUNTAP use_gcrypt=0 use_openssl=0 AC_ARG_WITH(gcrypt, [ --with-gcrypt Use GCRYPT for all cryptographic functions], [ if test "x$withval" = "xyes" ; then use_gcrypt=1 else use_gcrypt=0 fi ], [use_gcrypt=0]) AC_ARG_WITH(openssl, [ --with-openssl Use OpenSSL for all cryptographic functions], [ if test "x$withval" = "xyes" ; then use_openssl=1 else use_openssl=0 fi ], [use_openssl=0]) if test \( $use_gcrypt -eq 0 -a $use_openssl -eq 0 \) \ -o \( $use_gcrypt -eq 1 -a $use_openssl -eq 1 \) ; then cat << EOM Error: You must select exactly one of GCRYPT or OpenSSL. EOM echo use_openssl=$use_openssl, use_gcrypt=$use_gcrypt exit 1 fi if test $use_gcrypt -eq 1 ; then AC_MSG_RESULT([Selecting GCRYPT for crypto]) tinc_GCRYPT AC_DEFINE(USE_GCRYPT) fi if test $use_openssl -eq 1 ; then AC_MSG_RESULT([Selecting OpenSSL for crypto]) tinc_OPENSSL AC_DEFINE(USE_OPENSSL) fi tinc_ZLIB dnl Check if support for jumbograms is requested AC_ARG_ENABLE(jumbograms, [ --enable-jumbograms enable support for jumbograms (packets up to 9000 bytes)], [ AC_DEFINE(ENABLE_JUMBOGRAMS) ] ) dnl Check if checkpoint tracing has to be enabled AC_ARG_ENABLE(tracing, [ --enable-tracing enable checkpoint tracing (debugging only)], [ AC_DEFINE(ENABLE_TRACING) ] ) AC_SUBST(INCLUDES) AC_OUTPUT(Makefile src/Makefile src/pokey/Makefile doc/Makefile doc/es/Makefile intl/Makefile lib/Makefile m4/Makefile po/Makefile.in )