dnl Define the input and output configuration header file.
AC_CONFIG_HEADER([config.h])
-dnl Demand at least version 2.13 of autoconf
-AC_PREREQ(2.13)
+dnl Demand at least version 2.50 of autoconf
+AC_PREREQ(2.50)
dnl Find out what type of system we are
AC_CANONICAL_HOST
dnl Checks for header files.
AC_HEADER_STDC
-AC_CHECK_HEADERS(crypt.h poll.h stdint.h sys/devpoll.h sys/epoll.h sys/event.h sys/param.h sys/socket.h)
+AC_CHECK_HEADERS(crypt.h poll.h inttypes.h stdint.h sys/devpoll.h sys/epoll.h sys/event.h sys/param.h sys/socket.h)
dnl Checks for typedefs, structures, and compiler characteristics
dnl AC_C_CONST
AC_PROG_MAKE_SET
AC_PROG_INSTALL
AC_PROG_LN_S
-AC_PROG_LEX
-AC_PROG_YACC
AC_PATH_PROGS(RMPROG, rm, /bin/rm)
AC_PATH_PROGS(SHPROG, sh, /bin/sh)
+dnl (F)LEX - needed for the new conf file parser
+AC_PROG_LEX
+dnl The autoconf docs say $LEX defaults to 'lex'. They lie.
+if test "$LEX" = ":" ; then
+ AC_MSG_ERROR([Cannot find flex.])
+elif echo "" | $LEX -V -v --version > /dev/null 2>&1 ; then
+ :
+else
+ AC_MSG_ERROR([Cannot use $LEX as flex.])
+fi
+
+if test -z "$LEXLIB" ; then
+ AC_MSG_FAILURE([Cannot find a library with yywrap() in, but flex was found.
+ It's possible the compiler you're using ($CC) is incompatible with the
+ installed library.])
+fi
+
LIBS="$LEXLIB $LIBS"
+dnl YACC - ditto
+AC_PROG_YACC
+dnl The autoconf docs say $YACC defaults to 'yacc'. This seems to be true,
+dnl but judging from AC_PROG_LEX, it may not stay true.
+if test "$YACC" = ":" ; then
+ AC_MSG_ERROR([Cannot find yacc.])
+elif echo "" | $YACC -V -v --version > /dev/null 2>&1 ; then
+ :
+else
+ AC_MSG_ERROR([Cannot use $YACC as yacc.])
+fi
+
+
unet_NONBLOCKING
unet_SIGNALS
[Maximum number of network connections])
dnl Finally really generate all output files:
-AC_OUTPUT(Makefile ircd/Makefile doc/Makefile, [echo timestamp > stamp-h])
+AC_OUTPUT(Makefile ircd/Makefile ircd/test/Makefile doc/Makefile, [echo timestamp > stamp-h])
dnl Report configuration
AC_OUTPUT_COMMANDS([echo "