From: Paul Eggert Date: Tue, 23 Sep 2003 23:05:08 +0000 (+0000) Subject: Trivial change to support GCC's configuration procedure. X-Git-Tag: AUTOCONF-2.57d~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f207e9bdb5f8fc46863a963c3a4d07318616923a;p=thirdparty%2Fautoconf.git Trivial change to support GCC's configuration procedure. --- diff --git a/ChangeLog b/ChangeLog index 39f989705..dd63f223e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,18 @@ +2003-09-23 Paul Eggert + + * doc/autoconf.texi (Limitations of Builtins): Document test -h + versus test -L issues. + +2003-09-23 Daniel Jacobowitz and + Paul Eggert + + Trivial change to support GCC's configuration procedure. + * lib/autoconf/c.m4 (AC_PROG_CPP_WERROR): New macro. + * lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL): Don't warn + about inconsistency if the preprocessor is set to give errors for + any warning. + * doc/autoconf.texi (C Compiler Characteristics): Document this. + 2003-09-13 Alexandre Duret-Lutz * Makefile.am (autom4te-update, autom4te_files): Fetch Struct.pm diff --git a/doc/autoconf.texi b/doc/autoconf.texi index 4f0e26f2d..4d2ce3afe 100644 --- a/doc/autoconf.texi +++ b/doc/autoconf.texi @@ -5302,6 +5302,17 @@ Some preprocessors don't indicate missing include files by the error status. For such preprocessors an internal variable is set that causes other macros to check the standard error from the preprocessor and consider the test failed if any warnings have been reported. +For most preprocessors, though, warnings do not cause include-file +tests to fail unless @code{AC_PROG_CPP_WERROR} is also specified. +@end defmac + +@defmac AC_PROG_CPP_WERROR +@acindex{PROG_CPP_WERROR} +@ovindex CPP +This acts like @code{AC_PROG_CPP}, except it treats warnings from the +preprocessor as errors even if the preprocessor exit status indicates +success. This is useful for avoiding headers that generate mandatory +warnings, such as deprecation notices. @end defmac @@ -10209,7 +10220,10 @@ the host system. But occasionally you may find it necessary to check whether some arbitrary file exists. To do so, use @samp{test -f} or @samp{test -r}. Do not use @samp{test -x}, because 4.3@acronym{BSD} does not have it. Do not use @samp{test -e} either, because Solaris 2.5 does not -have it. +have it. To test for symbolic links on systems that have them, use +@samp{test -h} rather than @samp{test -L}; either form conforms to +@acronym{POSIX} 1003.1-2001, but older shells like Solaris 8 +@code{/bin/sh} support only @option{-h}. @item @command{test} (strings) @c --------------------------- diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 index da1d080f5..9d80b994d 100644 --- a/lib/autoconf/c.m4 +++ b/lib/autoconf/c.m4 @@ -419,6 +419,12 @@ AC_SUBST(CPP)dnl AC_LANG_POP(C)dnl ])# AC_PROG_CPP +# AC_PROG_CPP_WERROR +# ------------------ +# Treat warnings from the preprocessor as errors. +AC_DEFUN([AC_PROG_CPP_WERROR], +[AC_REQUIRE([AC_PROG_CPP])dnl +ac_c_preproc_warn_flag=yes])# AC_PROG_CPP_WERROR # AC_LANG_COMPILER(C) # ------------------- diff --git a/lib/autoconf/headers.m4 b/lib/autoconf/headers.m4 index d44e7c15b..9609ad158 100644 --- a/lib/autoconf/headers.m4 +++ b/lib/autoconf/headers.m4 @@ -121,13 +121,13 @@ AC_PREPROC_IFELSE([AC_LANG_SOURCE([@%:@include <$1>])], AC_MSG_RESULT([$ac_header_preproc]) # So? What about this header? -case $ac_header_compiler:$ac_header_preproc in - yes:no ) +case $ac_header_compiler:$ac_header_preproc:$ac_[]_AC_LANG_ABBREV[]_preproc_warn_flag in + yes:no: ) AC_MSG_WARN([$1: accepted by the compiler, rejected by the preprocessor!]) AC_MSG_WARN([$1: proceeding with the compiler's result]) ac_header_preproc=yes ;; - no:yes ) + no:yes:* ) AC_MSG_WARN([$1: present but cannot be compiled]) AC_MSG_WARN([$1: check for missing prerequisite headers?]) AC_MSG_WARN([$1: see the Autoconf documentation])