Boost logo

Boost :

Subject: Re: [boost] PSA: Travis OS X bottleneck, <cxxstd> new Boost.Build feature
From: James E. King, III (jking_at_[hidden])
Date: 2017-10-26 17:44:30

On Thu, Oct 26, 2017 at 12:43 PM, Peter Dimov via Boost <
boost_at_[hidden]> wrote:

> Travis's OS X resources for open source projects seem to be insufficient,
> so OS X jobs are very slow and seem to be falling further and further
> behind. Therefore, library authors are encouraged to keep the OS X jobs to
> the minimum necessary. Spawning many OS X jobs takes hours (~25 minutes
> waiting time per job at a quick estimate).
> On a not entirely unrelated note, Rene Rivera has added a new feature
> <cxxstd> to Boost.Build that controls the C++ standard in use. So for
> instance, instead of the old
> b2 libs/mylib/test toolset=gcc cxxflags=-std=c++11
> one can now use
> b2 libs/mylib/test toolset=gcc cxxstd=11
> In addition to being more convenient, this also allows several invocations
> to be combined into one:
> b2 libs/mylib/test toolset=clang cxxstd=03,11,14,1z
> which can be leveraged to cut down on the number of jobs.
> An example of using cxxstd in .travis.yml can be seen here:

In Travis if one updates gcc and clang as part of the update scripts, you
end up with "clang++" and "clang++-5.0" for example, where the first one is
the version that came with the distribution.
Is there a bjam directive to change the compiler name, for example it would
be nice if I could do:

toolset=gcc,clang compiler={g++,g++-7},{clang++,clang++-5.0}

Right now I muck with the user-config.jam file to force it one way or the
Perhaps that's still the best way to do it?



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