Re: #define warnings when using various autotools projects

From:

Bob Friesenhahn

Subject:

Re: #define warnings when using various autotools projects

Date:

Tue, 13 May 2008 12:52:46 -0500 (CDT)

On Tue, 13 May 2008, John Calcote wrote:

But this is very common mistake. It comes from carelessness about which
header files are considered part of the public interface, and which ones
should be kept private. The generated config.h header file is intended
to help BUILD the library on a particular platform, not provide support
for consumers of the library through the public interface of that
library. And yet I see this happen all the time.

It is sometimes necessary to provide build-specific typedefs and
defines in order for the installed header files to correctly represent
the library interface. If "config.h" is not used, then a more
elaborate means needs to be used to make this possible.

For my own project, I use two "config.h" files. One is used to build
the software and the other is trimmed down to support only what is
actually needed to define the interface header ABI.