[QBS] ist it possible to have conditional artifacts?

Christian Kandeler christian.kandeler at digia.com
Thu Oct 17 11:21:45 CEST 2013


On 10/16/2013 05:02 PM, Kurt Keller wrote:
> Am Mittwoch, den 16.10.2013
> schrieb Christian Kandeler <christian.kandeler at digia.com>:
>
>> On 10/15/2013 02:58 PM, Kurt Keller wrote:
>>>>>      Rule {
>>>>>        inputs: ['rpcsrc']
>>>>>        Artifact {
>>>>>          condition:
>>>>> product.moduleProperty(product.moduleName,"generateCLNT")
>>>>
>>>> This looks like the right approach. Have you tried it?
>>>
>>> Yes now I have tried it. Qbs alway generates all 4 files. No matter,
>>> how the properties generateSVC, generateCLNT, ... are set.
>>
>> Looking at the qbs sources, it almost seems as if we simply forget to
>> evaluate the condition... Could you apply this patch and check whether
>> it helps?
>> https://codereview.qt-project.org/#change,68361
>
> After applying your patch it works a little bit better. I can now have
> constant or expression-conditions like:
>
>    condition: 1 > 0 ? true : false
>    condition: true
>
> but it can not resolve
>
>    condition: product.moduleProperty(product.moduleName,"propertyName")

Ah yes, the condition needs to be evaluated early on, so this is not 
possible at the moment. Meaning that 
https://bugreports.qt-project.org/browse/QBS-370 is the relevant task 
here after all.


Christian



More information about the Qbs mailing list