blob: 960dd20a063e1efc91b2afa7d57e5f548cb5c5d7 [file] [log] [blame]
jjako52c62342003-01-28 21:58:05 +00001# Process this file with autoconf to produce a configure script.
jjako0fad8712004-09-10 17:57:05 +00002AC_INIT(openggsn, 0.83, jj@openggsn.org)
jjako52c62342003-01-28 21:58:05 +00003AC_CONFIG_SRCDIR([gtp/gtp.c])
4AM_CONFIG_HEADER([config.h])
5#AC_CONFIG_HEADER([config.h])
jjako52c24142002-12-16 13:33:51 +00006
jjako77edc822004-09-10 17:19:31 +00007AC_CANONICAL_SYSTEM
8
jjako52c62342003-01-28 21:58:05 +00009# Checks for programs.
jjako52c24142002-12-16 13:33:51 +000010AC_PROG_CC
11AC_PROG_INSTALL
jjako52c62342003-01-28 21:58:05 +000012AC_PROG_AWK
13AC_PROG_CPP
14AC_PROG_CXX
15AC_PROG_RANLIB
jjako52c24142002-12-16 13:33:51 +000016
jjako52c62342003-01-28 21:58:05 +000017
18#JJAKO Check for libtool
jjako52c24142002-12-16 13:33:51 +000019AC_PROG_LIBTOOL
20AM_PROG_LIBTOOL
21
jjakoc13c9df2003-07-07 15:15:38 +000022AC_ARG_ENABLE(static-exec,
23 [ --enable-static-exec Enable static linking of executables],
24 [ EXEC_LDFLAGS="-all-static"])
25
26AC_SUBST(EXEC_LDFLAGS)
jjako52c24142002-12-16 13:33:51 +000027
jjako77edc822004-09-10 17:19:31 +000028case "${host}" in
29 i[3456]86-*-linux-gnu*)
30 EXEC_LDFLAGS="$EXEC_LDFLAGS -Wl,--rpath -Wl,/usr/local/lib" ;;
31 *solaris*)
32 EXEC_LDFLAGS="$EXEC_LDFLAGS -lresolv -lsocket -lnsl" ;;
33esac
34
35
36AC_ARG_ENABLE(static-exec,
37 [ --enable-static-exec Enable static linking of executables],
38 [ EXEC_LDFLAGS="-all-static"])
39
40AC_SUBST(EXEC_LDFLAGS)
41
jjako52c62342003-01-28 21:58:05 +000042# Checks for libraries.
43# FIXME: Replace `main' with a function in `-le':
jjakoc13c9df2003-07-07 15:15:38 +000044#AC_CHECK_LIB([e], [main])
jjako52c62342003-01-28 21:58:05 +000045# FIXME: Replace `main' with a function in `-lgtp':
jjakoc13c9df2003-07-07 15:15:38 +000046#AC_CHECK_LIB([gtp], [main])
jjako52c62342003-01-28 21:58:05 +000047# FIXME: Replace `main' with a function in `-links':
jjakoc13c9df2003-07-07 15:15:38 +000048#AC_CHECK_LIB([inks], [main])
jjako52c62342003-01-28 21:58:05 +000049
50# Checks for header files.
jjako52c24142002-12-16 13:33:51 +000051AC_HEADER_STDC
52AC_HEADER_SYS_WAIT
jjako52c62342003-01-28 21:58:05 +000053AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdint.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h syslog.h unistd.h])
jjako52c24142002-12-16 13:33:51 +000054
jjako77edc822004-09-10 17:19:31 +000055# Check for if header
56AC_CHECK_HEADERS([linux/if.h net/if.h])
57
58# Check for tun header
59AC_CHECK_HEADERS([linux/if_tun.h net/if_tun.h])
60
61# Check for netlink and rtnetlink headers
62AC_CHECK_HEADERS([linux/netlink.h linux/rtnetlink.h])
63
64
jjako52c62342003-01-28 21:58:05 +000065# Checks for typedefs, structures, and compiler characteristics.
jjako52c24142002-12-16 13:33:51 +000066AC_C_CONST
jjako52c62342003-01-28 21:58:05 +000067AC_TYPE_MODE_T
jjako52c24142002-12-16 13:33:51 +000068AC_TYPE_SIZE_T
69AC_HEADER_TIME
70
jjako77edc822004-09-10 17:19:31 +000071# check for ifaliasreq
72AC_MSG_CHECKING(whether struct ifaliasreq exist)
73AH_TEMPLATE(HAVE_IFALIASREQ)
74AC_EGREP_HEADER(ifaliasreq, net/if.h,
75[AC_MSG_RESULT(yes)
76 AC_DEFINE([HAVE_IFALIASREQ])],
77 AC_MSG_RESULT(no))
78
79# check for ifreq.ifru_netmask
80AC_MSG_CHECKING(whether struct ifreq.ifru_netmask exist)
81AH_TEMPLATE(HAVE_IFREQ_IFRU_NETMASK)
82AC_EGREP_HEADER(ifru_netmask, linux/if.h,
83[AC_MSG_RESULT(yes)
84 AC_DEFINE([HAVE_IFREQ_IFRU_NETMASK])],
85 AC_MSG_RESULT(no))
86
87
88# check for rt_msghdr
89AC_MSG_CHECKING(whether struct rt_msghdr exist)
90AH_TEMPLATE(HAVE_RT_MSGHDR)
91AC_EGREP_HEADER(rt_msghdr, net/route.h,
92[AC_MSG_RESULT(yes)
93 AC_DEFINE([HAVE_RT_MSGHDR])],
94 AC_MSG_RESULT(no))
95
96
jjako52c62342003-01-28 21:58:05 +000097# Checks for library functions.
jjako52c24142002-12-16 13:33:51 +000098AC_PROG_GCC_TRADITIONAL
jjako52c62342003-01-28 21:58:05 +000099AC_FUNC_MALLOC
jjako1d3db972004-01-16 09:56:56 +0000100# AC_FUNC_MEMCMP
jjako52c62342003-01-28 21:58:05 +0000101AC_CHECK_FUNCS([gethostbyname inet_ntoa memset select socket strdup strerror strtol])
jjako1d3db972004-01-16 09:56:56 +0000102AC_CHECK_FUNCS(inet_aton inet_addr, break)
103
104# check for getopt in standard library
105adl_FUNC_GETOPT_LONG
jjako52c24142002-12-16 13:33:51 +0000106
jjako52c62342003-01-28 21:58:05 +0000107AM_INIT_AUTOMAKE()
jjako52c24142002-12-16 13:33:51 +0000108
jjako52c62342003-01-28 21:58:05 +0000109AC_CONFIG_FILES([Makefile
110 doc/Makefile
111 ggsn/Makefile
112 gtp/Makefile
113 intl/Makefile
114 po/Makefile
115 sgsnemu/Makefile
116 src/Makefile
jjakoc13c9df2003-07-07 15:15:38 +0000117 tests/Makefile
118 openggsn.spec])
jjako52c62342003-01-28 21:58:05 +0000119AC_OUTPUT