1 dnl Process this file with autoconf to produce a configure script.
3 dnl $Id: configure.in,v 1.13.2.45 2002/06/08 12:57:09 guus Exp $
6 AM_INIT_AUTOMAKE(tinc, 1.0-cvs)
7 AM_CONFIG_HEADER(config.h)
9 dnl Include the macros from the m4/ directory
10 AM_ACLOCAL_INCLUDE(m4)
12 # Enable GNU extensions.
13 # Define this here, not in acconfig's @TOP@ section, since definitions
14 # in the latter don't make it into the configure-time tests.
15 AC_DEFINE([_GNU_SOURCE], [__USE_BSD])
19 dnl Checks for programs.
22 AC_PROG_GCC_TRADITIONAL
39 [ rm -f src/device.c; ln -sf linux/device.c src/device.c ]
42 AC_DEFINE(HAVE_FREEBSD)
43 [ rm -f src/device.c; ln -sf freebsd/device.c src/device.c ]
46 AC_DEFINE(HAVE_FREEBSD)
47 [ rm -f src/device.c; ln -sf freebsd/device.c src/device.c ]
50 AC_DEFINE(HAVE_SOLARIS)
51 [ rm -f src/device.c; ln -sf solaris/device.c src/device.c ]
54 AC_DEFINE(HAVE_OPENBSD)
55 [ rm -f src/device.c; ln -sf openbsd/device.c src/device.c ]
58 AC_DEFINE(HAVE_NETBSD)
59 [ rm -f src/device.c; ln -sf netbsd/device.c src/device.c ]
62 AC_MSG_ERROR("Unknown operating system.")
68 dnl Checks for libraries.
70 dnl Checks for header files.
72 AC_CHECK_HEADERS([fcntl.h limits.h malloc.h stdint.h strings.h syslog.h unistd.h \
73 net/ethernet.h net/if.h netinet/ip.h netinet/tcp.h \
74 sys/file.h sys/ioctl.h sys/param.h sys/time.h])
76 dnl Checks for typedefs, structures, and compiler characteristics.
83 AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
86 [#include <sys/socket.h>],
87 [socklen_t len = 42; return len;],
88 ac_cv_type_socklen_t=yes,
89 ac_cv_type_socklen_t=no)
91 if test $ac_cv_type_socklen_t == yes; then
92 AC_DEFINE(HAVE_SOCKLEN_T)
95 dnl Checks for library functions.
99 AC_CHECK_FUNCS([asprintf daemon fcloseall flock ftime get_current_dir_name \
100 putenv select strdup strerror strsignal strtol unsetenv])
106 dnl Support for SunOS
108 AC_CHECK_FUNC(socket, [], [
109 AC_CHECK_LIB(socket, connect)
111 AC_CHECK_FUNC(gethostbyname, [], [
112 AC_CHECK_LIB(nsl, gethostbyname)
117 dnl These are defined in files in m4/
122 dnl Check if support for jumbograms is requested
123 AC_ARG_ENABLE(jumbograms,
124 [ --enable-jumbograms enable support for jumbograms (packets up to 9000 bytes)],
125 [ AC_DEFINE(ENABLE_JUMBOGRAMS) ]
128 dnl Check if checkpoint tracing has to be enabled
129 AC_ARG_ENABLE(tracing,
130 [ --enable-tracing enable checkpoint tracing (debugging only)],
131 [ AC_DEFINE(ENABLE_TRACING) ]