[Qbs] pre-built products (cont.)

Joerg Bornemann joerg.bornemann at qt.io
Mon Sep 25 09:20:58 CEST 2017


On 24/09/2017 13:53, Christian Gagneraud wrote:

[...]
>> and so on. Or you cram all platforms into one file - as you like.
>>
>> We should have a documentation page covering this use case. I've created
>> QBS-1191 for that.
> 
> Cool, but what (should) happen in case of several
> $projectroot/modules/ThirdParty/lib1/*.qps matches?
> Or none matches, for the matter?

Excellent question. If none matches, the module cannot be loaded. You 
will get an error message. If multiple files (module instances) match, 
then the current situation is that "the first one" wins. That means, it 
is currently important to keep the conditions mutually exclusive.

We got away with this non-design until now, but in 1.10 this will change 
to: multiple matching module instances are an error.
You will also be able to define an order for the instances by setting 
priorities. The matching instance with the highest priority is chosen. 
The exact formulation for the new behavior is: multiple matching module 
instances with the same priority are an error.

See QBS-61 and related patches for more information.


Cheers,

Joerg



More information about the Qbs mailing list