Boost logo

Boost :

From: Daryle Walker (darylew_at_[hidden])
Date: 2000-12-12 13:43:28


on 12/11/00 7:49 AM, John Maddock at John_Maddock_at_[hidden] wrote:

>> This way, you only have to enter two directories
>> into your compiler's search path to use Boost. (Using "/libs/libname/src"
>> would be a nightmare; you would either have to specify each individual
>> sub-library you anticipate using, or specify the parent "/libs" directory
>> and risk conflicts with the non-mandatory source files.)<
>
> I don't follow that at all, why do you need to enter search paths for cpp
> files at all? Libraries yes, headers yes, but cpp files surely no?

On my development system, you can. You still have to add the *.cpp file to
the project list, but you don't have to add it by its full path name, the
IDE will use its search paths to find the proper directory.

> BTW, I don't like the idea of having all the cpp files in one directory -
> there is no guarentee that all of them will build (not all libraries are
> supported on all platforms).

Since I still have to explicitly add the *.cpp file to the project, there is
no worry about an incompatible *.cpp file in the same directory being used.
(Unless a problem file coincidentally has the same name as a file I am
using, then I have to make sure the IDE finds the desired one first. This
is only a problem with non-Boost code, since we should try to make sure all
essential Boost files have unique names.)

The *.cpp files won't be in the /src directory flat, they should mirror the
sub-directory structure for the *.hpp files in the /boost directory. It
would be just like the "boost_top/src/libname" idea that Jeff Garland
suggested in his response.

> Nor do I think there should be a single
> "boost" library build, although I use large parts of boost, I have never
> used all of it in one project, users should not pay for what they don't
> use, and would prefer to see the boost libraries continue to build as
> separate libraries. For me that means that putting source in
> <boost>/libs/libname/src is fine, as long as it is properly documented.

I've never suggested an actual (static) library of Boost, I was always
talking about source code. As I said, including a *.cpp directory != using
all *.cpp files within it, so your concern is not a problem. As Jeff and I
said, requiring users to specify each sub-library directory individually
would be worse. My plan would still allow your option, but users would also
be able to specify just the /src directory to get any file within it (as
long as the IDE can use sub-directory searching) without getting
non-essential files. (Imagine the differences if someone, theoretically,
did want to use all of Boost.)

-- 
Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT mac DOT com

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