Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2004-01-26 10:00:16

John Torjo <john.lists_at_[hidden]> writes:

> Dear boosters,
> Again, I'm pretty frustrated that some libraries have source files
> that need to be compiled separately (using bjam).

Separate compilation is the norm for libraries. I don't know why you
expect to be able to avoid it.

> I was thinking that we could have a directory '/boost/impl', and each
> library that has sourse files could have an .hpp file that includes
> all of its source files (that would normally need to be compiled
> separately).
> This way, any user, even not having bjam, can include the
> implementation of a library, as simple as:
> // this is included in ONLY one source file
> #include <boost/impl/filesystem.hpp>
> As a regular user, I'd rather have the above, than having to use bjam
> to build a library.
> If people agree, I volunteer to create the /boost/impl directory for
> all the libraries that now need to be compiled separately, somewhere
> this week.

I'm opposed to this idea because:

    0. Testing this configuration is a burden on developers

    1. It gives an implied guarantee that it will work for the user
       (see 2)

    2. We have no control over compiler flags or other settings that
       may be neccessary for the library to work, nor that different
       libraries are compiled with compatible options

    3. If we don't need that control for some libraries today, but we
       need it tomorrow, we'll have to take the feature of being able
       to do the big #include back from the user

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at