1522d5c66SAsim JamshedAC_INIT([mos_release], version-0.3, [[email protected]]) 276404edcSAsim Jamshed 376404edcSAsim Jamshed# Check for cc 476404edcSAsim JamshedAC_PROG_CC 576404edcSAsim Jamshed#AC_PROG_INSTALL 676404edcSAsim JamshedAC_PROG_RANLIB 776404edcSAsim Jamshed#LT_INIT 876404edcSAsim JamshedAM_PROG_CC_C_O 976404edcSAsim Jamshed#AC_PROG_LIBTOOL 1076404edcSAsim JamshedAC_LANG(C) 1176404edcSAsim JamshedAC_DISABLE_OPTION_CHECKING 1276404edcSAsim Jamshed 1376404edcSAsim Jamshed# Check for scheduling 1476404edcSAsim JamshedAC_CHECK_HEADER(linux/sched.h,,,) 1576404edcSAsim Jamshed# Check for pthreads 1676404edcSAsim JamshedAC_CHECK_HEADER(pthread.h,,,) 1776404edcSAsim Jamshed# Check for numa 1876404edcSAsim JamshedAC_CHECK_HEADER(numa.h,,,) 1976404edcSAsim JamshedAC_CHECK_HEADERS([fcntl.h inttypes.h limits.h stddef.h stdlib.h string.h strings.h sys/param.h sys/time.h unistd.h]) 2076404edcSAsim Jamshed 2176404edcSAsim Jamshed# Check for typedefs, structures, and compiler characteristics 2276404edcSAsim JamshedAC_C_INLINE 2376404edcSAsim JamshedAC_TYPE_OFF_T 2476404edcSAsim JamshedAC_TYPE_SIZE_T 2576404edcSAsim JamshedAC_TYPE_SSIZE_T 2676404edcSAsim JamshedAC_TYPE_UINT16_T 2776404edcSAsim JamshedAC_TYPE_UINT32_T 2876404edcSAsim JamshedAC_TYPE_UINT8_T 2976404edcSAsim Jamshed 3076404edcSAsim Jamshed# Checks for library functions. 3176404edcSAsim JamshedAC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK 3276404edcSAsim JamshedAC_FUNC_MALLOC 3376404edcSAsim JamshedAC_CHECK_FUNCS([ftruncate gettimeofday memset strcasecmp strchr strpbrk strrchr strstr]) 3476404edcSAsim Jamshed 3576404edcSAsim Jamshed# Reset DPDK to 0 3676404edcSAsim JamshedAC_SUBST(DPDK, 0) 3776404edcSAsim Jamshed# Reset PSIO to 0 3876404edcSAsim JamshedAC_SUBST(PSIO, 0) 39522d5c66SAsim Jamshed# Reset Netmap to 0 40522d5c66SAsim JamshedAC_SUBST(NETMAP, 0) 41*c44a07e4SAsim Jamshed# Reset Pcap to 0 42*c44a07e4SAsim JamshedAC_SUBST(PCAP, 0) 4376404edcSAsim Jamshed 4476404edcSAsim Jamshed# Enable dpdk 4576404edcSAsim JamshedAC_ARG_ENABLE([dpdk], 46522d5c66SAsim Jamshed AS_HELP_STRING([--enable-dpdk], [Enable dpdk-16.04])) 4776404edcSAsim Jamshed 4876404edcSAsim JamshedAS_IF([test "x$enable_dpdk" = "xyes"], [ 4976404edcSAsim Jamshed dnl Do the stuff needed for enabling the feature 5076404edcSAsim Jamshed AC_SUBST(DPDK, 1) 5176404edcSAsim Jamshed]) 5276404edcSAsim Jamshed 53522d5c66SAsim Jamshed# Enable netmap 54522d5c66SAsim JamshedAC_ARG_ENABLE([netmap], 55522d5c66SAsim Jamshed AS_HELP_STRING([--enable-netmap], [Enable netmap])) 56522d5c66SAsim Jamshed 57522d5c66SAsim JamshedAS_IF([test "x$enable_netmap" = "xyes"], [ 58522d5c66SAsim Jamshed dnl Do the stuff needed for enabling the feature 59522d5c66SAsim Jamshed AC_SUBST(NETMAP, 1) 60522d5c66SAsim Jamshed]) 61522d5c66SAsim Jamshed 6276404edcSAsim Jamshed# Enable psio 6376404edcSAsim JamshedAC_ARG_ENABLE([psio], 6476404edcSAsim Jamshed AS_HELP_STRING([--enable-psio], [Enable packetshader I/O])) 6576404edcSAsim Jamshed 6676404edcSAsim JamshedAS_IF([test "x$enable_psio" = "xyes"], [ 6776404edcSAsim Jamshed dnl Do the stuff needed for enabling the feature 6876404edcSAsim Jamshed AC_SUBST(PSIO, 1) 6976404edcSAsim Jamshed]) 7076404edcSAsim Jamshed 71522d5c66SAsim Jamshedif test "$DPDK" == "0" && test "$PSIO" == "0" && test "$NETMAP" == "0" 7276404edcSAsim Jamshedthen 73*c44a07e4SAsim Jamshed AC_MSG_WARN([Packet I/O library is missing. Please set either dpdk, netmap or psio as your I/O lib.I am choosing pcap as your I/O lib!]) 74*c44a07e4SAsim Jamshed AC_SUBST(PCAP, 1) 7576404edcSAsim Jamshedfi 7676404edcSAsim Jamshed 7776404edcSAsim JamshedAC_OUTPUT(../core/src/Makefile) 78522d5c66SAsim JamshedAC_OUTPUT(../samples/epserver/Makefile) 79522d5c66SAsim JamshedAC_OUTPUT(../samples/epwget/Makefile) 80522d5c66SAsim JamshedAC_OUTPUT(../samples/midstat/Makefile) 8176404edcSAsim JamshedAC_OUTPUT(../samples/simple_firewall/Makefile) 8276404edcSAsim JamshedAC_OUTPUT(../samples/nat/Makefile) 8376404edcSAsim Jamshed 84