autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Handling PACKAGE, PACKAGE_VERSION, etc. with multiple libraries


From: Ralf Corsepius
Subject: Re: Handling PACKAGE, PACKAGE_VERSION, etc. with multiple libraries
Date: Thu, 05 Aug 2004 03:58:49 +0200

On Thu, 2004-08-05 at 00:19, J.T. Conklin wrote:
> I am in the process of autoconfiscating TAO (The ACE ORB), an open
> source CORBA implementation built atop the ACE C++ framework.
> 
> Both ACE and TAO create config.h files which are used in compiling the
> respective libraries.  The config.h files are also installed and are
> referenced by library headers, as the macros defined within are needed
> in the implementation of inline functions, etc.
> 
> The ACE and TAO macros do not conflict, since they use ACE_ and TAO_
> prefixes.  The system macros like SIZEOF_DOUBLE and HAVE_UNISTD_H do
> not conflict, since they are defined with the same values. 
... You are polluting the preprocessor symbols' with #defines. This is
considered bad design.

>  But the
> PACKAGE macros defined by autoconf (PACKAGE, PACKAGE_NAME, PACKAGE_-
> VERSION, etc.) do.
> 
> Fortunately these macros aren't used by either ACE or TAO, so all
> there is are annoying compiler warnings.  Is there any better way 
> to handle this so that the PACKAGE macros aren't defined in config.h?
The standard answer to this problem is (Please search this list's
archive. Your question is sort of a FAQ popping up every couple of
months since autoconf-2.5x):

Don't install autoheaders, treat them as private files of a package. If
you really need to export preprocessor symbols you'll have to find other
ways to do so (There are many ways to achieve this.) 

Ralf






reply via email to

[Prev in Thread] Current Thread [Next in Thread]