[QBS] Transformer -> Rule

arturo castro me at arturocastro.net
Fri Sep 9 11:15:53 CEST 2016


I have a qbs project file that compiles an external library using a
Transformer. it looks something like:


    Transformer {
        condition: qbs.buildVariant.contains('debug')
        inputs: files
        Artifact {
             filePath: Helpers.normalize(product.libDir +
             fileTags: "staticlibrary"
        prepare: {          
            var qbsCmd = new Command("make", ['Debug', '-j4']);
            qbsCmd.description = "building openFrameworks library";
            qbsCmd.workingDirectory = product.projectDir;
            qbsCmd.silent = false;
            qbsCmd.highlight = 'compiler';
            return [qbsCmd];

my applications projects depend on it using:

            name: "openFrameworks"

with the transformer the applications have a dependency with the library
and link to it

i'm trying to change the Transformer into a Rule since qbs tells me it's
going to be deprecated but if i just change Transformer with Rule the
dependency in the applications doesn't work anymore, the library is not
even compiled and not linked. is there something i need to add?


More information about the Qbs mailing list