blob: 9761df740dda27cb2d4b6954ca253c44dda270c5 [file] [log] [blame]
jjako52c62342003-01-28 21:58:05 +00001# Process this file with autoconf to produce a configure script.
Harald Welte76f044d2010-08-24 11:19:36 +02002AC_INIT(openggsn, 0.91, laforge@gnumonks.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
Harald Weltebdca4b72011-11-02 13:11:56 +01009dnl kernel style compile messages
10m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
11
jjako52c62342003-01-28 21:58:05 +000012# Checks for programs.
jjako52c24142002-12-16 13:33:51 +000013AC_PROG_CC
14AC_PROG_INSTALL
jjako52c62342003-01-28 21:58:05 +000015AC_PROG_AWK
16AC_PROG_CPP
17AC_PROG_CXX
18AC_PROG_RANLIB
jjako52c24142002-12-16 13:33:51 +000019
Emmanuel Bretelle2a103682010-09-07 17:01:20 +020020AC_CONFIG_MACRO_DIR([m4])
21AC_CONFIG_LIBOBJ_DIR([lib])
jjako52c62342003-01-28 21:58:05 +000022
23#JJAKO Check for libtool
jjako52c24142002-12-16 13:33:51 +000024AC_PROG_LIBTOOL
25AM_PROG_LIBTOOL
26
jjakoc13c9df2003-07-07 15:15:38 +000027AC_ARG_ENABLE(static-exec,
28 [ --enable-static-exec Enable static linking of executables],
29 [ EXEC_LDFLAGS="-all-static"])
30
31AC_SUBST(EXEC_LDFLAGS)
jjako52c24142002-12-16 13:33:51 +000032
jjakoe31b2402004-12-30 23:07:42 +000033
jjako77edc822004-09-10 17:19:31 +000034case "${host}" in
jjakoe31b2402004-12-30 23:07:42 +000035 i*86-*-linux-gnu*)
36 EXEC_LDADD="-Wl,--rpath -Wl,/usr/local/lib" ;;
jjako77edc822004-09-10 17:19:31 +000037 *solaris*)
jjakoe31b2402004-12-30 23:07:42 +000038 EXEC_LDADD="-lresolv -lsocket -lnsl" ;;
jjako77edc822004-09-10 17:19:31 +000039esac
40
jjakoe31b2402004-12-30 23:07:42 +000041AC_SUBST(EXEC_LDADD)
jjako77edc822004-09-10 17:19:31 +000042
jjako77edc822004-09-10 17:19:31 +000043
jjako52c62342003-01-28 21:58:05 +000044# Checks for libraries.
45# FIXME: Replace `main' with a function in `-le':
jjakoc13c9df2003-07-07 15:15:38 +000046#AC_CHECK_LIB([e], [main])
jjako52c62342003-01-28 21:58:05 +000047# FIXME: Replace `main' with a function in `-lgtp':
jjakoc13c9df2003-07-07 15:15:38 +000048#AC_CHECK_LIB([gtp], [main])
jjako52c62342003-01-28 21:58:05 +000049# FIXME: Replace `main' with a function in `-links':
jjakoc13c9df2003-07-07 15:15:38 +000050#AC_CHECK_LIB([inks], [main])
jjako52c62342003-01-28 21:58:05 +000051
52# Checks for header files.
jjako52c24142002-12-16 13:33:51 +000053AC_HEADER_STDC
54AC_HEADER_SYS_WAIT
jjako52c62342003-01-28 21:58:05 +000055AC_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 +000056
jjako77edc822004-09-10 17:19:31 +000057# Check for if header
58AC_CHECK_HEADERS([linux/if.h net/if.h])
59
60# Check for tun header
61AC_CHECK_HEADERS([linux/if_tun.h net/if_tun.h])
62
63# Check for netlink and rtnetlink headers
64AC_CHECK_HEADERS([linux/netlink.h linux/rtnetlink.h])
65
66
jjako52c62342003-01-28 21:58:05 +000067# Checks for typedefs, structures, and compiler characteristics.
jjako52c24142002-12-16 13:33:51 +000068AC_C_CONST
jjako52c62342003-01-28 21:58:05 +000069AC_TYPE_MODE_T
jjako52c24142002-12-16 13:33:51 +000070AC_TYPE_SIZE_T
71AC_HEADER_TIME
72
jjako77edc822004-09-10 17:19:31 +000073# check for ifaliasreq
74AC_MSG_CHECKING(whether struct ifaliasreq exist)
75AH_TEMPLATE(HAVE_IFALIASREQ)
76AC_EGREP_HEADER(ifaliasreq, net/if.h,
77[AC_MSG_RESULT(yes)
78 AC_DEFINE([HAVE_IFALIASREQ])],
79 AC_MSG_RESULT(no))
80
81# check for ifreq.ifru_netmask
82AC_MSG_CHECKING(whether struct ifreq.ifru_netmask exist)
83AH_TEMPLATE(HAVE_IFREQ_IFRU_NETMASK)
84AC_EGREP_HEADER(ifru_netmask, linux/if.h,
85[AC_MSG_RESULT(yes)
86 AC_DEFINE([HAVE_IFREQ_IFRU_NETMASK])],
87 AC_MSG_RESULT(no))
88
89
90# check for rt_msghdr
91AC_MSG_CHECKING(whether struct rt_msghdr exist)
92AH_TEMPLATE(HAVE_RT_MSGHDR)
93AC_EGREP_HEADER(rt_msghdr, net/route.h,
94[AC_MSG_RESULT(yes)
95 AC_DEFINE([HAVE_RT_MSGHDR])],
96 AC_MSG_RESULT(no))
97
98
jjako52c62342003-01-28 21:58:05 +000099# Checks for library functions.
jjako52c24142002-12-16 13:33:51 +0000100AC_PROG_GCC_TRADITIONAL
jjakoacba8e62005-03-14 21:53:10 +0000101# AC_FUNC_MALLOC
jjako1d3db972004-01-16 09:56:56 +0000102# AC_FUNC_MEMCMP
jjako52c62342003-01-28 21:58:05 +0000103AC_CHECK_FUNCS([gethostbyname inet_ntoa memset select socket strdup strerror strtol])
jjako1d3db972004-01-16 09:56:56 +0000104AC_CHECK_FUNCS(inet_aton inet_addr, break)
105
106# check for getopt in standard library
107adl_FUNC_GETOPT_LONG
jjako52c24142002-12-16 13:33:51 +0000108
jjako52c62342003-01-28 21:58:05 +0000109AM_INIT_AUTOMAKE()
jjako52c24142002-12-16 13:33:51 +0000110
jjako52c62342003-01-28 21:58:05 +0000111AC_CONFIG_FILES([Makefile
112 doc/Makefile
113 ggsn/Makefile
114 gtp/Makefile
Harald Welte6fc42402011-05-10 17:44:39 +0200115 lib/Makefile
jjako52c62342003-01-28 21:58:05 +0000116 intl/Makefile
117 po/Makefile
118 sgsnemu/Makefile
119 src/Makefile
jjakoc13c9df2003-07-07 15:15:38 +0000120 tests/Makefile
Sylvain Munautca36f292011-10-18 13:15:29 +0200121 libgtp.pc
jjakoc13c9df2003-07-07 15:15:38 +0000122 openggsn.spec])
jjako52c62342003-01-28 21:58:05 +0000123AC_OUTPUT