On Fri, 16 Jun 2017 09:14:30 +0200
Christian Gudrian <[email protected]> wrote:
> We're using a Module to define a code generation rule. This module
> however depends on a code generation tool which itself is part of the
> project.
>
> With Qbs 1.8.1 we're facing a race condition: Qbs executes the code
> generation step before the generator has been built. Both the generator
> product and the code generation module are already dependencies of the
> products which need code generation.
Versions before 1.8 were building all artifacts of dependencies before any
artifacts of the depending product. This was not intended and arguably a bug,
because it inhibited parallelization. Now we strictly go by what the rules
declare.
> How can we defer code generation until the generator has been built?
Your code generation rule probably needs to look like this:
Rule {
// ...
inputsFromDependencies: ["application"]
// ...
}
Note that you can then refer to the generator executable via
inputs.application[0].filePath, rather than hardocding the location, as you are
presumably doing now.
Christian
_______________________________________________
Qbs mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/qbs