aboutsummaryrefslogtreecommitdiffstats
path: root/qbs/imports/QtcLibrary.qbs
blob: 0738e47c099d72dad83785cb7d8c2e693833ee66 (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
32
33
34
35
import qbs 1.0
import QtcFunctions

QtcProduct {
    type: ["dynamiclibrary", "dynamiclibrary_symlink", "qtc.dev-module"]
    installDir: qtc.ide_library_path
    installTags: ["dynamiclibrary", "dynamiclibrary_symlink"]
    Depends {
        condition: qtc.testsEnabled
        name: "Qt.test"
    }

    targetName: QtcFunctions.qtLibraryName(qbs, name)
    destinationDirectory: qtc.ide_library_path

    cpp.linkerFlags: {
        var flags = base;
        if (qbs.buildVariant == "debug" && qbs.toolchain.contains("msvc"))
            flags.push("/INCREMENTAL:NO"); // Speed up startup time when debugging with cdb
        if (qbs.targetOS.contains("osx"))
            flags.push("-compatibility_version", qtc.qtcreator_compat_version);
        return flags;
    }
    cpp.installNamePrefix: "@rpath"
    cpp.rpaths: qbs.targetOS.contains("osx")
            ? ["@loader_path/../Frameworks"]
            : ["$ORIGIN", "$ORIGIN/.."]
    property string libIncludeBase: ".." // #include <lib/header.h>
    cpp.includePaths: [libIncludeBase]

    Export {
        Depends { name: "cpp" }
        cpp.includePaths: [product.libIncludeBase]
    }
}