aboutsummaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2017-12-15 11:14:54 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2017-12-15 11:14:54 +0100
commita9ac384513cc2c39b2005ee5651c34a49e801641 (patch)
tree830bf2b3bad36fec9b9fa0fa76f9dfa488f22da4 /share
parent126ce8cd2b2c0c10525e23c9900ec25b0bade601 (diff)
parent8815e0007006e996bc145a91970d71b9b4ae86d0 (diff)
Merge 1.10 into master
Diffstat (limited to 'share')
-rw-r--r--share/qbs/modules/Android/ndk/ndk.qbs2
-rw-r--r--share/qbs/modules/cpp/CppModule.qbs2
-rw-r--r--share/qbs/modules/cpp/DarwinGCC.qbs1
-rw-r--r--share/qbs/modules/cpp/GenericGCC.qbs11
-rw-r--r--share/qbs/modules/cpp/LinuxGCC.qbs2
-rw-r--r--share/qbs/modules/cpp/UnixGCC.qbs5
-rw-r--r--share/qbs/modules/cpp/android-gcc.qbs4
-rw-r--r--share/qbs/modules/cpp/genericunix-gcc.qbs36
-rw-r--r--share/qbs/modules/cpp/windows-mingw.qbs1
-rw-r--r--share/qbs/modules/cpp/windows-msvc.qbs3
10 files changed, 24 insertions, 43 deletions
diff --git a/share/qbs/modules/Android/ndk/ndk.qbs b/share/qbs/modules/Android/ndk/ndk.qbs
index 9a47bd6c0..5cd69ade3 100644
--- a/share/qbs/modules/Android/ndk/ndk.qbs
+++ b/share/qbs/modules/Android/ndk/ndk.qbs
@@ -157,6 +157,8 @@ Module {
allowedValues: ["arm", "thumb"]
}
+ property bool haveUnifiedStl: version && Utilities.versionCompare(version, "12") >= 0
+
validate: {
if (!ndkDir) {
throw ModUtils.ModuleError("Could not find an Android NDK at any of the following "
diff --git a/share/qbs/modules/cpp/CppModule.qbs b/share/qbs/modules/cpp/CppModule.qbs
index 2580a0cbe..d636e3bb8 100644
--- a/share/qbs/modules/cpp/CppModule.qbs
+++ b/share/qbs/modules/cpp/CppModule.qbs
@@ -346,6 +346,8 @@ Module {
property stringList targetDriverFlags
property stringList targetLinkerFlags
+ property bool _skipAllChecks: false // Internal, for testing only.
+
// TODO: The following four rules could use a convenience base item if rule properties
// were available in Artifact items and prepare scripts.
Rule {
diff --git a/share/qbs/modules/cpp/DarwinGCC.qbs b/share/qbs/modules/cpp/DarwinGCC.qbs
index f3f9e7ca2..e6a668486 100644
--- a/share/qbs/modules/cpp/DarwinGCC.qbs
+++ b/share/qbs/modules/cpp/DarwinGCC.qbs
@@ -48,6 +48,7 @@ UnixGCC {
Probes.BinaryProbe {
id: lipoProbe
+ condition: !_skipAllChecks
names: [lipoName]
platformPaths: {
var paths = (xcode.present && xcode.devicePlatformPath)
diff --git a/share/qbs/modules/cpp/GenericGCC.qbs b/share/qbs/modules/cpp/GenericGCC.qbs
index 22fb857b9..824bdd18d 100644
--- a/share/qbs/modules/cpp/GenericGCC.qbs
+++ b/share/qbs/modules/cpp/GenericGCC.qbs
@@ -41,11 +41,12 @@ import qbs.WindowsUtils
import 'gcc.js' as Gcc
CppModule {
- condition: false
+ condition: qbs.toolchain && qbs.toolchain.contains("gcc")
+ priority: -100
Probes.BinaryProbe {
id: compilerPathProbe
- condition: !toolchainInstallPath
+ condition: !toolchainInstallPath && !_skipAllChecks
names: [toolchainPrefix ? toolchainPrefix + compilerName : compilerName]
}
@@ -60,6 +61,7 @@ CppModule {
Probes.GccProbe {
id: gccProbe
+ condition: !_skipAllChecks
compilerFilePathByLanguage: compilerPathByLanguage
enableDefinesByLanguage: enableCompilerDefinesByLanguage
environment: buildEnv
@@ -69,7 +71,7 @@ CppModule {
Probes.BinaryProbe {
id: binutilsProbe
- condition: !File.exists(archiverPath)
+ condition: !File.exists(archiverPath) && !_skipAllChecks
names: Gcc.toolNames([archiverName, assemblerName, linkerName, nmName,
objcopyName, stripName], toolchainPrefix)
}
@@ -83,6 +85,7 @@ CppModule {
Probe {
id: nmProbe
+ condition: !_skipAllChecks
property string theNmPath: nmPath
property bool hasDynamicOption
configure: {
@@ -262,6 +265,8 @@ CppModule {
}
validate: {
+ if (_skipAllChecks)
+ return;
if (!File.exists(compilerPath)) {
var pathMessage = FileInfo.isAbsolutePath(compilerPath)
? "at '" + compilerPath + "'"
diff --git a/share/qbs/modules/cpp/LinuxGCC.qbs b/share/qbs/modules/cpp/LinuxGCC.qbs
index 2fc01ef8d..371e519dc 100644
--- a/share/qbs/modules/cpp/LinuxGCC.qbs
+++ b/share/qbs/modules/cpp/LinuxGCC.qbs
@@ -42,7 +42,7 @@ UnixGCC {
Probe {
id: runPathsProbe
- condition: qbs.targetPlatform === qbs.hostPlatform
+ condition: !_skipAllChecks && qbs.targetPlatform === qbs.hostPlatform
property stringList systemRunPaths: []
configure: {
var paths = [];
diff --git a/share/qbs/modules/cpp/UnixGCC.qbs b/share/qbs/modules/cpp/UnixGCC.qbs
index 3a4129d8a..2b4b3b018 100644
--- a/share/qbs/modules/cpp/UnixGCC.qbs
+++ b/share/qbs/modules/cpp/UnixGCC.qbs
@@ -31,7 +31,10 @@
import qbs 1.0
GenericGCC {
- condition: false
+ condition: qbs.toolchain && qbs.toolchain.contains("gcc")
+ && qbs.targetOS && qbs.targetOS.contains("unix")
+ priority: -50
+
staticLibraryPrefix: "lib"
dynamicLibraryPrefix: "lib"
loadableModulePrefix: "lib"
diff --git a/share/qbs/modules/cpp/android-gcc.qbs b/share/qbs/modules/cpp/android-gcc.qbs
index 5c503a306..057e77476 100644
--- a/share/qbs/modules/cpp/android-gcc.qbs
+++ b/share/qbs/modules/cpp/android-gcc.qbs
@@ -72,7 +72,7 @@ LinuxGCC {
property string stlLibsDir: {
if (stlBaseDir) {
var infix = Android.ndk.abi;
- if (Android.ndk.armMode === "thumb")
+ if (Android.ndk.armMode === "thumb" && !Android.ndk.haveUnifiedStl)
infix = FileInfo.joinPaths(infix, "thumb");
return FileInfo.joinPaths(stlBaseDir, "libs", infix);
}
@@ -286,6 +286,8 @@ LinuxGCC {
}
validate: {
+ if (!_skipAllChecks)
+ return;
var baseValidator = new ModUtils.PropertyValidator("qbs");
baseValidator.addCustomValidator("architecture", targetArch, function (value) {
return value !== undefined;
diff --git a/share/qbs/modules/cpp/genericunix-gcc.qbs b/share/qbs/modules/cpp/genericunix-gcc.qbs
deleted file mode 100644
index 5e6a158c6..000000000
--- a/share/qbs/modules/cpp/genericunix-gcc.qbs
+++ /dev/null
@@ -1,36 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2015 The Qt Company Ltd.
-** Contact: http://www.qt.io/licensing
-**
-** This file is part of Qbs.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms and
-** conditions see http://www.qt.io/terms-conditions. For further information
-** use the contact form at http://www.qt.io/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 or version 3 as published by the Free
-** Software Foundation and appearing in the file LICENSE.LGPLv21 and
-** LICENSE.LGPLv3 included in the packaging of this file. Please review the
-** following information to ensure the GNU Lesser General Public License
-** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, The Qt Company gives you certain additional
-** rights. These rights are described in The Qt Company LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import qbs 1.0
-
-UnixGCC {
- condition: qbs.targetOS && qbs.targetOS.contains("unix") &&
- qbs.toolchain && qbs.toolchain.contains('gcc')
-}
diff --git a/share/qbs/modules/cpp/windows-mingw.qbs b/share/qbs/modules/cpp/windows-mingw.qbs
index 7a433c796..65a219c50 100644
--- a/share/qbs/modules/cpp/windows-mingw.qbs
+++ b/share/qbs/modules/cpp/windows-mingw.qbs
@@ -39,6 +39,7 @@ import "setuprunenv.js" as SetupRunEnv
GenericGCC {
condition: qbs.targetOS.contains("windows") &&
qbs.toolchain && qbs.toolchain.contains("mingw")
+ priority: 0
staticLibraryPrefix: "lib"
dynamicLibraryPrefix: ""
executablePrefix: ""
diff --git a/share/qbs/modules/cpp/windows-msvc.qbs b/share/qbs/modules/cpp/windows-msvc.qbs
index 2e6557177..6c000f7ac 100644
--- a/share/qbs/modules/cpp/windows-msvc.qbs
+++ b/share/qbs/modules/cpp/windows-msvc.qbs
@@ -45,12 +45,13 @@ CppModule {
Probes.BinaryProbe {
id: compilerPathProbe
- condition: !toolchainInstallPath
+ condition: !toolchainInstallPath && !_skipAllChecks
names: ["cl"]
}
Probes.MsvcProbe {
id: msvcProbe
+ condition: !_skipAllChecks
compilerFilePath: compilerPath
enableDefinesByLanguage: enableCompilerDefinesByLanguage
preferredArchitecture: qbs.architecture