app.qbs 2.38 KB
Newer Older
1 2
import qbs

3
QtcProduct {
4 5 6
    Depends { name: "bundle" }
    Depends { name: "ib"; condition: qbs.targetOS.contains("osx") }

7 8 9 10
    Properties {
        condition: qbs.targetOS.contains("osx")
        ib.appIconName: "qtcreator"
    }
11

12 13 14 15 16 17
    Properties {
        condition: qbs.targetOS.contains("windows")
        consoleApplication: qbs.debugInformation
    }
    consoleApplication: false

18
    type: ["application"]
19 20 21
    name: "qtcreator"
    targetName: qtc.ide_app_target
    version: qtc.qtcreator_version
22

23
    installDir: qtc.ide_bin_path
24
    property bool qtcRunnable: true
25

26
    cpp.rpaths: qbs.targetOS.contains("osx") ? ["@executable_path/../Frameworks"]
27
                                             : ["$ORIGIN/../" + qtc.libDirName + "/qtcreator"]
28
    cpp.includePaths: [
29 30
        project.sharedSourcesDir + "/qtsingleapplication",
        project.sharedSourcesDir + "/qtlockedfile",
31 32 33 34 35 36 37 38
    ]

    Depends { name: "app_version_header" }
    Depends { name: "Qt"; submodules: ["widgets", "network"] }
    Depends { name: "Utils" }
    Depends { name: "ExtensionSystem" }

    files: [
39
        "Info.plist",
40
        "main.cpp",
41
        "qtcreator.xcassets",
42 43 44 45 46 47 48 49 50 51 52 53
        "qtcreator.rc",
        "../shared/qtsingleapplication/qtsingleapplication.h",
        "../shared/qtsingleapplication/qtsingleapplication.cpp",
        "../shared/qtsingleapplication/qtlocalpeer.h",
        "../shared/qtsingleapplication/qtlocalpeer.cpp",
        "../shared/qtlockedfile/qtlockedfile.cpp",
        "../tools/qtcreatorcrashhandler/crashhandlersetup.cpp",
        "../tools/qtcreatorcrashhandler/crashhandlersetup.h"
    ]

    Group {
        name: "qtcreator.sh"
Joerg Bornemann's avatar
Joerg Bornemann committed
54
        condition: qbs.targetOS.contains("unix") && !qbs.targetOS.contains("osx")
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
        files: "../../bin/qtcreator.sh"
        qbs.install: true
        qbs.installDir: "bin"
    }

    Group {
        name: "QtLockedFile_unix"
        condition: qbs.targetOS.contains("unix")
        files: [
            "../shared/qtlockedfile/qtlockedfile_unix.cpp"
        ]
    }

    Group {
        name: "QtLockedFile_win"
        condition: qbs.targetOS.contains("windows")
        files: [
            "../shared/qtlockedfile/qtlockedfile_win.cpp"
        ]
    }

    Group {
77
        condition: qbs.targetOS.contains("osx")
Eike Ziller's avatar
Eike Ziller committed
78
        fileTagsFilter: ["aggregate_infoplist", "pkginfo", "compiled_assetcatalog"]
79
        qbs.install: true
80
        qbs.installSourceBase: product.buildDirectory
81 82
    }
}