aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/qtprofilesetup/templates/core.qbs
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/qtprofilesetup/templates/core.qbs')
-rw-r--r--src/lib/qtprofilesetup/templates/core.qbs35
1 files changed, 27 insertions, 8 deletions
diff --git a/src/lib/qtprofilesetup/templates/core.qbs b/src/lib/qtprofilesetup/templates/core.qbs
index aefd9c48d..9dd51bd53 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@
@@ -168,6 +176,17 @@ Module {
validator.addRangeValidator("versionPatch", versionPatch, 0);
validator.validate();
+
+ if (availableBuildVariants.length === 0)
+ throw "The Qt installation supports no build variants.";
+ if (!availableBuildVariants.contains(qtBuildVariant)) {
+ throw "Qt.core.qtBuildVariant '" + qtBuildVariant +
+ "' is not supported by this Qt installation.";
+ }
+ if (qbs.toolchain.contains("msvc") && qtBuildVariant !== qbs.buildVariant) {
+ throw "Qt.core.qtBuildVariant is '" + qtBuildVariant + "', but qbs.buildVariant is '"
+ + qbs.buildVariant + "', which is not allowed when using MSVC.";
+ }
}
setupRunEnvironment: {