On 2016-09-15 02:57, Oswald Buddenhagen wrote: > On Wed, Sep 14, 2016 at 12:05:15PM +0200, Stephen Kelly via Development wrote: >> I want to understand Qbs and what it can do with a dynamic build graph >> which CMake can't do. > > there is no such thing, as after full expansion the graph has to be > static by definition (the output artifacts are expected to be > deterministic, after all).
I don't think that's actually true; it just has to *halt*. That is, you can execute as many steps as you like that generate new build edges, as long as *at some point* you end up with a static graph. CMake necessarily imposes that you can run exactly one iteration, but I'm not aware of any theoretical reason you couldn't have an entire chain of targets each of which don't know their outputs (which are the inputs of the next in the chain) until you go to actually build them. For that matter, you can do that sort of thing with make, by having each target depend on the previous one, and generate a new Makefile that is used to build the next one. -- Matthew _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development