1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
AC_INIT
AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE(conntrack, 1.00beta2)
AC_PROG_CC
AM_PROG_LIBTOOL
AC_PROG_INSTALL
AC_PROG_LN_S
case $target in
*-*-linux*) ;;
*) AC_MSG_ERROR([Linux only, dude!]);;
esac
dnl Dependencies
LIBNFCONNTRACK_REQUIRED=0.0.31
AC_CHECK_LIB(dl, dlopen)
PKG_CHECK_MODULES(LIBNFCONNTRACK, libnetfilter_conntrack >= $LIBNFCONNTRACK_REQUIRED,,
AC_MSG_ERROR(Cannot find libnetfilter_conntrack >= $LIBNFCONNTRACK_REQUIRED))
AC_CHECK_HEADERS(arpa/inet.h)
dnl check for inet_pton
AC_CHECK_FUNCS(inet_pton)
dnl Some systems have it, but not IPv6
if test "$ac_cv_func_inet_pton" = "yes" ; then
AC_MSG_CHECKING(if inet_pton supports IPv6)
AC_TRY_RUN(
[
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif
int main()
{
struct in6_addr addr6;
if (inet_pton(AF_INET6, "::1", &addr6) < 1)
exit(1);
else
exit(0);
}
], [ AC_MSG_RESULT(yes)
AC_DEFINE_UNQUOTED(HAVE_INET_PTON_IPV6, 1, [Define to 1 if inet_pton supports IPv6.])
], AC_MSG_RESULT(no), AC_MSG_RESULT(no))
fi
dnl--------------------------------
if test ! -z "$libdir"; then
MODULE_DIR="\\\"$libdir/conntrack/\\\""
CFLAGS="$CFLAGS -DCONNTRACK_LIB_DIR=$MODULE_DIR"
fi
dnl--------------------------------
CFLAGS="$CFLAGS $LIBNFCONNTRACK_CFLAGS"
CONNTRACK_LIBS="$LIBNFCONNTRACK_LIBS"
AC_SUBST(CONNTRACK_LIBS)
AC_OUTPUT(Makefile src/Makefile extensions/Makefile include/Makefile)
|