Subject: Re: [Boost-build] Dependencies dropped during concurrent builds
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2013-10-30 13:43:17
On 10/29/2013 11:56 AM, Nogradi, Chris wrote:
> On Monday, October 28, 2013 5:15 PM, Steven Watanabe wrote:
>> I'm working on a fix now.
> Thanks! I had worked around this issue a few months ago in another area but it is becoming difficult to patch every instance that is popping up.
Please try the attached patch. I'm working on some
more test cases.
For the record, the problem was that when an action
updates multiple targets, the build engine skips the
action when building the second and subsequent targets.
(i.e. it only runs the action once). This causes a
problem for parallel builds, because now the build
engine can consider these targets to be updated before
the action is run. A workaround was added to make
all targets produced by the same action INCLUDE
each other. This means that dependent targets won't
be updated until all the targets produced by the
action have been updated. This fixed everything
except rescanning generated sources/headers for
#includes, which is the problem that you encountered.
(Note: This problem may or may not manifest in earlier
versions of Boost.Build. A while back, I removed some
unnecessary rescanning which could have hidden this
problem in many cases.)
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk