X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=configure.ng;h=57ae8bb8e66d1aba58cb84ac0fd136c4b2558fe1;hp=bc30bed8a721a4b05f42d2d1fccd6b7dd85cb8d9;hb=1d4f80b42297555ef1a72eec553c59f9ee1e8dce;hpb=b8433e9261c516d7b8743b33681050b6666192e5 diff --git a/configure.ng b/configure.ng index bc30bed8..57ae8bb8 100644 --- a/configure.ng +++ b/configure.ng @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2013 Alexander Barton (alex@barton.de) and Contributors +# Copyright (c)2001-2014 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,8 +23,7 @@ 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-ml@ngircd.barton.de],[ngircd],[http://ngircd.barton.de/]) AC_CONFIG_SRCDIR([src/ngircd/ngircd.c]) AC_CONFIG_HEADER([src/config.h]) @@ -67,6 +66,7 @@ AC_PROG_AWK AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET +AC_PROG_MKDIR_P AC_PROG_RANLIB # -- Compiler Features -- @@ -84,7 +84,7 @@ AC_DEFUN([GCC_STACK_PROTECT_CC],[ AC_MSG_CHECKING([whether ${CC} accepts -fstack-protector]) ssp_old_cflags="$CFLAGS" CFLAGS="$CFLAGS -fstack-protector-all" - AC_TRY_LINK(,,, ssp_cc=no) + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],[],[ssp_cc=no]) echo $ssp_cc CFLAGS="$ssp_old_cflags" if test "X$ssp_cc" = "Xyes"; then @@ -96,7 +96,7 @@ AC_DEFUN([GCC_STACK_PROTECT_CC],[ AC_DEFUN([WORKING_GETADDRINFO],[ AC_CHECK_FUNCS([getaddrinfo],[ AC_MSG_CHECKING([whether getaddrinfo() works]) - AC_TRY_RUN([ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include #include @@ -113,11 +113,13 @@ main(int argc, char **argv) return 1; return 0; } - ],[ + ]])],[ AC_DEFINE([HAVE_WORKING_GETADDRINFO], 1, [getaddrinfo(0)]) AC_MSG_RESULT(yes) ],[ AC_MSG_RESULT(no) + ],[ + AC_MSG_RESULT(no) ]) ]) ]) @@ -152,33 +154,47 @@ AC_HEADER_TIME # Required header files AC_CHECK_HEADERS([ \ - fcntl.h netdb.h netinet/in.h stdlib.h string.h \ - strings.h sys/socket.h sys/time.h unistd.h \ + fcntl.h \ + netdb.h \ + netinet/in.h \ + stdlib.h \ + string.h \ + strings.h \ + sys/socket.h \ + sys/time.h \ + sys/types.h \ + unistd.h \ ],,AC_MSG_ERROR([required C header missing!])) # Optional header files AC_CHECK_HEADERS_ONCE([ \ - arpa/inet.h inttypes.h malloc.h netinet/in_systm.h netinet/ip.h \ - stdbool.h stddef.h stdint.h varargs.h \ - ]) + arpa/inet.h \ + inttypes.h \ + malloc.h \ + netinet/in_systm.h \ + netinet/ip.h \ + stdbool.h \ + stddef.h \ + stdint.h \ + varargs.h \ +]) # -- Datatypes -- AC_MSG_CHECKING(whether socklen_t exists) -AC_TRY_COMPILE([ +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include #include - ],[ + ]],[[ socklen_t a, b; a = 2; b = 4; a += b; - ],[ + ]])],[ AC_DEFINE(HAVE_socklen_t) AC_MSG_RESULT(yes) ],[ AC_MSG_RESULT(no) ]) AC_TYPE_PID_T -AC_TYPE_SIGNAL AC_TYPE_SIZE_T AC_TYPE_SSIZE_T AC_TYPE_UID_T @@ -211,17 +227,49 @@ AC_FUNC_STRFTIME # Required functions AC_CHECK_FUNCS([ \ - alarm dup2 endpwent gethostbyaddr gethostbyname gethostname \ - gettimeofday inet_ntoa memmove memset setsid socket strcasecmp \ - strchr strcspn strerror strncasecmp strrchr strspn strstr \ + alarm \ + dup2 \ + endpwent \ + gethostbyaddr \ + gethostbyname \ + gethostname \ + gettimeofday \ + inet_ntoa \ + memmove \ + memset \ + setsid \ + socket \ + strcasecmp \ + strchr \ + strcspn \ + strerror \ + strncasecmp \ + strrchr \ + strspn \ + strstr \ ],, AC_MSG_ERROR([required function missing!])) # Optional functions AC_CHECK_FUNCS_ONCE([ - arc4random arc4random_stir gai_strerror getnameinfo inet_aton \ - sigaction sigprocmask snprintf vsnprintf strdup strndup strlcpy strlcat \ - strtok_r unsetenv waitpid]) + arc4random \ + arc4random_stir \ + gai_strerror \ + getnameinfo \ + inet_aton \ + setgroups \ + sigaction \ + sigprocmask \ + snprintf \ + strdup \ + strlcat \ + strlcpy \ + strndup \ + strtok_r \ + unsetenv \ + vsnprintf \ + waitpid \ +]) WORKING_GETADDRINFO @@ -417,8 +465,8 @@ AC_ARG_WITH(openssl, LDFLAGS="-L$withval/lib $LDFLAGS" fi AC_CHECK_LIB(crypto, BIO_s_mem) - AC_CHECK_LIB(ssl, SSL_library_init) - AC_CHECK_FUNCS(SSL_library_init, x_ssl_openssl=yes, + AC_CHECK_LIB(ssl, SSL_new) + AC_CHECK_FUNCS(SSL_new, x_ssl_openssl=yes, AC_MSG_ERROR([Can't enable openssl]) ) fi @@ -466,14 +514,18 @@ AC_ARG_WITH(tcp-wrappers, LDFLAGS="-L$withval/lib $LDFLAGS" fi AC_MSG_CHECKING(for hosts_access) + saved_LIBS="$LIBS" LIBS="-lwrap $LIBS" - AC_TRY_LINK([ + LIBS_END="-lwrap $LIBS_END" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +#include +#include #include int allow_severity = 0; int deny_severity = 0; - ],[ + ]],[[ tcpd_warn("link test"); - ],[ + ]])],[ AC_MSG_RESULT(yes) AC_DEFINE(TCPWRAP, 1) x_tcpwrap_on=yes @@ -481,6 +533,7 @@ int deny_severity = 0; AC_MSG_RESULT(no) AC_MSG_ERROR([Can't enable TCP wrappers!]) ]) + LIBS="$saved_LIBS" fi ] ) @@ -636,9 +689,12 @@ AC_DEFINE_UNQUOTED(HOST_CPU, "$host_cpu" ) AC_DEFINE_UNQUOTED(HOST_VENDOR, "$host_vendor" ) AC_DEFINE_UNQUOTED(HOST_OS, "$host_os" ) -# Add additional CFLAGS, eventually specified on the command line, but after -# running this configure script. Useful for "-Werror" for example. +# Add additional CFLAGS, LDFLAGS and LIBS which were specified on the command +# line or by some tests from above, but after running this script. Useful for +# adding "-Werror", for example: test -n "$CFLAGS_END" && CFLAGS="$CFLAGS $CFLAGS_END" +test -n "$LDFLAGS_END" && LDFLAGS="$LDFLAGS $LDFLAGS_END" +test -n "$LIBS_END" && LIBS="$LIBS $LIBS_END" # -- Generate files -- @@ -667,7 +723,9 @@ if test $? -eq 0; then # Generate debian/ link if the dpkg command exists # (read: if we are running on a debian compatible system) echo "creating Debian-specific links ..." - test -f debian/rules || ln -s contrib/Debian debian + if test ! -f debian/rules -a -f contrib/Debian/rules; then + ln -s contrib/Debian debian + fi fi # -- Result --