X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/6c8cbf341ba353a565bafe867ab90b79a54c445c..a5497589929c9482cf26b39ceab0b1a45e8462a3:/configure.ac diff --git a/configure.ac b/configure.ac index f83384f..6d9b2ef 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -dnl $Id: configure.ac 3360 2007-04-03 09:37:03Z nenolod $ +dnl $Id: configure.ac 3516 2007-06-10 16:14:03Z jilles $ dnl Process this file with autoconf to produce a configure script. dnl TODO: clean up all the OpenSSL and shared module checking stuff; @@ -8,9 +8,9 @@ dnl said functions need to be just about as complex as they already are. AC_PREREQ(2.57) dnl Sneaky way to get an Id tag into the configure script -AC_COPYRIGHT([$Id: configure.ac 3360 2007-04-03 09:37:03Z nenolod $]) +AC_COPYRIGHT([$Id: configure.ac 3516 2007-06-10 16:14:03Z jilles $]) -AC_INIT([charybdis],[2.2.0]) +AC_INIT([charybdis],[2.3.0]) AC_CONFIG_HEADER(include/setup.h) @@ -26,6 +26,8 @@ AC_LANG(C) dnl Make sure autoconf doesn't interfere with cflags -jmallett CFLAGS="$OLD_CFLAGS" +AC_CONFIG_SUBDIRS(libratbox) + dnl Check for various compilers. -jmallett dnl But if $CC turns out to be gcc, sure as hell it's, well, gcc. -joshk @@ -631,6 +633,14 @@ fi dnl IO Loop Selection dnl ================= +AC_ARG_ENABLE(ports, AC_HELP_STRING([--enable-ports],[Force solaris I/O ports subsystem usage.]), +[ if test $enableval = yes; then + SELECT_TYPE_EXPLICIT="ports" + else + use_ports=no + fi +],) + AC_ARG_ENABLE(poll, AC_HELP_STRING([--enable-poll],[Force poll() usage.]), [ if test $enableval = yes; then SELECT_TYPE_EXPLICIT="poll" @@ -655,16 +665,6 @@ AC_ARG_ENABLE(kqueue, AC_HELP_STRING([--enable-kqueue],[Force kqueue() usage.]), fi ],) -AC_ARG_ENABLE(devpoll,AC_HELP_STRING([--enable-devpoll],[Force usage of /dev/poll.]), -[ if test $enableval = yes; then - SELECT_TYPE_EXPLICIT="devpoll" - dnl These need to be defined or not defined - AC_CHECK_HEADERS([sys/devpoll.h devpoll.h]) - else - use_devpoll=no; - fi -],) - AC_ARG_ENABLE(epoll, AC_HELP_STRING([--enable-epoll],[Force sys_epoll usage (Linux only).]), [ if test $enableval = yes; then SELECT_TYPE_EXPLICIT="epoll" @@ -751,6 +751,13 @@ if test ! -z "$SELECT_TYPE_EXPLICIT"; then echo "Forcing $SELECT_TYPE to be enabled" else +if test ! "x$use_ports" = "xno"; then + AC_CHECK_FUNCS(port_getn, [haveports=yes], [haveports=no]) + if test "x$haveports" = "xyes" ; then + SELECT_TYPE="ports" + fi +fi + if test ! "x$use_select" = "xno"; then AC_CHECK_FUNCS(select, [haveselect=yes], [haveselect=no]) if test "x$haveselect" = "xyes" ; then @@ -765,17 +772,6 @@ if test ! "x$use_poll" = "xno"; then fi fi -if test ! "x$use_devpoll" = "xno"; then - AC_MSG_CHECKING(for /dev/poll) - if test -c "/dev/poll"; then - AC_MSG_RESULT(yes) - AC_CHECK_HEADERS([devpoll.h sys/devpoll.h]) - SELECT_TYPE="devpoll" - else - AC_MSG_RESULT(no) - fi -fi - if test ! "x$use_kqueue" = "xno"; then AC_CHECK_FUNCS(kevent, [havekqueue=yes], [havekqueue=no]) if test "x$havekqueue" = "xyes" ; then @@ -802,7 +798,7 @@ main(int argc, char **argv) int epfd; epfd = epoll_create(256); - exit (epfd == -1 ? 1 : 0); + return (epfd == -1 ? 1 : 0); }, [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_EPOLL, 1, [Define if your system supports the epoll system calls]) @@ -933,6 +929,8 @@ dnl AC_DEFINE([HASHSIZE], 4096, [Max number of buckets in hash tables.]) AC_DEFINE([ND_HEAP_SIZE], 128, [Size of the nick delay heap.]) AC_DEFINE([CONFITEM_HEAP_SIZE], 128, [Size of the confitem heap.]) AC_DEFINE([MONITOR_HEAP_SIZE], 128, [Size of the monitor heap.]) + AC_DEFINE([FD_HEAP_SIZE], 128, [Size of fd heap.]) + AC_DEFINE([AWAY_HEAP_SIZE], 128, [Size of away heap.]) else dnl These settings are for a large network like efnet..they will use lots of memory dnl so enable small net unless you really need this much support @@ -950,6 +948,8 @@ dnl so enable small net unless you really need this much support AC_DEFINE([ND_HEAP_SIZE], 512, [Size of the nick delay heap.]) AC_DEFINE([CONFITEM_HEAP_SIZE], 256, [Size of the confitem heap.]) AC_DEFINE([MONITOR_HEAP_SIZE], 1024, [Size of the monitor heap.]) + AC_DEFINE([FD_HEAP_SIZE], 1024, [Size of fd heap.]) + AC_DEFINE([AWAY_HEAP_SIZE], 512, [Size of away heap.]) fi AC_ARG_WITH(nicklen, @@ -977,10 +977,7 @@ AC_HELP_STRING([--with-topiclen=NUMBER],[Set the max topic length to NUMBER (def AC_DEFINE_UNQUOTED(TOPICLEN, ${TOPICLEN}, [Maximum topic length (<=390)]) AC_DEFINE_UNQUOTED(NICKLEN, (${NICKLEN}+1), [Nickname length]) -AC_ARG_ENABLE(shared-modules, -AC_HELP_STRING([--disable-shared-modules],[ Disable shared modules.]), -[shared_modules=$enableval], [shared_modules="yes"]) - +shared_modules="yes" dnl Some first-stage sanity checks. if test "$shared_modules" = yes; then @@ -1240,7 +1237,6 @@ fi AC_CONFIG_FILES( \ Makefile \ - libcharybdis/Makefile \ servlink/Makefile \ extensions/Makefile \ unsupported/Makefile \ @@ -1271,12 +1267,10 @@ Configuration: Ziplinks : $zlib OpenSSL : $openssl - Modules : $modules IPv6 support : $have_v6 Socket Engine : $SELECT_TYPE Small network : $small_net Block allocator : $balloc - ASM hashing code : $ricer_hashing Nickname length : $NICKLEN Topic length : $TOPICLEN