1AC_INIT([mos_release], version-0.1a, [[email protected]])
2
3# Check for cc
4AC_PROG_CC
5#AC_PROG_INSTALL
6AC_PROG_RANLIB
7#LT_INIT
8AM_PROG_CC_C_O
9#AC_PROG_LIBTOOL
10AC_LANG(C)
11AC_DISABLE_OPTION_CHECKING
12
13# Check for scheduling
14AC_CHECK_HEADER(linux/sched.h,,,)
15# Check for pthreads
16AC_CHECK_HEADER(pthread.h,,,)
17# Check for numa
18AC_CHECK_HEADER(numa.h,,,)
19AC_CHECK_HEADERS([fcntl.h inttypes.h limits.h stddef.h stdlib.h string.h strings.h sys/param.h sys/time.h unistd.h])
20
21# Check for typedefs, structures, and compiler characteristics
22AC_C_INLINE
23AC_TYPE_OFF_T
24AC_TYPE_SIZE_T
25AC_TYPE_SSIZE_T
26AC_TYPE_UINT16_T
27AC_TYPE_UINT32_T
28AC_TYPE_UINT8_T
29
30# Checks for library functions.
31AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
32AC_FUNC_MALLOC
33AC_CHECK_FUNCS([ftruncate gettimeofday memset strcasecmp strchr strpbrk strrchr strstr])
34
35# Reset DPDK to 0
36AC_SUBST(DPDK, 0)
37# Reset PSIO to 0
38AC_SUBST(PSIO, 0)
39
40# Enable dpdk
41AC_ARG_ENABLE([dpdk],
42	  AS_HELP_STRING([--enable-dpdk], [Enable dpdk-2.2.0]))
43
44AS_IF([test "x$enable_dpdk" = "xyes"], [
45	 dnl Do the stuff needed for enabling the feature
46      	 AC_SUBST(DPDK, 1)
47])
48
49# Enable psio
50AC_ARG_ENABLE([psio],
51	  AS_HELP_STRING([--enable-psio], [Enable packetshader I/O]))
52
53AS_IF([test "x$enable_psio" = "xyes"], [
54	 dnl Do the stuff needed for enabling the feature
55      	 AC_SUBST(PSIO, 1)
56])
57
58if test "$DPDK" == "0" && test "$PSIO" == "0"
59then
60        AC_MSG_ERROR([Packet I/O library is missing. Please set either dpdk or psio as your I/O lib.])
61fi
62
63AC_OUTPUT(../core/src/Makefile)
64AC_OUTPUT(../samples/flow_modifier/Makefile)
65AC_OUTPUT(../samples/flow_monitor/Makefile)
66AC_OUTPUT(../samples/simple_firewall/Makefile)
67AC_OUTPUT(../samples/nat/Makefile)
68
69