aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@qt.io>2017-06-20 10:58:15 -0700
committerJake Petroules <jake.petroules@qt.io>2017-06-21 16:01:53 +0000
commit1913b32bd828c53f6845ed00dae99512e8d81321 (patch)
tree491848a54a45e5d8ce026718605763a9526ea1e4
parente4ea8f3ac7e473c227bc54ea26ae9a6fd3da1675 (diff)
Fix tests with older versions of Apple Clang
Amends and fixes a regression introduced in 4551d11. Change-Id: I8014c8bfb82c389d4ae741f868be45e420e327ca Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r--share/qbs/modules/cpp/DarwinGCC.qbs5
-rw-r--r--share/qbs/modules/cpp/ios-gcc.qbs5
-rw-r--r--share/qbs/modules/cpp/macos-gcc.qbs5
-rw-r--r--tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs4
-rw-r--r--tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs1
-rw-r--r--tests/auto/blackbox/testdata/lexyacc/one-grammar/one-grammar.qbs1
-rw-r--r--tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs3
7 files changed, 22 insertions, 2 deletions
diff --git a/share/qbs/modules/cpp/DarwinGCC.qbs b/share/qbs/modules/cpp/DarwinGCC.qbs
index b985e6862..fd276e554 100644
--- a/share/qbs/modules/cpp/DarwinGCC.qbs
+++ b/share/qbs/modules/cpp/DarwinGCC.qbs
@@ -50,8 +50,7 @@ UnixGCC {
imageFormat: "macho"
compilerDefines: ["__GNUC__=4", "__APPLE__"]
- cxxStandardLibrary: qbs.toolchain.contains("clang") && cxxLanguageVersion !== "c++98"
- ? "libc++" : base
+ cxxStandardLibrary: libcxxAvailable ? "libc++" : base
loadableModulePrefix: ""
loadableModuleSuffix: ".bundle"
dynamicLibrarySuffix: ".dylib"
@@ -179,6 +178,8 @@ UnixGCC {
property string minimumDarwinVersionCompilerFlag
property string minimumDarwinVersionLinkerFlag
+ property bool libcxxAvailable: qbs.toolchain.contains("clang") && cxxLanguageVersion !== "c++98"
+
Rule {
condition: product.aggregate
inputsFromDependencies: ["application"]
diff --git a/share/qbs/modules/cpp/ios-gcc.qbs b/share/qbs/modules/cpp/ios-gcc.qbs
index 8518ca76a..12f3907b6 100644
--- a/share/qbs/modules/cpp/ios-gcc.qbs
+++ b/share/qbs/modules/cpp/ios-gcc.qbs
@@ -33,6 +33,7 @@ import qbs.DarwinTools
import qbs.File
import qbs.FileInfo
import qbs.ModUtils
+import qbs.Utilities
DarwinGCC {
condition: qbs.targetOS.contains('ios') &&
@@ -48,6 +49,10 @@ DarwinGCC {
? "-ios_simulator_version_min"
: "-iphoneos_version_min"
+ libcxxAvailable: base
+ && minimumDarwinVersion
+ && Utilities.versionCompare(minimumDarwinVersion, "5") >= 0
+
platformObjcFlags: base.concat(simulatorObjcFlags)
platformObjcxxFlags: base.concat(simulatorObjcFlags)
diff --git a/share/qbs/modules/cpp/macos-gcc.qbs b/share/qbs/modules/cpp/macos-gcc.qbs
index eb5dc3d41..bb1f79054 100644
--- a/share/qbs/modules/cpp/macos-gcc.qbs
+++ b/share/qbs/modules/cpp/macos-gcc.qbs
@@ -30,6 +30,7 @@
import qbs 1.0
import qbs.ModUtils
+import qbs.Utilities
DarwinGCC {
condition: qbs.targetOS.contains('macos') &&
@@ -40,4 +41,8 @@ DarwinGCC {
minimumDarwinVersion: minimumMacosVersion
minimumDarwinVersionCompilerFlag: "-mmacosx-version-min"
minimumDarwinVersionLinkerFlag: "-macosx_version_min"
+
+ libcxxAvailable: base
+ && minimumDarwinVersion
+ && Utilities.versionCompare(minimumDarwinVersion, "10.7") >= 0
}
diff --git a/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs b/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs
index a974e93e5..f34307bf1 100644
--- a/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs
+++ b/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs
@@ -11,6 +11,7 @@ Project {
targetName: "singleapp"
files: ["app.c"]
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path/../../../"] : []
+ cpp.minimumMacosVersion: "10.5"
// Turn off multiplexing
aggregate: false
@@ -30,6 +31,7 @@ Project {
targetName: "singleapp_agg"
files: ["app.c"]
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path/../../../"] : []
+ cpp.minimumMacosVersion: "10.5"
// Force aggregation when not needed
aggregate: true
@@ -70,6 +72,7 @@ Project {
targetName: "multiapp"
files: ["app.c"]
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path/../../../"] : []
+ cpp.minimumMacosVersion: "10.5"
Group {
fileTagsFilter: ["bundle.content"]
@@ -85,6 +88,7 @@ Project {
targetName: "fatmultiapp"
files: ["app.c"]
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path/../../../"] : []
+ cpp.minimumMacosVersion: "10.5"
qbs.architectures: ["x86", "x86_64"]
Group {
diff --git a/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs b/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
index 93d94c66b..87c0aaa36 100644
--- a/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
+++ b/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
@@ -9,6 +9,7 @@ Project {
files: ["main.m"]
cpp.frameworks: ["Foundation"]
cpp.rpaths: ["@loader_path"]
+ cpp.minimumMacosVersion: "10.5"
bundle.infoPlist: ({
"QBS": "org.qt-project.qbs.testdata.embedInfoPlist"
})
diff --git a/tests/auto/blackbox/testdata/lexyacc/one-grammar/one-grammar.qbs b/tests/auto/blackbox/testdata/lexyacc/one-grammar/one-grammar.qbs
index 2cdf9f3f0..677828906 100644
--- a/tests/auto/blackbox/testdata/lexyacc/one-grammar/one-grammar.qbs
+++ b/tests/auto/blackbox/testdata/lexyacc/one-grammar/one-grammar.qbs
@@ -6,6 +6,7 @@ CppApplication {
lex_yacc.yaccFlags: ["-l"]
cpp.includePaths: ["."]
cpp.cxxLanguageVersion: "c++11"
+ cpp.minimumMacosVersion: "10.7"
consoleApplication: true
files: [
"lexer.l",
diff --git a/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs b/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
index 4770a8290..95adaa4ba 100644
--- a/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
+++ b/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
@@ -28,6 +28,7 @@ Project {
return ["WEAK_IMPORT=", installLib];
}
cpp.cxxLanguageVersion: "c++11"
+ cpp.minimumMacosVersion: "10.5"
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path/../lib"] : ["$ORIGIN/../lib"]
Group {
@@ -46,6 +47,7 @@ Project {
name: "functions"
files: ["lib.cpp"]
cpp.cxxLanguageVersion: "c++11"
+ cpp.minimumMacosVersion: "10.5"
cpp.rpaths: qbs.targetOS.contains("darwin") ? ["@loader_path"] : ["$ORIGIN"]
Properties {
@@ -85,6 +87,7 @@ Project {
name: "indirect"
files: ["indirect.cpp"]
cpp.cxxLanguageVersion: "c++11"
+ cpp.minimumMacosVersion: "10.5"
Properties {
condition: qbs.targetOS.contains("darwin")