AC_INIT(src/lldp_main.c) AC_PREREQ(1.5) AM_INIT_AUTOMAKE(lldpd, 0.3) AM_MAINTAINER_MODE AC_CANONICAL_HOST AC_PROG_RANLIB AC_PROG_CC if test -n "$GCC"; then CFLAGS="$CFLAGS -Wall" fi AC_HEADER_STDC AC_C_BIGENDIAN([big_endian=true;AC_DEFINE(BIGENDIAN)],[big_endian=false;AC_DEFINE(LILENDIAN)]) GGDBFLAGS="" AC_ARG_ENABLE(experimental, [ --enable-experimental enable the use of experimental features/code. ], [ AC_DEFINE(EXPERIMENTAL) ],) AC_ARG_ENABLE(efence, [ --enable-efence enable use of Electric Fence for memory debugging.], [ AC_CHECK_HEADER(efence.h, [MORELIBS="$MORELIBS -lefence" ], AC_MSG_ERROR([You must have Electric Fence installed to use it!])) AC_DEFINE(USE_EFENCE) ],) AC_ARG_ENABLE(generic-framer, [ --enable-generic-framer enable the use of PCAP/DNET instead of native handler. ], [ FRAMER="generic" ], [ FRAMER="specific"]) AC_MSG_CHECKING([Operating System]) SYSTEM=`uname -s` AC_MSG_RESULT([$SYSTEM]) if test $SYSTEM = "Darwin"; then AC_DEFINE(DARWIN) fi if test $SYSTEM = "FreeBSD" || test $SYSTEM = "OpenBSD" || test $SYSTEM = "NetBSD"; then AC_DEFINE(__BSD__) fi if test $SYSTEM = "FreeBSD" || test $SYSTEM = "OpenBSD" || test $SYSTEM = "NetBSD" || test $SYSTEM = "Darwin"; then AC_DEFINE(BPF_FRAMER) fi if test $SYSTEM = "OpenBSD"; then AC_DEFINE(OPENBSD) fi if test $SYSTEM = "FreeBSD"; then AC_DEFINE(FREEBSD) fi if test $SYSTEM = "NetBSD"; then AC_DEFINE(NETBSD) fi if test $SYSTEM = "Linux"; then AC_DEFINE(LINUX) fi if test "$FRAMER" != "generic"; then AC_MSG_CHECKING([for native frame interface]) case "$host_os" in *linux*) AC_MSG_RESULT(linux) AC_DEFINE(LINUX_FRAMER) MORELIBS="${MORELIBS} -lm" FRAMER="linux" ;; *freebsd*) AC_MSG_RESULT(freebsd) AC_DEFINE(FREEBSD_FRAMER) FRAMER="freebsd" ;; *openbsd*) AC_MSG_RESULT(openbsd) AC_DEFINE(OPENBSD_FRAMER) FRAMER="openbsd" ;; *netbsd*) AC_MSG_RESULT(netbsd) AC_DEFINE(NETBSD_FRAMER) FRAMER="netbsd" ;; *darwin*) AC_MSG_RESULT(Darwin/Mac OS X) AC_DEFINE(MACOSX_FRAMER) FRAMER="darwin" ;; *) AC_DEFINE(GENERIC_FRAMER) AC_MSG_RESULT(generic) MORELIBS="${MORELIBS} -lpcap -ldnet" FRAMER="generic" ;; esac else AC_DEFINE(GENERIC_FRAMER) MORELIBS="${MORELIBS} -lpcap -ldnet" FRAMER="generic" fi if test $FRAMER = "linux"; then AC_MSG_CHECKING([for procfs support]) if test -r /proc/net/dev; then AC_MSG_RESULT(okay) else AC_MSG_ERROR([You must have ProcFS enabled in your kernel!]); fi fi CFLAGS="$GGDBFLAGS $CFLAGS" dnl Touch the makefile.in to avoid running automake the next time we dnl run. touch Makefile.in AC_SUBST(MORELIBS) AC_SUBST(DARWINLIBS) AC_SUBST(CORELIBS) AC_SUBST(MOREDEFS) AC_SUBST(LDFLAGS) AC_SUBST(INCS) AC_SUBST(DARWININCS) AC_SUBST(PREFIX) AC_OUTPUT(Makefile src/Makefile)