X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=m4%2Fwget.m4;h=777e973415ee42d013ddd275f6b64c4487a33484;hp=736bd2eb3e13baa6a03517439afcaca021e55f90;hb=320cfdcb658e8d6556ae9dfd902c2db1db866a6b;hpb=53d0aff795316dc1a4b785632f0d4d93c861e9cb diff --git a/m4/wget.m4 b/m4/wget.m4 index 736bd2eb..777e9734 100644 --- a/m4/wget.m4 +++ b/m4/wget.m4 @@ -1,6 +1,7 @@ dnl Wget-specific Autoconf macros. dnl Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, -dnl 2004, 2005, 2006, 2007 Free Software Foundation, Inc. +dnl 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +dnl Foundation, Inc. dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by @@ -15,15 +16,16 @@ dnl GNU General Public License for more details. dnl You should have received a copy of the GNU General Public License dnl along with this program. If not, see . -dnl In addition, as a special exception, the Free Software Foundation -dnl gives permission to link the code of its release of Wget with the -dnl OpenSSL project's "OpenSSL" library (or with modified versions of it -dnl that use the same license as the "OpenSSL" library), and distribute -dnl the linked executables. You must obey the GNU General Public License -dnl in all respects for all of the code used other than "OpenSSL". If you -dnl modify this file, you may extend this exception to your version of the -dnl file, but you are not obligated to do so. If you do not wish to do -dnl so, delete this exception statement from your version. +dnl Additional permission under GNU GPL version 3 section 7 + +dnl If you modify this program, or any covered work, by linking or +dnl combining it with the OpenSSL project's OpenSSL library (or a +dnl modified version of that library), containing parts covered by the +dnl terms of the OpenSSL or SSLeay licenses, the Free Software Foundation +dnl grants you additional permission to convey the resulting work. +dnl Corresponding Source for a non-source form of such a combination +dnl shall include the source code for the parts of OpenSSL used as well +dnl as that of the covered work. dnl dnl Check for `struct utimbuf'. @@ -41,36 +43,6 @@ AC_DEFUN([WGET_STRUCT_UTIMBUF], [ ]) ]) - -dnl Check for socklen_t. The third argument of accept, getsockname, -dnl etc. is int * on some systems, but size_t * on others. POSIX -dnl finally standardized on socklen_t, but older systems don't have -dnl it. If socklen_t exists, we use it, else if accept() accepts -dnl size_t *, we use that, else we use int. - -AC_DEFUN([WGET_SOCKLEN_T], [ - AC_MSG_CHECKING(for socklen_t) - AC_COMPILE_IFELSE([ -#include -#include -socklen_t x; - ], [AC_MSG_RESULT(socklen_t)], [ - AC_COMPILE_IFELSE([ -#include -#include -int accept (int, struct sockaddr *, size_t *); - ], [ - AC_MSG_RESULT(size_t) - AC_DEFINE([socklen_t], [size_t], - [Define to int or size_t on systems without socklen_t.]) - ], [ - AC_MSG_RESULT(int) - AC_DEFINE([socklen_t], [int], - [Define to int or size_t on systems without socklen_t.]) - ]) - ]) -]) - dnl Check whether fnmatch.h can be included. This doesn't use dnl AC_FUNC_FNMATCH because Wget is already careful to only use dnl fnmatch on certain OS'es. However, fnmatch.h is sometimes broken @@ -79,8 +51,8 @@ dnl /usr/local/include (!), which GCC uses before /usr/include. AC_DEFUN([WGET_FNMATCH], [ AC_MSG_CHECKING([for working fnmatch.h]) - AC_COMPILE_IFELSE([#include - ], [ + AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include + ])], [ AC_MSG_RESULT(yes) AC_DEFINE([HAVE_WORKING_FNMATCH_H], 1, [Define if fnmatch.h can be included.]) @@ -150,8 +122,18 @@ AC_DEFUN([TYPE_STRUCT_SOCKADDR_IN6],[ wget_have_sockaddr_in6=no ],[ #include +#ifdef HAVE_SYS_SOCKET_H #include +#endif +#ifdef HAVE_NETINET_IN_H #include +#endif +#ifdef HAVE_WINSOCK2_H +#include +#endif +#ifdef HAVE_WS2TCPIP_H +#include +#endif ]) if test "X$wget_have_sockaddr_in6" = "Xyes"; then : @@ -164,7 +146,7 @@ AC_DEFUN([TYPE_STRUCT_SOCKADDR_IN6],[ AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[ AC_REQUIRE([TYPE_STRUCT_SOCKADDR_IN6]) - + wget_member_sin6_scope_id= if test "X$wget_have_sockaddr_in6" = "Xyes"; then AC_CHECK_MEMBER([struct sockaddr_in6.sin6_scope_id],[ @@ -173,8 +155,18 @@ AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[ wget_member_sin6_scope_id=no ],[ #include +#ifdef HAVE_SYS_SOCKET_H #include +#endif +#ifdef HAVE_NETINET_IN_H #include +#endif +#ifdef HAVE_WINSOCK2_H +#include +#endif +#ifdef HAVE_WS2TCPIP_H +#include +#endif ]) fi @@ -192,13 +184,23 @@ AC_DEFUN([PROTO_INET6],[ AC_CACHE_CHECK([for INET6 protocol support], [wget_cv_proto_inet6],[ AC_TRY_CPP([ #include +#ifdef HAVE_SYS_SOCKET_H #include - +#endif +#ifdef HAVE_NETINET_IN_H +#include +#endif +#ifdef HAVE_WINSOCK2_H +#include +#endif +#ifdef HAVE_WS2TCPIP_H +#include +#endif #ifndef PF_INET6 #error Missing PF_INET6 #endif #ifndef AF_INET6 -#error Mlssing AF_INET6 +#error Missing AF_INET6 #endif ],[ wget_cv_proto_inet6=yes @@ -218,153 +220,19 @@ AC_DEFUN([PROTO_INET6],[ AC_DEFUN([WGET_STRUCT_SOCKADDR_STORAGE],[ AC_CHECK_TYPES([struct sockaddr_storage],[], [], [ #include +#ifdef HAVE_SYS_SOCKET_H #include - ]) +#endif +#ifdef HAVE_WINSOCK2_H +#include +#endif +]) ]) dnl ************************************************************ dnl END OF IPv6 AUTOCONFIGURATION SUPPORT MACROS dnl ************************************************************ -# This code originates from Ulrich Drepper's AM_WITH_NLS. - -AC_DEFUN([WGET_WITH_NLS], - [AC_MSG_CHECKING([whether NLS is requested]) - dnl Default is enabled NLS - AC_ARG_ENABLE(nls, - [ --disable-nls do not use Native Language Support], - HAVE_NLS=$enableval, HAVE_NLS=yes) - AC_MSG_RESULT($HAVE_NLS) - - dnl If something goes wrong, we may still decide not to use NLS. - dnl For this reason, defer AC_SUBST'ing HAVE_NLS until the very - dnl last moment. - - if test x"$HAVE_NLS" = xyes; then - dnl If LINGUAS is specified, use only those languages. In fact, - dnl compute an intersection of languages in LINGUAS and - dnl ALL_LINGUAS, and use that. - if test x"$LINGUAS" != x; then - new_linguas= - for lang1 in $ALL_LINGUAS; do - for lang2 in $LINGUAS; do - if test "$lang1" = "$lang2"; then - new_linguas="$new_linguas $lang1" - fi - done - done - ALL_LINGUAS=$new_linguas - fi - AC_MSG_NOTICE([language catalogs: $ALL_LINGUAS]) - AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, - [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt) - AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, - [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) - AC_SUBST(MSGFMT) - AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) - CATOBJEXT=.gmo - INSTOBJEXT=.mo - DATADIRNAME=share - - dnl Test whether we really found GNU xgettext. - if test "$XGETTEXT" != ":"; then - dnl If it is no GNU xgettext we define it as : so that the - dnl Makefiles still can work. - if $XGETTEXT --omit-header /dev/null 2> /dev/null; then - : ; - else - AC_MSG_RESULT( - [found xgettext programs is not GNU xgettext; ignore it]) - XGETTEXT=":" - fi - fi - - AC_CHECK_HEADERS(libintl.h) - - dnl Prefer gettext found in -lintl to the one in libc. - dnl Otherwise it can happen that we include libintl.h from - dnl /usr/local/lib, but fail to specify -lintl, which results in - dnl link or run-time failures. (Symptom: libintl_bindtextdomain - dnl not found at link-time.) - - AC_CHECK_LIB(intl, gettext, [ - dnl gettext is in libintl; announce the fact manually. - LIBS="-lintl $LIBS" - AC_DEFINE([HAVE_GETTEXT], 1, - [Define if you have the gettext function.]) - ], [ - AC_CHECK_FUNCS(gettext, [], [ - AC_MSG_RESULT([gettext not found; disabling NLS]) - HAVE_NLS=no - ]) - ]) - - for lang in $ALL_LINGUAS; do - GMOFILES="$GMOFILES $lang.gmo" - POFILES="$POFILES $lang.po" - done - dnl Construct list of names of catalog files to be constructed. - for lang in $ALL_LINGUAS; do - CATALOGS="$CATALOGS ${lang}${CATOBJEXT}" - done - - dnl Make all variables we use known to autoconf. - AC_SUBST(CATALOGS) - AC_SUBST(CATOBJEXT) - AC_SUBST(DATADIRNAME) - AC_SUBST(GMOFILES) - AC_SUBST(INSTOBJEXT) - AC_SUBST(INTLLIBS) - AC_SUBST(POFILES) - fi - AC_SUBST(HAVE_NLS) - dnl Some independently maintained files, such as po/Makefile.in, - dnl use `USE_NLS', so support it. - USE_NLS=$HAVE_NLS - AC_SUBST(USE_NLS) - if test "x$HAVE_NLS" = xyes; then - AC_DEFINE([HAVE_NLS], 1, [Define this if you want the NLS support.]) - fi - ]) - -dnl Generate list of files to be processed by xgettext which will -dnl be included in po/Makefile. -dnl -dnl This is not strictly an Autoconf macro, because it is run from -dnl within `config.status' rather than from within configure. This -dnl is why special rules must be applied for it. -AC_DEFUN([WGET_PROCESS_PO], - [ - dnl I wonder what the following several lines do... - if test "x$srcdir" != "x."; then - if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then - posrcprefix="$srcdir/" - else - posrcprefix="../$srcdir/" - fi - else - posrcprefix="../" - fi - rm -f po/POTFILES - dnl Use `echo' rather than AC_MSG_RESULT, because this is run from - dnl `config.status'. - echo "generating po/POTFILES from $srcdir/po/POTFILES.in" - sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," \ - -e "\$s/\(.*\) \\\\/\1/" \ - < $srcdir/po/POTFILES.in > po/POTFILES - echo "creating po/Makefile" - sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile - ]) - -# Search path for a program which passes the given test. -# Ulrich Drepper , 1996. -# -# This file may be copied and used freely without restrictions. It -# can be used in projects which are not available under the GNU Public -# License but which still want to provide support for the GNU gettext -# functionality. Please note that the actual code is *not* freely -# available. - dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) AC_DEFUN([AM_PATH_PROG_WITH_TEST],