summaryrefslogtreecommitdiffstats
path: root/cli/configure.in
blob: 1b1b391ad41bbd5017e27150da024addc2606c52 (plain)
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)