Boost logo

Boost :

Subject: Re: [boost] CMake Announcement from Boost Steering Committee
From: Raffi Enficiaud (raffi.enficiaud_at_[hidden])
Date: 2017-07-19 12:50:39


Le 19.07.17 à 14:19, Ion Gaztañaga via Boost a écrit :
> On 19/07/2017 3:48, John McFarlane via Boost wrote:
>
>> I'm sure this is how a lot of C++ users out there feel. Yes, anyone who
>> can learn C++ can learn another build system. But why require more
>> burden
>> than is strictly necessary? CMake is the very clear trend across the
>> broader community. Yes, it's far from perfect -- despite a monumental
>> clean-up effort. But more developer systems have CMake installed
>> already.
>
> CMake, for instance, does not really build. AFAIK, it generates build
> instructions for the real build system.

I personally believe this is in fact an advantage, especially for large
projects, because we do not need to recreate the full build project in
memory every time we need to build a library/executable.

The fact that the build should be faster was discussed in this ML and
proposed by Rene for boost.build v3 (if I recall correctly).

>
> This is unacceptable to me, I want something that really builds the
> program and also runs tests from the command line, I want to use the
> same commands in Windows, Linux, FreeBSD and other systems where I test
> my software. I don't want to waste my time recreating MSVC projects
> every time I build. I want regression tests to continue working nicely
> and portable passing common useful options that work in every system.
>
> CMake is popular, no doubt. So is autotools, and no one is proposing it
> for Boost. I have no problems to switch to CMake if:
>
> - Cmake does everything Boost.Build does with the same or less work.
> - Cmake performance is equal or better.
>
> CMake popularity is not important for me as a Boost programmer, in some
> years CMake will be replaced by another super-popular build system. For
> users we can automatically generate CMake projects from Boost.Build, and
> maybe other popular build systems.

This statement can be done for anything (including Boost), and you are
right, all big names are developing their own build tool (Facebook,
Google, etc). So it can be seen as just a matter of time that cmake gets
replaced. Today, I would just say "who knows?".

This also tells us that this aspect for C++ developers cannot be
undermined and, since it cannot be undermined, it deserves more effort.
The build system is not the primary focus of boost, so in a sense it is
a good thing that this part is outsourced from a huge community.

Let's invent a name for that: we should be "full stack C++ developers
(c)" (sounds bad I agree).

Raffi


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