Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-11-06 20:49:39


At 05:01 PM 11/6/2003, Rob Stewart wrote:
>From: Beman Dawes <bdawes_at_[hidden]>
>> At 08:07 AM 11/4/2003, John Maddock wrote:
>>
>> >I've put together a set of draft guidelines come tutorial for
libraries
>> >that have separate source code ...
>>
>> * There are several sections:
>>
>> * Supporting Windows DLL's
>> * Importing/exporting dependencies
>> * Fixing the ABI of the Compiled Library
>> * Enabling Automatic Library Selection and Linking
>>
>> IIUC, "Fixing the ABI of the Compiled Library" applies to more
libraries
>> than just those compiled separately. Thus it might be better as the
first
>
>> section, where header-only library developers can access it easily.
>
>If header-only developers should read this document, then it is
>misnamed and it should clearly indicate what applies to
>header-only and "separate source" libraries.

If I understand John correctly, the BOOST_HAS_ABI_HEADERS issues apply to
header-only libraries if those libraries are used by separate-source
libraries, but not otherwise:

>Counter Argument #2:
>
>Prefix/suffix headers have a tendency to "spread" to other boost
libraries
>-
>for example if boost::shared_ptr<> forms part of your class's ABI, then
>including prefix/suffix headers in your code will be of no use unless
>shared_ptr.hpp also uses them. Authors of header-only boost libraries
may
>not be so keen on this solution - with some justification - since they
>don't face the same problem.

So we have to make a decision as to how to deal with this for header-only
libraries. I personally don't have a problem with it, since it adds only
six lines of code per header.

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk