| 1 |
dnl Process this file with autoconf to produce a configure script. |
| 2 |
AC_INIT(bopm, [3.1.3]) |
| 3 |
AC_CONFIG_SRCDIR(src/opercmd.h) |
| 4 |
AM_CONFIG_HEADER(src/setup.h) |
| 5 |
AM_INIT_AUTOMAKE() |
| 6 |
AC_PREFIX_DEFAULT([\${HOME}/bopm]) |
| 7 |
AM_MAINTAINER_MODE |
| 8 |
|
| 9 |
AC_ARG_WITH(extra-fascism, |
| 10 |
AC_HELP_STRING([--with-extra-fascism], |
| 11 |
[Add extra gcc3-specific warning flags]), |
| 12 |
[CFLAGS="$CFLAGS -g -O0 -W -Wall -Wfloat-equal -Wbad-function-cast -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs"]) |
| 13 |
|
| 14 |
dnl ipv6? |
| 15 |
dnl AC_ARG_ENABLE(ipv6, |
| 16 |
dnl AC_HELP_STRING([--enable-ipv6], [Enable IPV6 support]), |
| 17 |
dnl [ac_cv_ipv6=$enableval], [ac_cv_ipv6="no"]) |
| 18 |
|
| 19 |
dnl AC_MSG_CHECKING([whether to enable IPv6 features]) |
| 20 |
|
| 21 |
dnl if test "$ac_cv_ipv6" = "yes" ; then |
| 22 |
dnl AC_DEFINE(IPV6, 1, [Use Ipv6 Support]) |
| 23 |
dnl AC_MSG_RESULT([yes]) |
| 24 |
dnl else |
| 25 |
dnl AC_MSG_RESULT([no]) |
| 26 |
dnl fi |
| 27 |
|
| 28 |
dnl Checks for programs. |
| 29 |
AC_PROG_CC |
| 30 |
AC_PROG_LIBTOOL |
| 31 |
|
| 32 |
dnl Checks for libraries. |
| 33 |
|
| 34 |
dnl Checks for header files. |
| 35 |
AC_HEADER_STDC |
| 36 |
|
| 37 |
AC_CHECK_HEADERS(sys/poll.h, have_poll_sys_h=yes, have_sys_poll_h=no) |
| 38 |
|
| 39 |
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h strings.h) |
| 40 |
|
| 41 |
dnl Checks for typedefs, structures, and compiler characteristics. |
| 42 |
AC_C_CONST |
| 43 |
AC_TYPE_SIZE_T |
| 44 |
AC_HEADER_TIME |
| 45 |
AC_STRUCT_TM |
| 46 |
|
| 47 |
dnl Checks for library functions. |
| 48 |
AC_TYPE_SIGNAL |
| 49 |
AC_FUNC_STRFTIME |
| 50 |
|
| 51 |
AC_FUNC_SNPRINTF |
| 52 |
|
| 53 |
dnl check for yacc |
| 54 |
AC_PROG_INSTALL |
| 55 |
AC_PROG_YACC |
| 56 |
|
| 57 |
dnl check for lexx |
| 58 |
AM_PROG_LEX |
| 59 |
|
| 60 |
dnl check if we need -lsocket or -lnsl |
| 61 |
ETR_SOCKET_NSL |
| 62 |
|
| 63 |
AC_CHECK_FUNCS(inet_aton inet_pton socket strdup strstr) |
| 64 |
|
| 65 |
dnl Check if we can use gethostbyname2 for ipv6 |
| 66 |
AC_CHECK_FUNCS(gethostbyname gethostbyname2) |
| 67 |
|
| 68 |
dnl AIX fun |
| 69 |
AC_C_BIGENDIAN |
| 70 |
|
| 71 |
AC_CHECK_SIZEOF(int) |
| 72 |
AC_CHECK_SIZEOF(short) |
| 73 |
AC_CHECK_SIZEOF(long) |
| 74 |
|
| 75 |
|
| 76 |
dnl teehee - taken from MRTG / Tobias Oetiker |
| 77 |
dnl echo $ECHO_N "checking for POSIX-compliant goat $ECHO_C" |
| 78 |
dnl for bleh in 1 2 3; do |
| 79 |
dnl echo $ECHO_N "." |
| 80 |
dnl sleep 1 |
| 81 |
dnl done |
| 82 |
dnl AC_MSG_RESULT([ http://www.blitzed.org/goat_winter_2001.phtml]) |
| 83 |
|
| 84 |
AH_BOTTOM([ |
| 85 |
#if SIZEOF_INT==4 |
| 86 |
typedef signed int int32; |
| 87 |
typedef unsigned int uint32; |
| 88 |
#elif SIZEOF_LONG==4 |
| 89 |
typedef signed long int32; |
| 90 |
typedef unsigned long uint32; |
| 91 |
#else |
| 92 |
# error "No 32-bit integer type!" |
| 93 |
#endif |
| 94 |
|
| 95 |
#if SIZEOF_SHORT!=2 |
| 96 |
# error "Your short int data type is not 2 bytes: firedns is not going to work for you. mail bopm@lists.blitzed.org!" |
| 97 |
#endif |
| 98 |
]) |
| 99 |
|
| 100 |
AC_CONFIG_SUBDIRS(src/libopm) |
| 101 |
|
| 102 |
dnl This comes last because configure won't actually work with -Werror in |
| 103 |
dnl the CFLAGS |
| 104 |
AC_ARG_WITH(werror, |
| 105 |
AC_HELP_STRING([--with-werror], |
| 106 |
[use -Werror to abort compilation on any warning]), |
| 107 |
[CFLAGS="$CFLAGS -Werror"]) |
| 108 |
|
| 109 |
AC_OUTPUT(Makefile src/Makefile) |
| 110 |
|
| 111 |
|
| 112 |
echo "##############################################################################" |
| 113 |
echo "Everything is now configured, but you can find some more (infrequently" |
| 114 |
echo "changed) options in options.h. To compile BOPM now, just type make. It" |
| 115 |
echo "requires GNU Make, which may be installed as gmake on your system." |
| 116 |
echo |
| 117 |
echo "bopm will be installed in ${prefix}. To change this, run:" |
| 118 |
echo " ./configure --prefix=DIRECTORY" |
| 119 |
echo "##############################################################################" |
| 120 |
echo |