diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2018-05-03 17:00:51 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2018-05-09 12:33:10 +0000 |
commit | afe5f9701d69e7cdb59a80bd8282d469a74b90ec (patch) | |
tree | 6d3a1a7ccdd510c588b8bf340ce33faeca9ed7a6 | |
parent | 15751999bbfa66015f48bbdde2fea2d4e8fed61a (diff) |
qbs build: Add convenience properties for building statically
So that we can easily test this functionality in the absence of a
statically built Qt.
Change-Id: I9c8f296222bc3155cb95219d4ababfd34e1e7e7b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r-- | qbs-resources/imports/QbsLibrary.qbs | 5 | ||||
-rw-r--r-- | qbs-resources/modules/qbsbuildconfig/qbsbuildconfig.qbs | 1 | ||||
-rw-r--r-- | src/lib/corelib/corelib.qbs | 2 | ||||
-rw-r--r-- | src/plugins/qbsplugin.qbs | 8 |
4 files changed, 9 insertions, 7 deletions
diff --git a/qbs-resources/imports/QbsLibrary.qbs b/qbs-resources/imports/QbsLibrary.qbs index 736025cbb..f8bc70580 100644 --- a/qbs-resources/imports/QbsLibrary.qbs +++ b/qbs-resources/imports/QbsLibrary.qbs @@ -16,11 +16,12 @@ QbsProduct { cpp.soVersion: version.replace(/\.\d+$/, '') } cpp.visibility: "minimal" - property string visibilityType: Qt.core.staticBuild ? "static" : "dynamic" + property string visibilityType: staticBuild ? "static" : "dynamic" property string headerInstallPrefix: "/include/qbs" property bool hasExporter: Utilities.versionCompare(qbs.version, "1.12") >= 0 property bool generateQbsModule: install && qbsbuildconfig.generateQbsModules && hasExporter - property stringList libType: [Qt.core.staticBuild ? "staticlibrary" : "dynamiclibrary"] + property bool staticBuild: Qt.core.staticBuild || qbsbuildconfig.staticBuild + property stringList libType: [staticBuild ? "staticlibrary" : "dynamiclibrary"] Depends { name: "Exporter.qbs"; condition: generateQbsModule } Group { fileTagsFilter: libType.concat("dynamiclibrary_symlink") diff --git a/qbs-resources/modules/qbsbuildconfig/qbsbuildconfig.qbs b/qbs-resources/modules/qbsbuildconfig/qbsbuildconfig.qbs index 8bd3c617a..7f978d47b 100644 --- a/qbs-resources/modules/qbsbuildconfig/qbsbuildconfig.qbs +++ b/qbs-resources/modules/qbsbuildconfig/qbsbuildconfig.qbs @@ -8,6 +8,7 @@ Module { property bool installApiHeaders: true property bool enableBundledQt: true property bool useBundledQtScript: false + property bool staticBuild: false property string libDirName: "lib" property string appInstallDir: "bin" property string libInstallDir: qbs.targetOS.contains("windows") ? "bin" : libDirName diff --git a/src/lib/corelib/corelib.qbs b/src/lib/corelib/corelib.qbs index eff34ab51..ff3fc04b5 100644 --- a/src/lib/corelib/corelib.qbs +++ b/src/lib/corelib/corelib.qbs @@ -15,7 +15,7 @@ QbsLibrary { condition: qbsbuildconfig.useBundledQtScript || !Qt.script.present } Depends { condition: qbsbuildconfig.enableProjectFileUpdates; name: "Qt.gui" } - Depends { condition: Qt.core.staticBuild; productTypes: ["qbsplugin"] } + Depends { condition: staticBuild; productTypes: ["qbsplugin"] } name: "qbscore" cpp.includePaths: base.concat([ ".", diff --git a/src/plugins/qbsplugin.qbs b/src/plugins/qbsplugin.qbs index f6a752dc1..269614e11 100644 --- a/src/plugins/qbsplugin.qbs +++ b/src/plugins/qbsplugin.qbs @@ -3,16 +3,16 @@ import qbs.FileInfo QbsProduct { property bool isForDarwin: qbs.targetOS.contains("darwin") + property bool staticBuild: Qt.core.staticBuild || qbsbuildconfig.staticBuild Depends { name: "cpp" } Depends { name: "bundle"; condition: isForDarwin } Depends { name: "Qt.core" } Depends { name: "qbsbuildconfig" } - Depends { name: "qbscore"; condition: !Qt.core.staticBuild } - type: (Qt.core.staticBuild ? ["staticlibrary"] - : [isForDarwin ? "loadablemodule" : "dynamiclibrary"]) + Depends { name: "qbscore"; condition: !staticBuild } + type: (staticBuild ? ["staticlibrary"] : [isForDarwin ? "loadablemodule" : "dynamiclibrary"]) .concat(["qbsplugin"]) Properties { - condition: Qt.core.staticBuild + condition: staticBuild cpp.defines: ["QBS_STATIC_LIB"] } cpp.includePaths: base.concat(["../../../lib/corelib"]) |