⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configure.in

📁 该源码是用C语言编写的,实现网络入侵检测系统的功能
💻 IN
字号:
# $Id: configure.in,v 1.31 2001/01/30 20:53:58 jpickel Exp $ AC_INIT(snort.c)AM_CONFIG_HEADER(config.h)AM_INIT_AUTOMAKE(snort,1.7)AM_PROG_CC_STDCAC_PROG_CC if test -n "$GCC"; then      CFLAGS="$CFLAGS -Wall " fiAC_CANONICAL_HOSTlinux=nosunos4=noAC_C_BIGENDIANcase "$host" in  *-openbsd*)    AC_DEFINE(OPENBSD)    ;;  *-sgi-irix5*)    AC_DEFINE(IRIX)    no_libsocket=yes    no_libnsl=yes    if test -z "$GCC"; then      sgi_cc=yes    fi    LDFLAGS=${LDFLAGS} -L/usr/local/lib    extra_incl=-I/usr/local/include    ;;  *-sgi-irix6*)    AC_DEFINE(IRIX)    no_libsocket=yes    no_libnsl=yes    if test -z "$GCC"; then      sgi_cc=yes    fi    LDFLAGS=${LDFLAGS} -L/usr/local/lib    extra_incl=-I/usr/local/include    ;;  *-solaris*)    AC_DEFINE(SOLARIS)    CPPFLAGS="${CPPFLAGS} -DBSD_COMP"    ;;  *-sunos*)    AC_DEFINE(SUNOS)    sunos4=yes    ;;  *-linux*)    linux=yes    AC_DEFINE(LINUX)    AC_DEFINE(PCAP_TIMEOUT_IGNORED)  # libpcap doesn't even LOOK at                                     # the timeout you give it under Linux    AC_SUBST(extra_incl)    extra_incl=-I/usr/include/pcap    ;;  *-hpux10*)    AC_DEFINE(HPUX)    AC_DEFINE(WORDS_BIGENDIAN)    AC_SUBST(extra_incl)    extra_incl=-I/usr/local/include    ;;  *-freebsd*)    AC_DEFINE(FREEBSD)    ;;  *-bsdi*)    AC_DEFINE(BSDI)    ;;  *-aix*)    AC_DEFINE(AIX)     broken_types=yes    ;;  *-osf4*)    AC_DEFINE(OSF1)    tru64_types=yes    ;;  *-osf5.1*)    AC_DEFINE(OSF1)    ;;  *-tru64*)    AC_DEFINE(OSF1)    tru64_types=yes    ;;esac# any sparc platform has to have this one defined. if test "$host_cpu" = "sparc"; then     AC_DEFINE(WORDS_MUSTALIGN)fidnl checking headersAC_CHECK_HEADERS(strings.h)AC_CHECK_HEADERS(string.h)AC_CHECK_HEADERS(stdlib.h)AC_CHECK_HEADERS(unistd.h)AC_CHECK_HEADERS(sys/sockio.h)AC_CHECK_HEADERS(paths.h)dnl make sure we've got all our librariesif test -z "$no_libnsl"; thenAC_CHECK_LIB(nsl, inet_ntoa)fiif test -z "$no_libsocket"; thenAC_CHECK_LIB(socket, socket)fi# SunOS4 has several things `broken'if test  "$sunos4" != "no"; thenAC_CHECK_FUNCS(vsnprintf,, LIBS=" $LIBS -ldb")AC_CHECK_FUNCS(strtoul,, LIBS=" $LIBS -l44bsd")fi# some funky macro to be backwards compatible with earlier autoconfs# in current they have AC_CHECK_DECLSAC_DEFUN(SN_CHECK_DECL,[AC_MSG_CHECKING([whether $1 must be declared])AC_CACHE_VAL(sn_cv_decl_needed_$1,[AC_TRY_COMPILE([#include <stdio.h>#ifdef HAVE_STRING_H#include <string.h>#endif#ifdef HAVE_STRINGS_H#include <strings.h>#endif#ifdef HAVE_STDLIB_H#include <stdlib.h>#endif#ifdef HAVE_UNISTD_H#include <unistd.h>#endif#include <sys/types.h>#include <sys/socket.h>#include <syslog.h>],[char *(*pfn) = (char *(*)) $1], eval "sn_cv_decl_needed_$1=no",eval "sn_cv_decl_needed_$1=yes") ])if eval "test \"`echo '$sn_cv_decl_needed_'$1`\" != no"; then  AC_MSG_RESULT(yes) ifelse([$2], , :, [$2])else AC_MSG_RESULT(no) ifelse([$3], , ,[$3])fi])dnlAC_DEFUN(SN_CHECK_DECLS,[for sn_decl in $1dosn_def_decl=`echo $sn_decl | tr [a-z] [A-Z]`SN_CHECK_DECL($sn_decl,[AC_DEFINE_UNQUOTED(NEED_DECL_$sn_def_decl, 1,                  [you have this cuz autoheader is dumb])$2], $3)dnldone])# some stuff for declarations which were missed on sunos4 platform too.## add `#undef NEED_DECL_FUNCTIONAME to acconfig.h` because autoheader# fails to work properly with custom macroses.# you will see also #undef for each SN_CHECK_DECLS macros invocation# because autoheader doesn't execute shell script commands.# it is possible to make loops using m4 but the code would look even# more confusing.. SN_CHECK_DECLS(printf fprintf syslog puts fputs fputc fopen  \           fclose fwrite fflush getopt bzero bcopy memset strtol  \           strcasecmp strncasecmp strerror perror socket sendto   \           vsnprintf strtoul)AC_CHECK_FUNCS(snprintf)AC_CHECK_FUNCS(strerror)AC_TRY_COMPILE([#include <stdio.h>],[char *foo; foo = sys_errlist[0];], AC_DEFINE(ERRLIST_PREDEFINED))AC_ARG_WITH(libpcap_includes,	[ --with-libpcap-includes=DIR  libcap include directory],	[with_libpcap_includes="$withval"],[with_libpcap_includes=no])AC_ARG_WITH(libpcap_libraries,	[ --with-libpcap-libraries=DIR  libcap library directory],	[with_libpcap_libraries="$withval"],[with_libpcap_libraries=no])if test "$with_libpcap_includes" != "no"; then   CPPFLAGS="${CPPFLAGS} -I${with_libpcap_includes}"fiif test "$with_libpcap_libraries" != "no"; then   LDFLAGS="${LDFLAGS}  -L${with_libpcap_libraries}"fiAC_CHECK_LIB(m, floor,,)LPCAP=""AC_CHECK_LIB(pcap, pcap_datalink,, LPCAP="no")if test "$LPCAP" = "no"; then  echo  echo "   ERROR!  Libpcap library/headers not found, go get it from"  echo "   ftp://ftp.ee.lbl.gov/libpcap.tar.Z"  echo "   or use the --with-libpcap-* options, if you have it installed"  echo "   in unusual place"  exitfidefault_directory="/usr /usr/local"AC_DEFUN(FAIL_MESSAGE,[   echo   echo   echo "**********************************************"   echo "  ERROR: unable to find" $1   echo "  checked in the following places"   for i in `echo $2`; do     echo "        $i"   done   echo "**********************************************"   echo   exit])AC_ARG_WITH(mysql, [  --with-mysql=DIR        support for mysql])if test "$with_mysql" != "no"; then  if test "$with_mysql" = "yes"; then    mysql_directory="$default_directory"; mysql_fail="yes"  elif test "$with_mysql" = ""; then    mysql_directory="$default_directory"; mysql_fail="no"  else    mysql_directory="$with_mysql"; mysql_fail="yes"  fi  AC_MSG_CHECKING("for mysql")  for i in $mysql_directory; do    if test -r $i/include/mysql/mysql.h; then      MYSQL_DIR=$i      MYSQL_INC_DIR=$i/include/mysql    elif test -r $i/include/mysql.h; then      MYSQL_DIR=$i      MYSQL_INC_DIR=$i/include    fi  done  if test -z "$MYSQL_DIR"; then    if test "$mysql_fail" != "no"; then      tmp=""      for i in $mysql_directory; do        tmp="$tmp $i/include $i/include/mysql"       done      FAIL_MESSAGE("mysql headers (mysql.h)", $tmp)    else      AC_MSG_RESULT(no)    fi  else    for i in lib lib/mysql; do      str="$MYSQL_DIR/$i/libmysqlclient.*"      for j in `echo $str`; do        if test -r $j; then          MYSQL_LIB_DIR="$MYSQL_DIR/$i"          break 2        fi      done    done    if test -z "$MYSQL_LIB_DIR"; then      if test "$mysql_fail" != "no"; then        FAIL_MESSAGE("mysqlclient library",                      "$MYSQL_DIR/lib $MYSQL_DIR/lib/mysql")      else        AC_MSG_RESULT(no)      fi    else      AC_MSG_RESULT(yes)      LDFLAGS="${LDFLAGS} -L${MYSQL_LIB_DIR}"      CPPFLAGS="${CPPFLAGS} -I${MYSQL_INC_DIR} -DENABLE_MYSQL"      AC_CHECK_LIB(z, compress)      LIBS="${LIBS} -lmysqlclient"    fi  fifiAC_ARG_WITH(odbc, [  --with-odbc=DIR         support for odbc])if test "$with_odbc" != "no"; then  if test "$with_odbc" = "yes"; then    odbc_directory="$default_directory"; odbc_fail="yes"  elif test "$with_odbc" = ""; then    odbc_directory="$default_directory"; odbc_fail="no"  else    odbc_directory="$with_odbc"; odbc_fail="yes"  fi  AC_MSG_CHECKING("for odbc")  for i in $odbc_directory; do    if test -r $i/include/sql.h; then    if test -r $i/include/sqlext.h; then    if test -r $i/include/sqltypes.h; then      ODBC_DIR=$i      ODBC_INC_DIR=$i/include    fi fi fi  done  if test -z "$ODBC_DIR"; then    if test "$odbc_fail" != "no"; then      tmp=""      for i in $odbc_directory; do        tmp="$tmp $i/include"      done      FAIL_MESSAGE("odbc headers (sql.h sqlext.h sqltypes.h)", $tmp)    else      AC_MSG_RESULT(no)    fi  else    str="$ODBC_DIR/lib/libodbc.*"    for j in `echo $str`; do      if test -r $j; then         ODBC_LIB_DIR="$ODBC_DIR/lib"        ODBC_LIB="odbc"      fi    donednl    if test -z "$ODBC_LIB_DIR"; thendnl      str="$ODBC_DIR/lib/libiodbc.*"dnl      for j in `echo $str`; dodnl        if test -r $j; then dnl          ODBC_LIB_DIR="$ODBC_DIR/lib"dnl          ODBC_LIB="iodbc"dnl        fidnl      donednl    fi    if test -z "$ODBC_LIB_DIR"; then      if test "$odbc_fail" != "no"; then        FAIL_MESSAGE("odbc library (libodbc)", "$ODBC_DIR/lib")      else        AC_MSG_RESULT(no)      fi    else      AC_MSG_RESULT(yes)      LDFLAGS="${LDFLAGS} -L${ODBC_LIB_DIR}"      CPPFLAGS="${CPPFLAGS} -I${ODBC_INC_DIR} -DENABLE_ODBC"      LIBS="${LIBS} -l$ODBC_LIB"    fi  fifiAC_ARG_WITH(postgresql, [  --with-postgresql=DIR   support for postgresql])if test "$with_postgresql" != "no"; then  if test "$with_postgresql" = "yes"; then    postgresql_directory="$default_directory /usr/local/pgsql /usr/pgsql"    postgresql_fail="yes"  elif test "$with_postgresql" = ""; then    postgresql_directory="$default_directory /usr/local/pgsql /usr/pgsql"    postgresql_fail="no"  else    postgresql_directory="$with_postgresql"; postgresql_fail="yes"  fi  AC_MSG_CHECKING("for postgresql")  for i in $postgresql_directory; do    if test -r $i/include/pgsql/libpq-fe.h; then      POSTGRESQL_DIR=$i      POSTGRESQL_INC_DIR=$i/include/pgsql    elif test -r $i/include/libpq-fe.h; then      POSTGRESQL_DIR=$i      POSTGRESQL_INC_DIR=$i/include    fi  done  if test -z "$POSTGRESQL_DIR"; then    if test "$postgresql_fail" != "no"; then      tmp=""      for i in $postgesql_directory; do        tmp="$tmp $i/include $i/include/pgsql"      done      FAIL_MESSAGE("postgresql header file (libpq-fe.h)", $tmp)    else      AC_MSG_RESULT(no)    fi  else    for i in lib lib/pgsql; do      str="$POSTGRESQL_DIR/$i/libpq.*"      for j in `echo $str`; do        if test -r $j; then          POSTGRESQL_LIB_DIR="$POSTGRESQL_DIR/$i"          break 2        fi      done    done    if test -z "$POSTGRESQL_LIB_DIR"; then      if test "$postgresql_fail" != "no"; then        FAIL_MESSAGE("postgresql library libpq",        "$POSTGRESQL_DIR/lib $POSTGRESQL_DIR/lib/pgsql")      else        AC_MSG_RESULT(no);      fi    else      AC_MSG_RESULT(yes)      LDFLAGS="${LDFLAGS} -L${POSTGRESQL_LIB_DIR}"      CPPFLAGS="${CPPFLAGS} -I${POSTGRESQL_INC_DIR} -DENABLE_POSTGRESQL"      LIBS="${LIBS} -lpq"    fi  fifiAC_ARG_WITH(oracle, [  --with-oracle=DIR       support for oracle])if test "$with_oracle" != "no"; then  if test "$with_oracle" = "yes"; then    oracle_directory="$default_directory ${ORACLE_HOME}"    oracle_fail="yes"  elif test "$with_oracle" = ""; then    oracle_directory="$default_directory ${ORACLE_HOME}"    oracle_fail="no"  else    oracle_directory="$with_oracle"; oracle_fail="yes"  fi  AC_MSG_CHECKING("for oracle")  for i in $oracle_directory; do    if test -r $i/rdbms/demo/oci.h; then      ORACLE_DIR=$i    fi  done  if test -z "$ORACLE_DIR"; then    if test "$oracle_fail" != "no"; then      tmp=""      for i in $oracle_directory; do        tmp="$tmp $i/rdbms/demo"      done      FAIL_MESSAGE("OCI header file (oci.h)", $tmp)    else      AC_MSG_RESULT(no)    fi  else    for i in rdbms/demo rdbms/public network/public; do      ORACLE_CPP_FLAGS="$ORACLE_CPP_FLAGS -I$ORACLE_DIR/$i"    done    ORACLE_LIB_DIR="$ORACLE_DIR/lib"    AC_MSG_RESULT(yes)    LDFLAGS="${LDFLAGS} -L${ORACLE_LIB_DIR}"    CPPFLAGS="${CPPFLAGS} ${ORACLE_CPP_FLAGS} -DENABLE_ORACLE"    LIBS="${LIBS} -lclntsh -lwtc8"  fifiAC_ARG_WITH(openssl, [  --with-openssl=DIR      support for openssl])if test "$with_openssl" != "no"; then  if test "$with_openssl" = "yes"; then    openssl_directory="$default_directory /usr/local/ssl /usr/ssl"    openssl_fail="yes"  elif test "$with_openssl" = ""; then    openssl_directory="$default_directory /usr/local/ssl /usr/ssl"    openssl_fail="no"  else    openssl_directory="$with_openssl"    openssl_fail="yes"  fi  AC_MSG_CHECKING("for openssl")  for i in $openssl_directory; do    if test -r $i/include/openssl/crypto.h; then    if test -r $i/include/openssl/x509.h; then    if test -r $i/include/openssl/x509_vfy.h; then    if test -r $i/include/openssl/pem.h; then    if test -r $i/include/openssl/ssl.h; then    if test -r $i/include/openssl/err.h; then      OPENSSL_DIR=$i      OPENSSL_INC_DIR=$i/include    fi fi fi fi fi fi  done  if test -z "$OPENSSL_DIR"; then    if test "$openssl_fail" != "no"; then      tmp=""      for i in $openssl_directory; do        tmp="$tmp $i/include $i/include/openssl"      done        FAIL_MESSAGE("openssl headers (crypto.h x509.h x509vrfy.h pem.h ssl.h err.h)", $tmp)    else      AC_MSG_RESULT(no)    fi  else    for i in lib lib/openssl; do      str="$OPENSSL_DIR/$i/libcrypto.* $OPENSSL_DIR/$i/libssl.*"      for j in `echo $str`; do        if test -r $j; then          OPENSSL_LIB_DIR="$OPENSSL_DIR/$i"          break 2        fi      done    done    if test -z "$OPENSSL_LIB_DIR"; then      if test "$openssl_fail" != "no"; then        FAIL_MESSAGE("openssl library (libcrypto)",         "$OPENSSL_DIR/lib $OPENSSL_DIR/lib/openssl")      else        AC_MSG_RESULT(no);      fi    else      AC_MSG_RESULT(yes)      LDFLAGS="${LDFLAGS} -L${OPENSSL_LIB_DIR}"      CPPFLAGS="${CPPFLAGS} -I${OPENSSL_INC_DIR} -DENABLE_SSL"      LIBS="${LIBS} -lssl -lcrypto"    fi  fifiAC_ARG_ENABLE(smbalerts,[  --enable-smbalerts      SMB alerting capaility via Samba],                CFLAGS="$CFLAGS -DENABLE_SMB_ALERTS",)AC_ARG_ENABLE(flexresp,[  --enable-flexresp       Flexible Responses on hostile connection attempts],                [ CFLAGS="$CFLAGS -DENABLE_RESPONSE `libnet-config --defines` `libnet-config --cflags`"                LIBS="$LIBS `libnet-config --libs`"],)if test "$enable_flexresp" != "no"; then	if test "$enable_flexresp" = "yes"; then		LIBNET_INC_DIR=""  		AC_MSG_CHECKING("for libnet.h")		libnet_dir="/usr/include /usr/local/include" 		for i in $libnet_dir; do    			if test -r $i/libnet.h; then 	     			LIBNET_INC_DIR=$i    			fi   		done		if test "$LIBNET_INC_DIR" != ""; then      			CPPFLAGS="${CPPFLAGS} -I${LIBNET_INC_DIR}"			AC_MSG_RESULT($i)		else			AC_MSG_RESULT(no)		fi	fifi########################################################## -- uncomment if want to play with pthreads support -- ###########################################################AC_ARG_ENABLE(pthreads,#[  --enable-pthreads      Multiple interfaces support using pthreads ],#		[ CFLAGS="$CFLAGS -pthread -DUSE_PTHREADS"#		],)if test "$tru64_types" = "yes"; then        AC_CHECK_TYPE(u_int8_t, unsigned char)        AC_CHECK_TYPE(u_int16_t, unsigned short)        AC_CHECK_TYPE(u_int32_t, unsigned int)else	if test "$broken_types" = "yes" ; then		AC_CHECK_TYPE(u_int8_t, unsigned char)		AC_CHECK_TYPE(u_int16_t, unsigned short)		AC_CHECK_TYPE(u_int32_t, unsigned long int)	else		AC_CHECK_TYPE(u_int8_t, uint8_t)		AC_CHECK_TYPE(u_int16_t, uint16_t)		AC_CHECK_TYPE(u_int32_t, uint32_t)	fifi# let's make some fixes..CFLAGS=`echo $CFLAGS | sed -e 's/-I\/usr\/include //g'`CPPFLAGS=`echo $CPPFLAGS | sed -e 's/-I\/usr\/include //g'`AC_PROG_INSTALLAC_OUTPUT(Makefile)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -