X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=configure.ng;h=0dccfbc5d466ad0f908909ab4b9a4c2ee7cb8ce7;hb=HEAD;hp=899d00f762eb4e957bef2d6268691acbe0d4eccb;hpb=ad86a41eeed9f85d74bb50a25fa0bf4515aaf3af;p=ngircd-alex.git diff --git a/configure.ng b/configure.ng index 899d00f7..0dccfbc5 100644 --- a/configure.ng +++ b/configure.ng @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors +# Copyright (c)2001-2024 Alexander Barton (alex@barton.de) and Contributors # # 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 @@ -23,13 +23,13 @@ m4_ifdef([AM_SILENT_RULES], # -- Initialisation -- AC_PREREQ([2.61]) -AC_INIT([ngIRCd],[VERSION_ID],[ngircd-ml@ngircd.barton.de],[ngircd],[http://ngircd.barton.de/]) +AC_INIT([ngIRCd],[VERSION_ID],[ngircd@lists.barton.de],[ngircd],[https://ngircd.barton.de/]) AC_CONFIG_SRCDIR([src/ngircd/ngircd.c]) AC_CONFIG_HEADER([src/config.h]) AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([-Wall 1.10 ]ng_color_tests) +AM_INIT_AUTOMAKE([-Wall 1.10 foreign ]ng_color_tests) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) @@ -101,6 +101,7 @@ AC_DEFUN([WORKING_GETADDRINFO],[ #include #include #include +#include int main(int argc, char **argv) { @@ -124,6 +125,20 @@ main(int argc, char **argv) ]) ]) +AC_DEFUN([GCC_W_NO_FORMAT_TRUNC],[ + result=yes + AC_MSG_CHECKING([whether ${CC} accepts -Wno-format-truncation]) + old_cflags="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wno-format-truncation" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],[],[result=no]) + echo $result + if test "X$result" = "Xyes"; then + CFLAGS="$old_cflags -Wno-format-truncation" + else + CFLAGS="$old_cflags" + fi +]) + # -- Hard coded system and compiler dependencies/features/options ... -- if test "$GCC" = "yes"; then @@ -131,6 +146,7 @@ if test "$GCC" = "yes"; then CFLAGS="$CFLAGS -pipe -W -Wall -Wpointer-arith -Wstrict-prototypes" GCC_STACK_PROTECT_CC + GCC_W_NO_FORMAT_TRUNC fi case "$host_os" in @@ -176,6 +192,8 @@ AC_CHECK_HEADERS_ONCE([ \ stdbool.h \ stddef.h \ stdint.h \ + sys/resource.h \ + sys/un.h \ varargs.h \ ]) @@ -258,6 +276,7 @@ AC_CHECK_FUNCS_ONCE([ getnameinfo \ inet_aton \ setgroups \ + setrlimit \ sigaction \ sigprocmask \ snprintf \ @@ -265,6 +284,7 @@ AC_CHECK_FUNCS_ONCE([ strlcat \ strlcpy \ strndup \ + strsignal \ strtok_r \ unsetenv \ vsnprintf \ @@ -465,7 +485,8 @@ AC_ARG_WITH(openssl, LDFLAGS="-L$withval/lib $LDFLAGS" fi PKG_CHECK_MODULES([OPENSSL], [libssl libcrypto], - [LIBS="$LIBS $OPENSSL_LIBS" CFLAGS="$CFLAGS $OPENSSL_CFLAGS"], + [LIBS="$LIBS $OPENSSL_LIBS" CFLAGS="$CFLAGS $OPENSSL_CFLAGS" + AC_DEFINE(HAVE_LIBSSL, 1)], [AC_CHECK_LIB(crypto, BIO_s_mem) AC_CHECK_LIB(ssl, SSL_new)] ) @@ -504,6 +525,8 @@ if test "$x_ssl_openssl" = "yes"; then x_ssl_lib=openssl fi +AM_CONDITIONAL(HAVE_SSL, [test $x_ssl_lib != "no"]) + # use TCP wrappers? x_tcpwrap_on=no @@ -634,18 +657,24 @@ if test "$x_ircplus_on" = "yes"; then fi # enable support for IPv6? -x_ipv6_on=no + +x_ipv6_on=yes AC_ARG_ENABLE(ipv6, - AS_HELP_STRING([--enable-ipv6], - [enable IPv6 protocol support]), - if test "$enableval" = "yes"; then x_ipv6_on=yes; fi + AS_HELP_STRING([--disable-ipv6], + [disable IPv6 protocol support (autodetected by default)]), + [ if test "$enableval" = "no"; then + x_ipv6_on=no + else + AC_CHECK_FUNCS( + [getaddrinfo getnameinfo],, + AC_MSG_ERROR([required function missing for IPv6 support!]) + ) + fi + ], + [ AC_CHECK_FUNCS([getaddrinfo getnameinfo],, x_ipv6_on=no) + ] ) if test "$x_ipv6_on" = "yes"; then - # getaddrinfo() and getnameinfo() are optional when not compiling - # with IPv6 support, but are required for IPv6 to work! - AC_CHECK_FUNCS([ \ - getaddrinfo getnameinfo \ - ],,AC_MSG_ERROR([required function missing for IPv6 support!])) AC_DEFINE(WANT_IPV6, 1) fi @@ -704,9 +733,6 @@ test -n "$LIBS_END" && LIBS="$LIBS $LIBS_END" AC_CONFIG_FILES([ \ Makefile \ contrib/Debian/Makefile \ - contrib/MacOSX/Makefile \ - contrib/MacOSX/ngIRCd.pmdoc/Makefile \ - contrib/MacOSX/ngIRCd.xcodeproj/Makefile \ contrib/Makefile \ doc/Makefile \ doc/src/Makefile \