aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/qtprofilesetup/templates
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2014-10-10 18:03:21 +0200
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-10-10 18:03:21 +0200
commitf6d6fa5f0d9ae74ec146d702b054d610bbde1101 (patch)
tree42f376ab8457fbffda8020eeb15d95352077afcc /src/lib/qtprofilesetup/templates
parent55674b37aa0f574cc53454743e83cdbfed4e9941 (diff)
parent8f79bb3b8cc9cde18b6c7f1843494cc23fa524e5 (diff)
Merge remote-tracking branch 'origin/1.3'
Conflicts: share/qbs/modules/cpp/GenericGCC.qbs src/app/qbs-setup-toolchains/probe.cpp src/lib/corelib/buildgraph/buildgraph.cpp src/lib/corelib/language/language.cpp src/lib/corelib/language/language.h tests/auto/api/tst_api.cpp tests/auto/blackbox/tst_blackbox.cpp tests/auto/blackbox/tst_blackbox.h Change-Id: Ie337cd6b55ec1de4f906cb8311959eeb7bc6d686
Diffstat (limited to 'src/lib/qtprofilesetup/templates')
-rw-r--r--src/lib/qtprofilesetup/templates/QtModule.qbs14
-rw-r--r--src/lib/qtprofilesetup/templates/core.qbs37
2 files changed, 36 insertions, 15 deletions
diff --git a/src/lib/qtprofilesetup/templates/QtModule.qbs b/src/lib/qtprofilesetup/templates/QtModule.qbs
index 6c088555d..159568bca 100644
--- a/src/lib/qtprofilesetup/templates/QtModule.qbs
+++ b/src/lib/qtprofilesetup/templates/QtModule.qbs
@@ -12,11 +12,11 @@ Module {
property string qtLibInfix: Qt.core.libInfix
property string libNameForLinkerDebug
property string libNameForLinkerRelease
- property string libNameForLinker: qbs.buildVariant === "debug"
+ property string libNameForLinker: Qt.core.qtBuildVariant === "debug"
? libNameForLinkerDebug : libNameForLinkerRelease
property string libFilePathDebug
property string libFilePathRelease
- property string libFilePath: qbs.buildVariant === "debug"
+ property string libFilePath: Qt.core.qtBuildVariant === "debug"
? libFilePathDebug : libFilePathRelease
property string qtVersion: Qt.core.version
property bool hasLibrary: true
@@ -29,19 +29,19 @@ Module {
property stringList dynamicLibsRelease
property stringList linkerFlagsDebug
property stringList linkerFlagsRelease
- property stringList staticLibs: qbs.buildVariant === "debug"
+ property stringList staticLibs: Qt.core.qtBuildVariant === "debug"
? staticLibsDebug : staticLibsRelease
- property stringList dynamicLibs: qbs.buildVariant === "debug"
+ property stringList dynamicLibs: Qt.core.qtBuildVariant === "debug"
? dynamicLibsDebug : dynamicLibsRelease
property stringList frameworksDebug
property stringList frameworksRelease
property stringList frameworkPathsDebug
property stringList frameworkPathsRelease
- property stringList mFrameworks: qbs.buildVariant === "debug"
+ property stringList mFrameworks: Qt.core.qtBuildVariant === "debug"
? frameworksDebug : frameworksRelease
- property stringList mFrameworkPaths: qbs.buildVariant === "debug"
+ property stringList mFrameworkPaths: Qt.core.qtBuildVariant === "debug"
? frameworkPathsDebug: frameworkPathsRelease
- cpp.linkerFlags: qbs.buildVariant === "debug"
+ cpp.linkerFlags: Qt.core.qtBuildVariant === "debug"
? linkerFlagsDebug : linkerFlagsRelease
Properties {
diff --git a/src/lib/qtprofilesetup/templates/core.qbs b/src/lib/qtprofilesetup/templates/core.qbs
index 2804c32a2..c6ecd0988 100644
--- a/src/lib/qtprofilesetup/templates/core.qbs
+++ b/src/lib/qtprofilesetup/templates/core.qbs
@@ -30,34 +30,42 @@ Module {
property int versionPatch: versionParts[2]
property bool frameworkBuild
property bool staticBuild
- property stringList buildVariant
+
+ property stringList availableBuildVariants
+ property stringList buildVariant // TODO: Remove in 1.5
+ property string qtBuildVariant: {
+ if (availableBuildVariants.contains(qbs.buildVariant))
+ return qbs.buildVariant;
+ return availableBuildVariants.length > 0 ? availableBuildVariants[0] : "";
+ }
+
property stringList staticLibsDebug: @staticLibsDebug@
property stringList staticLibsRelease: @staticLibsRelease@
property stringList dynamicLibsDebug: @dynamicLibsDebug@
property stringList dynamicLibsRelease: @dynamicLibsRelease@
- property stringList staticLibs: qbs.buildVariant === "debug"
+ property stringList staticLibs: qtBuildVariant === "debug"
? staticLibsDebug : staticLibsRelease
- property stringList dynamicLibs: qbs.buildVariant === "debug"
+ property stringList dynamicLibs: qtBuildVariant === "debug"
? dynamicLibsDebug : dynamicLibsRelease
property stringList linkerFlagsDebug: @linkerFlagsDebug@
property stringList linkerFlagsRelease: @linkerFlagsRelease@
- property stringList coreLinkerFlags: qbs.buildVariant === "debug"
+ property stringList coreLinkerFlags: qtBuildVariant === "debug"
? linkerFlagsDebug : linkerFlagsRelease
property stringList frameworksDebug: @frameworksDebug@
property stringList frameworksRelease: @frameworksRelease@
- property stringList coreFrameworks: qbs.buildVariant === "debug"
+ property stringList coreFrameworks: qtBuildVariant === "debug"
? frameworksDebug : frameworksRelease
property stringList frameworkPathsDebug: @frameworkPathsDebug@
property stringList frameworkPathsRelease: @frameworkPathsRelease@
- property stringList coreFrameworkPaths: qbs.buildVariant === "debug"
+ property stringList coreFrameworkPaths: qtBuildVariant === "debug"
? frameworkPathsDebug : frameworkPathsRelease
property string libNameForLinkerDebug: @libNameForLinkerDebug@
property string libNameForLinkerRelease: @libNameForLinkerRelease@
- property string libNameForLinker: qbs.buildVariant === "debug"
+ property string libNameForLinker: qtBuildVariant === "debug"
? libNameForLinkerDebug : libNameForLinkerRelease
property string libFilePathDebug: @libFilePathDebug@
property string libFilePathRelease: @libFilePathRelease@
- property string libFilePath: qbs.buildVariant === "debug"
+ property string libFilePath: qtBuildVariant === "debug"
? libFilePathDebug : libFilePathRelease
coreLibPaths: @libraryPaths@
@@ -164,6 +172,19 @@ Module {
validator.addRangeValidator("versionMinor", versionMinor, 0);
validator.addRangeValidator("versionPatch", versionPatch, 0);
+ validator.addCustomValidator("availableBuildVariants", availableBuildVariants, function (v) {
+ return v.length > 0;
+ }, "the Qt installation supports no build variants");
+
+ validator.addCustomValidator("qtBuildVariant", qtBuildVariant, function (variant) {
+ return availableBuildVariants.contains(variant);
+ }, "'" + qtBuildVariant + "' is not supported by this Qt installation");
+
+ validator.addCustomValidator("qtBuildVariant", qtBuildVariant, function (variant) {
+ return variant === qbs.buildVariant || !qbs.toolchain.contains("msvc");
+ }, " is '" + qtBuildVariant + "', but qbs.buildVariant is '" + qbs.buildVariant
+ + "', which is not allowed when using MSVC");
+
validator.validate();
}