Add checks for the presence of the universal tun/tap device driver.
This commit is contained in:
parent
85adeef212
commit
3b455b8f31
3 changed files with 51 additions and 2 deletions
10
acconfig.h
10
acconfig.h
|
@ -43,3 +43,13 @@
|
|||
# include <stdlib.h>
|
||||
# undef getopt
|
||||
#endif
|
||||
|
||||
|
||||
/* Define to the location of the kernel sources */
|
||||
#undef CONFIG_TINC_KERNELDIR
|
||||
|
||||
/* Define to 1 if tun/tap support is enabled and found */
|
||||
#undef HAVE_TUNTAP
|
||||
|
||||
/* Define to the location of if_tun.h */
|
||||
#undef LINUX_IF_TUN_H
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
dnl $Id: configure.in,v 1.13.2.8 2000/10/13 23:34:56 zarq Exp $
|
||||
dnl $Id: configure.in,v 1.13.2.9 2000/10/15 17:26:31 zarq Exp $
|
||||
|
||||
AC_INIT(src/tincd.c)
|
||||
AM_INIT_AUTOMAKE(tinc, 1.0pre3)
|
||||
|
@ -33,7 +33,7 @@ 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)
|
||||
AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h syslog.h unistd.h sys/time.h linux/if_tun.h)
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_CONST
|
||||
|
@ -80,6 +80,10 @@ AC_CHECK_FUNC(gethostbyname, [], [
|
|||
AC_CHECK_LIB(nsl, gethostbyname)
|
||||
])
|
||||
|
||||
|
||||
dnl Check for TUN/TAP support in the kernel
|
||||
tinc_TUNTAP
|
||||
|
||||
AC_OUTPUT([Makefile src/Makefile
|
||||
doc/Makefile intl/Makefile lib/Makefile
|
||||
m4/Makefile po/Makefile.in redhat/Makefile debian/Makefile])
|
||||
|
|
35
m4/tuntap.m4
Normal file
35
m4/tuntap.m4
Normal file
|
@ -0,0 +1,35 @@
|
|||
dnl Check to find out whether the running kernel has support for TUN/TAP
|
||||
|
||||
AC_DEFUN(tinc_TUNTAP,
|
||||
[
|
||||
dnl Check for directory with kernel source... (from ALSA)
|
||||
AC_CACHE_CHECK([for directory with kernel source], tinc_cv_kerneldir,
|
||||
[ AC_ARG_WITH(kernel,
|
||||
[ --with-kernel=dir give the directory with kernel sources]
|
||||
[ (default: /usr/src/linux)],
|
||||
kerneldir="$withval", kerneldir="/usr/src/linux")
|
||||
AC_DEFINE_UNQUOTED(CONFIG_TINC_KERNELDIR, "$kerneldir")
|
||||
CONFIG_TINC_KERNELDIR="$kerneldir"
|
||||
AC_SUBST(CONFIG_TINC_KERNELDIR)
|
||||
AC_MSG_RESULT($kerneldir)
|
||||
])
|
||||
AC_CACHE_CHECK([for linux/if_tun.h], tinc_cv_linux_if_tun_h,
|
||||
[ AC_TRY_COMPILE([linux/if_tun.h],
|
||||
[int a = IFF_TAP],
|
||||
if_tun_h="linux/if_tun.h",
|
||||
[ AC_TRY_COMPILE([$kerneldir/include/linux/if_tun.h],
|
||||
[int a = IFF_TAP],
|
||||
if_tun_h="$kerneldir/include/linux/if_tun.h",
|
||||
if_tun_h="no")
|
||||
])
|
||||
if test $if_tun_h = no; then
|
||||
AC_MSG_RESULT(none)
|
||||
else
|
||||
AC_DEFINE(HAVE_TUNTAP)
|
||||
AC_DEFINE_UNQUOTED(LINUX_IF_TUN_H, "$if_tun_h")
|
||||
AC_SUBST(LINUX_IF_TUN_H)
|
||||
AC_MSG_RESULT($if_tun_h)
|
||||
fi
|
||||
AC_SUBST(HAVE_TUNTAP)
|
||||
])
|
||||
])
|
Loading…
Reference in a new issue