aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/blackbox/testdata/module-providers/module-providers/mygenerator/provider.qbs
blob: dae02c03abbd5d85243806561f2b7b029ea9d2f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import qbs.File;
import qbs.FileInfo;
import qbs.TextFile;

ModuleProvider {
    property string chooseLettersFrom
    relativeSearchPaths: {
        console.info("Running setup script for " + name);
        var startAtBeginning = chooseLettersFrom === "beginning";
        var moduleBaseDir = FileInfo.joinPaths(outputBaseDir, "modules", "mygenerator");
        var module1Dir = FileInfo.joinPaths(moduleBaseDir, "module1");
        File.makePath(module1Dir);
        var module1 = new TextFile(FileInfo.joinPaths(module1Dir, "module1.qbs"), TextFile.WriteOnly);
        module1.writeLine("Module {");
        module1.writeLine("    Depends { name: 'cpp' }");
        module1.writeLine("    cpp.defines: 'LETTER1=" + (startAtBeginning ? "\\\'A\\\'" : "\\\'Z\\\'")
                          + "'");
        module1.writeLine("}");
        module1.close();
        var module2Dir = FileInfo.joinPaths(moduleBaseDir, "module2");
        File.makePath(module2Dir);
        var module2 = new TextFile(FileInfo.joinPaths(module2Dir, "module2.qbs"), TextFile.WriteOnly);
        module2.writeLine("Module {");
        module2.writeLine("    Depends { name: 'cpp' }");
        module2.writeLine("    cpp.defines: 'LETTER2=" + (startAtBeginning ? "\\\'B\\\'" : "\\\'Y\\\'")
                          + "'");
        module2.writeLine("}");
        module2.close();
        return "";
    }
}