[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Disable the present-but-cannot-be-compiled header warning?
From: |
Eric Blake |
Subject: |
Re: Disable the present-but-cannot-be-compiled header warning? |
Date: |
Thu, 30 Oct 2008 22:06:33 -0600 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.17) Gecko/20080914 Thunderbird/2.0.0.17 Mnenhy/0.7.5.666 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
According to Paolo Bonzini on 10/29/2008 2:28 PM:
> You should use four-arguments AC_CHECK_HEADERS. Pass
> AC_INCLUDES_DEFAULT as the fourth argument if you want to filter out
> headers that cannot be compiled; pass [-] if you don't want that.
>
> This is undocumented, I admit.
Not anymore ;)
- --
Don't work too hard, make some time for fun as well!
Eric Blake address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkkKhEkACgkQ84KuGfSFAYB6rgCeNwg6X6ichx1SNlsinYTF3KMK
uagAn1MuNPoupeNbvq0Ep3Q74AL7ApJr
=m0h3
-----END PGP SIGNATURE-----
>From cd9fbb8453739ef795a6a64192610265d49577d2 Mon Sep 17 00:00:00 2001
From: Eric Blake <address@hidden>
Date: Thu, 30 Oct 2008 22:05:55 -0600
Subject: [PATCH] Better documentation of AC_CHECK_HEADER's fourth argument.
* doc/autoconf.texi (Generic Headers) <AC_CHECK_HEADER>: Mention
how to suppress compiler or preprocessor header check.
Reported by Jeff Squyres.
Signed-off-by: Eric Blake <address@hidden>
---
ChangeLog | 7 +++++++
doc/autoconf.texi | 27 +++++++++++++++++++--------
2 files changed, 26 insertions(+), 8 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 457d711..d1c89f9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2008-10-30 Eric Blake <address@hidden>
+ Better documentation of AC_CHECK_HEADER's fourth argument.
+ * doc/autoconf.texi (Generic Headers) <AC_CHECK_HEADER>: Mention
+ how to suppress compiler or preprocessor header check.
+ Reported by Jeff Squyres.
+
+2008-10-30 Eric Blake <address@hidden>
+
Fix LINENO testsuite failure.
* tests/m4sh.at (AT_DATA_LINENO): Use AS_LINENO_PREPARE, not
undocumented _AS_PREPARE, and move unset earlier in script.
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index f10eeae..35c9bfa 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -5795,7 +5795,7 @@ Generic Headers
@anchor{AC_CHECK_HEADER}
@defmac AC_CHECK_HEADER (@var{header-file}, @ovar{action-if-found}, @
- @ovar{action-if-not-found}, @dvar{includes, AC_INCLUDES_DEFAULT})
+ @ovar{action-if-not-found}, @ovar{includes})
@acindex{CHECK_HEADER}
If the system header file @var{header-file} is compilable, execute shell
commands @var{action-if-found}, otherwise execute
@@ -5803,9 +5803,20 @@ Generic Headers
header file is available, consider using @code{AC_CHECK_HEADERS}
instead.
address@hidden is a series of include directives, defaulting to
address@hidden (@pxref{Default Includes}), which are used
-prior to the header under test.
address@hidden is decoded to determine the appropriate include
+directives. If omitted, @file{configure} will check for both header
+existence (with the preprocessor) and usability (with the compiler),
+using @code{AC_INCLUDES_DEFAULT} for the compile test. Currently, if
+there is a discrepancy between the results, a warning is issued to the
+user, and the preprocessor results are favored (@pxref{Present But
+Cannot Be Compiled}); but a future release may switch to favoring the
+compiler results. If @var{includes} is exactly @samp{-}, then only a
+preprocessor check is performed, without regard to prerequisite headers.
+For anything else, only a compiler check is performed, using
address@hidden as the set of preprocessor directives to use prior to
+including the header under test, in which case, it is common to manually
+list @code{AC_INCLUDES_DEFAULT} (@pxref{Default Includes}) along with
+any other prerequisite headers.
For compatibility issues with older versions of Autoconf, please read
below.
@@ -5814,7 +5825,7 @@ Generic Headers
@anchor{AC_CHECK_HEADERS}
@defmac AC_CHECK_HEADERS (@address@hidden, @
@ovar{action-if-found}, @ovar{action-if-not-found}, @
- @dvar{includes, AC_INCLUDES_DEFAULT})
+ @ovar{includes})
@acindex{CHECK_HEADERS}
@cvindex address@hidden
For each given system header file @var{header-file} in the
@@ -5825,9 +5836,9 @@ Generic Headers
the loop on the first match. If @var{action-if-not-found} is given, it
is executed when one of the header files is not found.
address@hidden is a series of include directives, defaulting to
address@hidden (@pxref{Default Includes}), which are used
-prior to the headers under test.
address@hidden is interpreted as in @code{AC_CHECK_HEADER}, in order to
+choose the set of preprocessor directives supplied before the header
+under test.
For compatibility issues with older versions of Autoconf, please read
below.
--
1.6.0.2
- Re: Disable the present-but-cannot-be-compiled header warning?,
Eric Blake <=