Boost logo

Boost :

Subject: Re: [boost] [Git] Documentation for Git and Modular Boost conversion
From: Daniel Pfeifer (daniel_at_[hidden])
Date: 2012-12-12 03:19:58


2012/12/12 Robert Kawulak <robert.kawulak_at_[hidden]>

> > From: Beman Dawes
> > now is boost-root/libs/simple/include/boost/simple/simple.hpp
> >
> > Note that the install procedure will install a logical link from
> > boost-root/boost/simple to boost-root/libs/simple/include/boost/simple
> > so that user includes like #include <boost/simple/simple.hpp> still
> > work.
>
> Sorry if it has been written somewhere and I'm overlooking it, but what
> happens
> to convenience headers of the form "boost-root/boost/lib.hpp" that include
> everything from "boost-root/boost/lib/"? Do they simply go to
> "boost-root/libs/lib/include/boost/lib.hpp" and also get linked?

Yes.

> Or are they
> unsupported and "boost-root/libs/lib/include/boost/lib/all.hpp" is the
> preferred
> convention instead?
>

No, we try to avoid breaking changes whenever possible.

> Moreover - especially in the latter case - why the "boost/lib/" sub-dir in
> "include/"? Couldn't the hierarchy be simplified so that a library's
> include
> files go straight to "boost-root/libs/lib/include/"? Is it to allow for
> including a stand-alone library's files consistently by using "#include
> <boost/lib/...>"?
>

Correct. The reason again is modularization. In the future, if you want to
use lib, you will download that lib (and its dependencies), add the
'include' directory of lib (and all its dependencies) to your compilers
include path, and compile your source code. No changes will be needed in
your source code.

Resolving the dependencies of lib is something that you don't want to do
manually. We plan to provide a tool that automatically resolves and
downloads lib including its dependencies and also sets up your workspace
with all include paths correctly set up.

-Daniel


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