qbsprojectmanager.qbs 3.1 KB
Newer Older
Tobias Hunger's avatar
Tobias Hunger committed
1
import qbs.base 1.0
2
import qbs.FileInfo
Tobias Hunger's avatar
Tobias Hunger committed
3

4
import QtcPlugin
Tobias Hunger's avatar
Tobias Hunger committed
5 6 7 8

QtcPlugin {
    name: "QbsProjectManager"

9 10 11 12 13 14
    property var externalQbsIncludes: project.useExternalQbs
            ? [project.qbs_install_dir + "/include/qbs"] : []
    property var externalQbsLibraryPaths: project.useExternalQbs
            ? [project.qbs_install_dir + "/lib"] : []
    property var externalQbsRPaths: project.useExternalQbs
            ? [project.qbs_install_dir + "/lib"] : []
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
    property var externalQbsDynamicLibraries: {
        var libs = []
        if (!project.useExternalQbs)
            return libs;
        if (qbs.targetOS.contains("windows")) {
            libs.push("shell32")
            if (qbs.enableDebugCode)
                libs.push("qbscored")
            else
                libs.push("qbscore")
        } else {
            libs.push("qbscore")
        }
        return libs
    }
Tobias Hunger's avatar
Tobias Hunger committed
30

31
    condition: project.buildQbsProjectManager
Tobias Hunger's avatar
Tobias Hunger committed
32 33 34 35 36 37 38 39

    Depends { name: "Qt"; submodules: [ "widgets", "script" ] }
    Depends { name: "ProjectExplorer" }
    Depends { name: "Core" }
    Depends { name: "CppTools" }
    Depends { name: "TextEditor" }
    Depends { name: "QtSupport" }
    Depends { name: "QmlJS" }
40
    Depends { name: "QmlJSTools" }
41 42 43 44
    Depends {
        name: "qbscore"
        condition: project.qbsSubModuleExists && !project.useExternalQbs
    }
Tobias Hunger's avatar
Tobias Hunger committed
45 46

    cpp.defines: base.concat([
47 48
        'QML_BUILD_STATIC_LIB',
        'QBS_INSTALL_DIR="'
49 50 51
                + (project.useExternalQbs
                       ? FileInfo.fromWindowsSeparators(project.qbs_install_dir)
                       : '')
52 53
                + '"'
    ])
54 55 56 57
    cpp.includePaths: base.concat(externalQbsIncludes)
    cpp.libraryPaths: base.concat(externalQbsLibraryPaths)
    cpp.rpaths: base.concat(externalQbsRPaths)
    cpp.dynamicLibraries: base.concat(externalQbsDynamicLibraries)
Tobias Hunger's avatar
Tobias Hunger committed
58 59

    files: [
60
        "qbsprojectmanager.qrc",
Tobias Hunger's avatar
Tobias Hunger committed
61 62
        "defaultpropertyprovider.cpp",
        "defaultpropertyprovider.h",
63
        "propertyprovider.h",
Tobias Hunger's avatar
Tobias Hunger committed
64 65 66 67
        "qbsbuildconfiguration.cpp",
        "qbsbuildconfiguration.h",
        "qbsbuildconfigurationwidget.cpp",
        "qbsbuildconfigurationwidget.h",
68
        "qbsbuildinfo.h",
Tobias Hunger's avatar
Tobias Hunger committed
69 70 71 72 73 74
        "qbsbuildstep.cpp",
        "qbsbuildstep.h",
        "qbsbuildstepconfigwidget.ui",
        "qbscleanstep.cpp",
        "qbscleanstep.h",
        "qbscleanstepconfigwidget.ui",
75 76
        "qbsdeployconfigurationfactory.cpp",
        "qbsdeployconfigurationfactory.h",
Tobias Hunger's avatar
Tobias Hunger committed
77 78 79
        "qbsinstallstep.cpp",
        "qbsinstallstep.h",
        "qbsinstallstepconfigwidget.ui",
Tobias Hunger's avatar
Tobias Hunger committed
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
        "qbslogsink.cpp",
        "qbslogsink.h",
        "qbsnodes.cpp",
        "qbsnodes.h",
        "qbsparser.cpp",
        "qbsparser.h",
        "qbsproject.cpp",
        "qbsproject.h",
        "qbsprojectfile.cpp",
        "qbsprojectfile.h",
        "qbsprojectmanager.cpp",
        "qbsprojectmanager.h",
        "qbsprojectmanager_global.h",
        "qbsprojectmanagerconstants.h",
        "qbsprojectmanagerplugin.cpp",
        "qbsprojectmanagerplugin.h",
96 97
        "qbspropertylineedit.cpp",
        "qbspropertylineedit.h",
Tobias Hunger's avatar
Tobias Hunger committed
98
        "qbsrunconfiguration.cpp",
Tobias Hunger's avatar
Tobias Hunger committed
99
        "qbsrunconfiguration.h"
Tobias Hunger's avatar
Tobias Hunger committed
100 101 102
    ]
}