X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=configure.in;h=eefefd7cd98e06f73282fb61c0a960633dd5bacd;hb=9dfcc6504ee6b5105e2e09c130dae7a1f015d9e9;hp=64179058def62578ce612f5df110b7ebe4bbae39;hpb=42e8063a326d086be265145cb34ecff6061be563;p=ngircd-alex.git diff --git a/configure.in b/configure.in index 64179058..eefefd7c 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2004 Alexander Barton +# Copyright (c)2001-2005 Alexander Barton # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -8,7 +8,7 @@ # (at your option) any later version. # Please read the file COPYING, README and AUTHORS for more information. # -# $Id: configure.in,v 1.103 2004/05/15 12:24:30 alex Exp $ +# $Id: configure.in,v 1.108 2005/03/21 22:15:15 alex Exp $ # # -- Initialisation -- @@ -85,14 +85,14 @@ AC_CHECK_HEADERS([ \ strings.h sys/socket.h sys/time.h unistd.h \ ],,AC_MSG_ERROR([required C header missing!])) -AC_CHECK_HEADERS([arpa/inet.h ctype.h malloc.h stdint.h varargs.h]) +AC_CHECK_HEADERS([arpa/inet.h ctype.h malloc.h stdbool.h stddef.h varargs.h]) # -- Datatypes -- AC_MSG_CHECKING(whether socklen_t exists) AC_TRY_COMPILE([ - #include - #include +#include +#include ],[ socklen_t a, b; a = 2; b = 4; a += b; @@ -132,7 +132,12 @@ AC_CHECK_FUNCS(select,[AC_CHECK_HEADERS(sys/select.h)], x_syslog_on=no AC_ARG_WITH(syslog, [ --without-syslog disable syslog (autodetected by default)], - [ if test "$withval" = "yes"; then + [ if test "$withval" != "no"; then + if test "$withval" != "yes"; then + CFLAGS="-I$withval/include $CFLAGS" + CPPFLAGS="-I$withval/include $CPPFLAGS" + LDFLAGS="-L$withval/lib $LDFLAGS" + fi AC_CHECK_LIB(be, syslog) AC_CHECK_FUNCS(syslog, x_syslog_on=yes, AC_MSG_ERROR([Can't enable syslog!]) @@ -152,7 +157,12 @@ fi x_zlib_on=no AC_ARG_WITH(zlib, [ --without-zlib disable zlib compression (autodetected by default)], - [ if test "$withval" = "yes"; then + [ if test "$withval" != "no"; then + if test "$withval" != "yes"; then + CFLAGS="-I$withval/include $CFLAGS" + CPPFLAGS="-I$withval/include $CPPFLAGS" + LDFLAGS="-L$withval/lib $LDFLAGS" + fi AC_CHECK_LIB(z, deflate) AC_CHECK_FUNCS(deflate, x_zlib_on=yes, AC_MSG_ERROR([Can't enable zlib!]) @@ -171,14 +181,20 @@ fi x_tcpwrap_on=no AC_ARG_WITH(tcp-wrappers, [ --with-tcp-wrappers enable TCP wrappers support], - [ if test "$withval" = "yes"; then - AC_CHECK_LIB(wrap, tcpd_warn) + [ if test "$withval" != "no"; then + if test "$withval" != "yes"; then + CFLAGS="-I$withval/include $CFLAGS" + CPPFLAGS="-I$withval/include $CPPFLAGS" + LDFLAGS="-L$withval/lib $LDFLAGS" + fi AC_MSG_CHECKING(for hosts_access) + LIBS="-lwrap $LIBS" AC_TRY_LINK([ - #include +#include +int allow_severity = 0; +int deny_severity = 0; ],[ - void *ptr; - ptr = hosts_access; + tcpd_warn("link test"); ],[ AC_MSG_RESULT(yes) AC_DEFINE(TCPWRAP, 1) @@ -194,23 +210,59 @@ AC_ARG_WITH(tcp-wrappers, x_rendezvous_on=no AC_ARG_WITH(rendezvous, [ --with-rendezvous enable support for "Rendezvous"], - [ if test "$withval" = "yes"; then - AC_CHECK_FUNCS(DNSServiceRegistrationCreate, x_rendezvous_on=yes, - AC_MSG_ERROR([Can't enable Rendezvous!]) - ) + [ if test "$withval" != "no"; then + if test "$withval" != "yes"; then + CFLAGS="-I$withval/include $CFLAGS" + CPPFLAGS="-I$withval/include $CPPFLAGS" + LDFLAGS="-L$withval/lib $LDFLAGS" + fi + AC_CHECK_FUNCS(DNSServiceRegistrationCreate, x_rendezvous_on=osx, + [ + AC_CHECK_LIB(pthread, pthread_mutexattr_init) + AC_CHECK_LIB(howl, sw_discovery_init) + AC_CHECK_FUNCS(sw_discovery_init, \ + x_rendezvous_on=howl, \ + AC_MSG_ERROR([Can't enable Rendezvous!])) + ]) fi ] ) -if test "$x_rendezvous_on" = "yes"; then - AC_DEFINE(RENDEZVOUS, 1) +if test "$x_rendezvous_on" = "osx"; then AC_CHECK_HEADERS([DNSServiceDiscovery/DNSServiceDiscovery.h \ mach/port.h],,AC_MSG_ERROR([required C header missing!])) + AC_DEFINE(RENDEZVOUS, 1) +fi +if test "$x_rendezvous_on" = "howl"; then + for dir in /usr/local/include /usr/local/include/howl* \ + /usr/include /usr/include/howl*; do + test -d "$dir" || continue + AC_MSG_CHECKING([for Howl headers in $dir]) + if test -f "$dir/rendezvous/rendezvous.h"; then + if test "$dir" != "/usr/local/include" -a \ + "$dir" != "/usr/include"; then + CFLAGS="-I$dir $CFLAGS" + CPPFLAGS="-I$dir $CPPFLAGS" + fi + AC_MSG_RESULT(yes) + break + else + AC_MSG_RESULT(no) + fi + done + AC_CHECK_HEADERS([rendezvous/rendezvous.h],, \ + AC_MSG_ERROR([required C header missing!])) + AC_DEFINE(RENDEZVOUS, 1) fi x_identauth_on=no AC_ARG_WITH(ident, [ --with-ident enable "IDENT" ("AUTH") protocol support], - [ if test "$withval" = "yes"; then + [ if test "$withval" != "no"; then + if test "$withval" != "yes"; then + CFLAGS="-I$withval/include $CFLAGS" + CPPFLAGS="-I$withval/include $CPPFLAGS" + LDFLAGS="-L$withval/lib $LDFLAGS" + fi AC_CHECK_LIB(ident, ident_id) AC_CHECK_FUNCS(ident_id, x_identauth_on=yes, AC_MSG_ERROR([Can't enable IDENT support!]) @@ -348,7 +400,7 @@ test "$x_strict_rfc_on" = "yes" \ || echo "no" echo $ECHO_N " Rendezvous support: $ECHO_C" -test "$x_rendezvous_on" = "yes" \ +test "$x_rendezvous_on" = "osx" -o "$x_rendezvous_on" = "howl" \ && echo $ECHO_N "yes $ECHO_C" \ || echo $ECHO_N "no $ECHO_C" echo $ECHO_N " IRC+ protocol: $ECHO_C"