Boost logo

Boost-Build :

Subject: [Boost-build] question(s) about bjam code II
From: Stefan Seefeld (stefan_at_[hidden])
Date: 2017-10-20 04:34:22


Hi Steven,

I have been following your advice and tried to merge the "make0()"
function call to compute a target's fate into the state machine
implemented in make1.c, to support a more dynamic build process. In
general this is working great (i.e. I can now freely mix config-like
targets that compute parameters that are later used in the build, with
other targets). However, there is one set of use-cases that's still
causing me some headache: actions that update more than one target, i.e.
that require other targets to be "rebuilt".

While I understand the situation (as well as the implementation with
"force_rebuilds()") well, I'm still struggling with some of the code:

Why is the loop in
https://github.com/boostorg/build/blob/develop/src/engine/make1.c#L1220-L1227
launching all the targets that are to be updated by the current command,
and then letting that command wait for them to be ready ? (I see the
corresponding "unlock" code is
https://github.com/boostorg/build/blob/develop/src/engine/make1.c#L939-L948,
but I don't quite understand that part of the workflow.)

Many thanks for your help,

Stefan

-- 
      ...ich hab' noch einen Koffer in Berlin...
    



signature.png

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