[QBS] What is the suggested way to do deeply nested projects?

Joerg Bornemann joerg.bornemann at digia.com
Wed Aug 13 11:25:35 CEST 2014


On 09-Aug-14 23:12, Erik Schilling wrote:

> Currently qbs does not allow DynamicLibraries with more than one ".".

That's not quite right. Creating dynamic libs with more than one "." in 
their targetName is definitely possible.

> Now what is the suggested way to build a structure like:
>
>          +"Toplevel"
>          +-+"SecondLevel"
>          | +--"ThirdLevel"
>          ...
>
> Toplevel.SecondLevel.ThirdLevel does not work since that has two "." and
> hence triggers the said error when mentioning it in a Depends {} tag.

Product.name is the identifier that's used for referencing the product 
in a Depends item. This one cannot contain more than one dot, and it 
shouldn't contain any dot, actually.
Use Product.targetName to set the base name of the produced dynamic lib.

DynamicLibrary {
     name : "one_two_three"
     targetName: "one.two.three"
}

Application {
     Depends { name : "one_two_three" }
     name: "myapp"
}


BR,

Joerg



More information about the Qbs mailing list