Boost logo

Boost :

Subject: Re: [boost] boost.test regression or behavior change (was Re: Boost.lockfree)
From: Raffi Enficiaud (raffi.enficiaud_at_[hidden])
Date: 2015-10-04 14:03:20


Le 04/10/15 19:09, John Maddock a écrit :
>
>
> On 03/10/2015 15:21, Tim Blechmann wrote:
>>> All tests for lockfree in both master and develop branch seem to fail.
>>> Error message is
>>>
>>> "../boost/system/config.hpp", line 34: Error: #error Must not define
>>> both BOOST_SYSTEM_DYN_LINK and BOOST_SYSTEM_STATIC_LINK.
>>>
>>>
>>> See develop branch:
>>> http://www.boost.org/development/tests/develop/developer/lockfree.html
>>>
>>> See master branch:
>>> http://www.boost.org/development/tests/master/developer/lockfree.html
>>>
>>> I looked at lockfree/test/Jamfile.v2 but am not sure what change needs
>>> to be made.
>>>
>>> Any suggestions?
>> boost lockfree's testsuite hasn't changed for a long time. i have no
>> idea why the tests are failing, so something must have changed in
>> boost.test.
>
> Actually this *may* be a Boost.Build issue, test_exec_monitor has as a
> usage requirement:
>
> lib boost_test_exec_monitor
> : # sources
> $(TEST_EXEC_MON_SOURCES).cpp
> : # requirements
> <link>static
> : # default build
> : # usage-requirements
> <link>shared:<define>BOOST_TEST_DYN_LINK=1
> ;
>
>
> And it's that <link>static that's causing the issue, if I build lockfree
> with:
>
> bjam link=static
>
> Then everything is fine. But otherwise there are errors inside
> Boost.System as both BOOST_SYSTEM_STATIC_LINK and BOOST_SYSTEM_DYN_LINK
> are getting defined.
>
> Anyone understand this?
>

We had such an issue with Boost.thread when Boost.Test was using (or
attempted to use) the new timer library, bringing boost.chrono in the
dependency graph. The dependency chain of the final test modules were:

test_module <- boost.thread <- boost.chrono <- boost.system
             <- boost.chrono <- boost.system

The problem raised because those two subchains were using different
compilation options for boost.chrono<-boost.system

Maybe this is related.

Raffi


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