Boost logo

Boost :

Subject: Re: [boost] [CMake] what to do now?
From: Robert Ramey (ramey_at_[hidden])
Date: 2016-04-14 12:08:59


On 4/14/16 7:22 AM, Rene Rivera wrote:
> On Wed, Apr 13, 2016 at 6:00 PM, Robert Ramey <ramey_at_[hidden]> wrote:
>
>> On 4/13/16 3:37 PM, P F wrote:
>>
>>>
>>> The CMakeLists.txt file should be in the top-level directory.
>>>
>>
>> Hmmmm - says who? I realize that this is the common way to do it. But it
>> ends up sprinkling CMakeList.txt files all over the place. Doing it the
>> way I've done makes supporting CMake much less intrusive and leaves the
>> "footprint" of CMake support on par with build (boost build) easily
>> permitting the user to select which he prefers.
>
>
> <http://www.boost.org/development/requirements.html#Organization>
>
LOL - can you believe that in 13 years (since the copyright date 2003)
I've never seen this - or at least never remember seeing this?

In any case, I had presumed that the "build" directory was for the
exclusive use of boost build. So I conclude than an alternative build
system such as CMake should have it's own directory at the same level.
This is what I recommend in the boost library incubator for libraries
which want to support CMake in a way which doesn't conflict with the
official boost way of doing things. My recommendation was really
motivated by

a) Making support for other build systems optional
b) Avoiding accidental coupling/conflict between different build systems.
e) Permitting build information for a particular system to be all in one
place.

Had I been around at the beginning and had perfect vision 15 years into
the future, I would have advocated for a structure
<library name>
   build
     boost_build
     ...
   doc
     html
     boostbook
     markup
     ..
   src
     ...
   test
     ...
   performance test
   ...

Actually the boost directory structure has worked pretty well as far as
I'm concerned. I wanted to preserve that.

Robert Ramey


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