aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/blackbox/testdata-android/multiple-apks-per-project/product1/product1.qbs4
-rw-r--r--tests/auto/blackbox/testdata-android/multiple-apks-per-project/product2/product2.qbs1
-rw-r--r--tests/auto/blackbox/testdata-android/multiple-libs-per-apk/multiple-libs-per-apk.qbs2
-rw-r--r--tests/auto/blackbox/testdata-android/teapot/teapot.qbs4
-rw-r--r--tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs26
-rw-r--r--tests/auto/blackbox/testdata-apple/deploymentTarget/deployment.qbs2
-rw-r--r--tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs2
-rw-r--r--tests/auto/blackbox/testdata/dynamic-library-in-module/Dll.qbs2
-rw-r--r--tests/auto/blackbox/testdata/dynamic-library-in-module/theapp.qbs2
-rw-r--r--tests/auto/blackbox/testdata/minimumSystemVersion/macappstore.qbs2
-rw-r--r--tests/auto/blackbox/testdata/minimumSystemVersion/specific.qbs2
-rw-r--r--tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs6
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp8
-rw-r--r--tests/auto/blackbox/tst_blackboxandroid.cpp16
-rw-r--r--tests/auto/blackbox/tst_blackboxapple.cpp22
-rw-r--r--tests/auto/language/testdata/inherited-properties-items/imports/DebugName.qbs6
-rw-r--r--tests/auto/language/testdata/inherited-properties-items/imports/ReleaseName.qbs6
-rw-r--r--tests/auto/language/testdata/inherited-properties-items/inherited-properties-items-product.qbs7
-rw-r--r--tests/auto/language/testdata/inherited-properties-items/inherited-properties-items.qbs6
-rw-r--r--tests/auto/language/tst_language.cpp31
-rw-r--r--tests/auto/language/tst_language.h2
21 files changed, 120 insertions, 39 deletions
diff --git a/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product1/product1.qbs b/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product1/product1.qbs
index 5d2978f7e..c4a78a30b 100644
--- a/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product1/product1.qbs
+++ b/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product1/product1.qbs
@@ -5,8 +5,9 @@ Project {
name: "p1lib1"
files: ["src/main/jni/lib1.cpp"]
qbs.targetPlatform: "android"
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "stlport_shared"
- qbs.architectures: !qbs.architecture ? ["mips", "x86"] : undefined
+ qbs.architectures: !qbs.architecture ? ["armv7a", "x86"] : undefined
cpp.useRPaths: false
}
@@ -16,6 +17,7 @@ Project {
name: "p1lib2"
files: ["src/main/jni/lib2.cpp"]
qbs.targetPlatform: "android"
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "stlport_shared"
cpp.useRPaths: false
}
diff --git a/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product2/product2.qbs b/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product2/product2.qbs
index 63065883b..9be70dcda 100644
--- a/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product2/product2.qbs
+++ b/tests/auto/blackbox/testdata-android/multiple-apks-per-project/product2/product2.qbs
@@ -13,6 +13,7 @@ Project {
name: "p2lib2"
files: ["src/main/jni/lib2.cpp"]
qbs.targetPlatform: "android"
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "stlport_shared"
}
diff --git a/tests/auto/blackbox/testdata-android/multiple-libs-per-apk/multiple-libs-per-apk.qbs b/tests/auto/blackbox/testdata-android/multiple-libs-per-apk/multiple-libs-per-apk.qbs
index 2aafd5861..8b9ded211 100644
--- a/tests/auto/blackbox/testdata-android/multiple-libs-per-apk/multiple-libs-per-apk.qbs
+++ b/tests/auto/blackbox/testdata-android/multiple-libs-per-apk/multiple-libs-per-apk.qbs
@@ -5,6 +5,7 @@ Project {
name: "lib1"
files: ["src/main/jni/lib1.cpp"]
qbs.targetPlatform: "android"
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "stlport_shared"
cpp.useRPaths: false
}
@@ -15,6 +16,7 @@ Project {
name: "lib2"
files: ["src/main/jni/lib2.cpp"]
qbs.targetPlatform: "android"
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "stlport_shared"
cpp.useRPaths: false
}
diff --git a/tests/auto/blackbox/testdata-android/teapot/teapot.qbs b/tests/auto/blackbox/testdata-android/teapot/teapot.qbs
index 69e06a032..2b5cb8aba 100644
--- a/tests/auto/blackbox/testdata-android/teapot/teapot.qbs
+++ b/tests/auto/blackbox/testdata-android/teapot/teapot.qbs
@@ -5,6 +5,7 @@ Project {
StaticLibrary {
name: "native-glue"
qbs.targetPlatform: "android"
+ cpp.warningLevel: "none"
Depends { name: "cpp" }
Group {
id: glue_sources
@@ -22,6 +23,7 @@ Project {
StaticLibrary {
name: "ndk-helper"
qbs.targetPlatform: "android"
+ cpp.warningLevel: "none"
Depends { name: "Android.ndk" }
Depends { name: "cpp" }
Depends { name: "native-glue" }
@@ -49,6 +51,7 @@ Project {
files: ["*.cpp", "*.h"].concat(
!File.exists(ndkHelperProbe.dir + "/gl3stub.cpp") ? ["gl3stub.c"] : [])
}
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "gnustl_shared"
cpp.cxxLanguageVersion: "c++11"
@@ -133,6 +136,7 @@ Project {
Android.sdk.apkBaseName: name
Android.sdk.packageName: "com.sample.teapot"
Android.sdk.sourceSetDir: teapotProbe.dir
+ Properties { condition: qbs.toolchain.contains("clang"); Android.ndk.appStl: "c++_shared" }
Android.ndk.appStl: "gnustl_shared"
cpp.cxxLanguageVersion: "c++11"
cpp.dynamicLibraries: ["log", "android", "EGL", "GLESv2"]
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 289678dfc..6dca8ffd3 100644
--- a/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs
+++ b/tests/auto/blackbox/testdata-apple/apple-multiconfig/apple-multiconfig.qbs
@@ -2,6 +2,7 @@ import qbs.Utilities
Project {
minimumQbsVersion: "1.8"
+ property bool enableX86
CppApplication {
Depends { name: "singlelib" }
@@ -10,7 +11,7 @@ Project {
targetName: "singleapp"
files: ["app.c"]
cpp.rpaths: [cpp.rpathOrigin + "/../../../"]
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.6"
// Turn off multiplexing
aggregate: false
@@ -27,7 +28,7 @@ Project {
targetName: "singleapp_agg"
files: ["app.c"]
cpp.rpaths: [cpp.rpathOrigin + "/../../../"]
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.6"
// Force aggregation when not needed
aggregate: true
@@ -62,7 +63,7 @@ Project {
targetName: "multiapp"
files: ["app.c"]
cpp.rpaths: [cpp.rpathOrigin + "/../../../"]
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.6"
install: true
installDir: ""
@@ -75,8 +76,11 @@ Project {
targetName: "fatmultiapp"
files: ["app.c"]
cpp.rpaths: [cpp.rpathOrigin + "/../../../"]
- cpp.minimumMacosVersion: "10.5"
- qbs.architectures: ["x86", "x86_64"]
+ cpp.minimumMacosVersion: "10.6"
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
+ qbs.architecture: "x86_64"
+ multiplexByQbsProperties: project.enableX86 ? ["architectures", "buildVariants"]
+ : ["buildVariants"]
install: true
installDir: ""
@@ -89,8 +93,8 @@ Project {
targetName: "fatmultiappmultivariant"
files: ["app.c"]
cpp.rpaths: [cpp.rpathOrigin + "/../../../"]
- cpp.minimumMacosVersion: "10.5"
- qbs.architectures: ["x86", "x86_64"]
+ cpp.minimumMacosVersion: "10.6"
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
qbs.buildVariants: ["debug", "profile"]
install: true
@@ -105,7 +109,7 @@ Project {
files: ["lib.c"]
cpp.sonamePrefix: qbs.targetOS.contains("darwin") ? "@rpath" : undefined
cpp.defines: ["VARIANT=" + Utilities.cStringQuote(qbs.buildVariant)]
- qbs.architectures: ["x86", "x86_64"]
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
qbs.buildVariants: ["release", "debug", "profile"]
install: true
@@ -120,7 +124,7 @@ Project {
files: ["lib.c"]
cpp.sonamePrefix: qbs.targetOS.contains("darwin") ? "@rpath" : undefined
cpp.defines: ["VARIANT=" + Utilities.cStringQuote(qbs.buildVariant)]
- qbs.architectures: ["x86", "x86_64"]
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
qbs.buildVariants: ["debug", "profile"]
install: true
@@ -135,7 +139,7 @@ Project {
files: ["lib.c"]
cpp.sonamePrefix: "@rpath"
cpp.defines: ["VARIANT=" + Utilities.cStringQuote(qbs.buildVariant)]
- qbs.architectures: ["x86", "x86_64"]
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
qbs.buildVariants: ["debug", "profile"]
install: true
installDir: ""
@@ -147,7 +151,7 @@ Project {
files: ["lib.c"]
cpp.sonamePrefix: "@rpath"
cpp.defines: ["VARIANT=" + Utilities.cStringQuote(qbs.buildVariant)]
- qbs.architectures: ["x86", "x86_64"]
+ qbs.architectures: project.enableX86 ? ["x86", "x86_64"] : ["x86_64"]
qbs.buildVariants: ["debug", "profile"]
install: true
installDir: ""
diff --git a/tests/auto/blackbox/testdata-apple/deploymentTarget/deployment.qbs b/tests/auto/blackbox/testdata-apple/deploymentTarget/deployment.qbs
index 9f1a466df..9eff57b60 100644
--- a/tests/auto/blackbox/testdata-apple/deploymentTarget/deployment.qbs
+++ b/tests/auto/blackbox/testdata-apple/deploymentTarget/deployment.qbs
@@ -4,7 +4,7 @@ CppApplication {
// Minimum deployment targets that:
// - will actually link (as of Xcode 8.1)
// - exist for the given architecture(s)
- cpp.minimumMacosVersion: qbs.architecture === "x86_64h" ? "10.12" : "10.4"
+ cpp.minimumMacosVersion: qbs.architecture === "x86_64h" ? "10.12" : "10.6"
cpp.minimumIosVersion: ["armv7s", "arm64", "x86_64"].contains(qbs.architecture) ? "7.0" : "6.0"
cpp.minimumTvosVersion: "9.0"
cpp.minimumWatchosVersion: "2.0"
diff --git a/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs b/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
index ba36d134c..ba23dc32c 100644
--- a/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
+++ b/tests/auto/blackbox/testdata-apple/embedInfoPlist/embedInfoPlist.qbs
@@ -7,7 +7,7 @@ Project {
files: ["main.m"]
cpp.frameworks: ["Foundation"]
cpp.rpaths: [cpp.rpathOrigin]
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.6"
bundle.infoPlist: ({
"QBS": "org.qt-project.qbs.testdata.embedInfoPlist"
})
diff --git a/tests/auto/blackbox/testdata/dynamic-library-in-module/Dll.qbs b/tests/auto/blackbox/testdata/dynamic-library-in-module/Dll.qbs
index b3d901389..1acf606dc 100644
--- a/tests/auto/blackbox/testdata/dynamic-library-in-module/Dll.qbs
+++ b/tests/auto/blackbox/testdata/dynamic-library-in-module/Dll.qbs
@@ -4,7 +4,7 @@ DynamicLibrary {
Properties {
condition: qbs.targetOS.contains("darwin")
bundle.isBundle: false
- cpp.minimumMacosVersion: "10.5" // For -rpath
+ cpp.minimumMacosVersion: "10.7" // For -rpath
}
install: true
diff --git a/tests/auto/blackbox/testdata/dynamic-library-in-module/theapp.qbs b/tests/auto/blackbox/testdata/dynamic-library-in-module/theapp.qbs
index 0be9a2fd4..b9149d091 100644
--- a/tests/auto/blackbox/testdata/dynamic-library-in-module/theapp.qbs
+++ b/tests/auto/blackbox/testdata/dynamic-library-in-module/theapp.qbs
@@ -1,7 +1,7 @@
Project {
CppApplication {
name: "theapp"
- cpp.minimumMacosVersion: "10.5" // For -rpath
+ cpp.minimumMacosVersion: "10.7" // For -rpath
Depends { name: "theotherlib" }
Depends { name: "thethirdlib" }
Depends { name: "thefourthlib" }
diff --git a/tests/auto/blackbox/testdata/minimumSystemVersion/macappstore.qbs b/tests/auto/blackbox/testdata/minimumSystemVersion/macappstore.qbs
index 400bc9397..8440da779 100644
--- a/tests/auto/blackbox/testdata/minimumSystemVersion/macappstore.qbs
+++ b/tests/auto/blackbox/testdata/minimumSystemVersion/macappstore.qbs
@@ -6,5 +6,5 @@ CppApplication {
files: ["main.mm"]
consoleApplication: true
cpp.frameworks: "Foundation"
- cpp.minimumMacosVersion: "10.6.8"
+ cpp.minimumMacosVersion: "10.7.1"
}
diff --git a/tests/auto/blackbox/testdata/minimumSystemVersion/specific.qbs b/tests/auto/blackbox/testdata/minimumSystemVersion/specific.qbs
index b0b7a7a9b..f6ecab418 100644
--- a/tests/auto/blackbox/testdata/minimumSystemVersion/specific.qbs
+++ b/tests/auto/blackbox/testdata/minimumSystemVersion/specific.qbs
@@ -20,6 +20,6 @@ CppApplication {
Properties {
condition: qbs.targetOS.contains("macos")
cpp.frameworks: "Foundation"
- cpp.minimumMacosVersion: "10.6"
+ cpp.minimumMacosVersion: "10.7"
}
}
diff --git a/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs b/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
index b2df70033..2d3d64b00 100644
--- a/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
+++ b/tests/auto/blackbox/testdata/symbolLinkMode/symbolLinkMode.qbs
@@ -27,7 +27,7 @@ Project {
return ["WEAK_IMPORT=", installLib];
}
cpp.cxxLanguageVersion: "c++11"
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.7"
cpp.rpaths: [cpp.rpathOrigin + "/../lib"]
Group {
@@ -48,7 +48,7 @@ Project {
name: "functions"
files: ["lib.cpp"]
cpp.cxxLanguageVersion: "c++11"
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.7"
cpp.rpaths: [cpp.rpathOrigin]
Properties {
@@ -90,7 +90,7 @@ Project {
name: "indirect"
files: ["indirect.cpp"]
cpp.cxxLanguageVersion: "c++11"
- cpp.minimumMacosVersion: "10.5"
+ cpp.minimumMacosVersion: "10.7"
Properties {
condition: qbs.targetOS.contains("darwin")
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp
index ea8b9bd52..5dc858585 100644
--- a/tests/auto/blackbox/tst_blackbox.cpp
+++ b/tests/auto/blackbox/tst_blackbox.cpp
@@ -1671,7 +1671,7 @@ void TestBlackbox::cxxLanguageVersion()
QString mapKey;
if (version == "c++17" && m_qbsStdout.contains("is even newer MSVC: true"))
mapKey = "msvc-brandnew";
- if (m_qbsStdout.contains("is newer MSVC: true"))
+ else if (m_qbsStdout.contains("is newer MSVC: true"))
mapKey = "msvc-new";
else if (m_qbsStdout.contains("is older MSVC: true"))
mapKey = "msvc_old";
@@ -6212,7 +6212,7 @@ void TestBlackbox::minimumSystemVersion_data()
const QString specific = []() -> QString {
if (HostOsInfo::isMacosHost())
- return "__MAC_OS_X_VERSION_MIN_REQUIRED=1060\nversion 10.6\n";
+ return "__MAC_OS_X_VERSION_MIN_REQUIRED=1070\nversion 10.7\n";
if (HostOsInfo::isWindowsHost())
return "WINVER=1536\n6.00 operating system version\n6.00 subsystem version\n";
@@ -6228,8 +6228,8 @@ void TestBlackbox::minimumSystemVersion_data()
QTest::newRow("fakewindows") << "fakewindows" << "WINVER=1283\n5.03 operating system "
"version\n5.03 subsystem version\n";
if (HostOsInfo::isMacosHost())
- QTest::newRow("macappstore") << "macappstore" << "__MAC_OS_X_VERSION_MIN_REQUIRED=1068\n"
- "version 10.6";
+ QTest::newRow("macappstore") << "macappstore" << "__MAC_OS_X_VERSION_MIN_REQUIRED=1071\n"
+ "version 10.7";
}
void TestBlackbox::missingBuildGraph()
diff --git a/tests/auto/blackbox/tst_blackboxandroid.cpp b/tests/auto/blackbox/tst_blackboxandroid.cpp
index d0cf37741..2b8f2bd76 100644
--- a/tests/auto/blackbox/tst_blackboxandroid.cpp
+++ b/tests/auto/blackbox/tst_blackboxandroid.cpp
@@ -180,6 +180,10 @@ void TestBlackboxAndroid::android_data()
.replace("armv5te", "armeabi")
.replace("arm64", "arm64-v8a");
});
+ const bool usesClang = p.value(QLatin1String("qbs.toolchainType")).toString() == "clang";
+ const auto cxxLibPath = [usesClang](const QByteArray &oldcxxLib) {
+ return QByteArray("lib/${ARCH}/") + (usesClang ? "libc++_shared.so" : oldcxxLib);
+ };
auto expandArchs = [] (const QByteArrayList &archs, const QByteArrayList &lst) {
const QByteArray &archPlaceHolder = "${ARCH}";
@@ -210,7 +214,7 @@ void TestBlackboxAndroid::android_data()
"assets/Shaders/ShaderPlain.fsh",
"assets/Shaders/VS_ShaderPlain.vsh",
"lib/${ARCH}/libgdbserver.so",
- "lib/${ARCH}/libgnustl_shared.so",
+ cxxLibPath("libgnustl_shared.so"),
"lib/${ARCH}/libTeapotNativeActivity.so",
"res/layout/widgets.xml"}));
QTest::newRow("no native")
@@ -244,23 +248,23 @@ void TestBlackboxAndroid::android_data()
"lib/${ARCH}/libgdbserver.so",
"lib/${ARCH}/liblib1.so",
"lib/${ARCH}/liblib2.so",
- "lib/${ARCH}/libstlport_shared.so"}));
+ cxxLibPath("libstlport_shared.so")}));
QByteArrayList expectedFiles1 = (commonFiles
- + expandArchs(QByteArrayList{"mips", "x86"}, {
+ + expandArchs(QByteArrayList{"armeabi-v7a", "x86"}, {
"resources.arsc",
"lib/${ARCH}/libgdbserver.so",
"lib/${ARCH}/libp1lib1.so",
- "lib/${ARCH}/libstlport_shared.so"})
+ cxxLibPath("libstlport_shared.so")})
+ expandArchs(QByteArrayList{archs}, {
"resources.arsc",
"lib/${ARCH}/libgdbserver.so",
"lib/${ARCH}/libp1lib2.so",
- "lib/${ARCH}/libstlport_shared.so"})).toSet().toList();
+ cxxLibPath("libstlport_shared.so")})).toSet().toList();
QByteArrayList expectedFiles2 = commonFiles + expandArchs(archs, {
"lib/${ARCH}/libgdbserver.so",
"lib/${ARCH}/libp2lib1.so",
"lib/${ARCH}/libp2lib2.so",
- "lib/${ARCH}/libstlport_shared.so"});
+ cxxLibPath("libstlport_shared.so")});
QTest::newRow("multiple apks")
<< "multiple-apks-per-project"
<< (QStringList() << "twolibs1" << "twolibs2")
diff --git a/tests/auto/blackbox/tst_blackboxapple.cpp b/tests/auto/blackbox/tst_blackboxapple.cpp
index 76234e6c8..0cb4d5abb 100644
--- a/tests/auto/blackbox/tst_blackboxapple.cpp
+++ b/tests/auto/blackbox/tst_blackboxapple.cpp
@@ -76,8 +76,13 @@ void TestBlackboxApple::initTestCase()
void TestBlackboxApple::appleMultiConfig()
{
+ const auto xcodeVersion = findXcodeVersion();
+ const bool supportsX86 = xcodeVersion < qbs::Version(10);
+
QDir::setCurrent(testDataDir + "/apple-multiconfig");
- QCOMPARE(runQbs(QbsRunParameters(QStringList{"qbs.installPrefix:''"})), 0);
+ QCOMPARE(runQbs(QbsRunParameters(QStringList{
+ "qbs.installPrefix:''",
+ QString("project.enableX86:") + (supportsX86 ? "true" : "false")})), 0);
QVERIFY(QFileInfo2(defaultInstallRoot + "/singleapp.app/Contents/MacOS/singleapp").isExecutable());
QVERIFY(QFileInfo2(defaultInstallRoot + "/singleapp.app/Contents/Info.plist").isRegularFile());
@@ -164,7 +169,6 @@ void TestBlackboxApple::assetCatalog()
QFETCH(bool, flatten);
const auto xcodeVersion = findXcodeVersion();
-
QDir::setCurrent(testDataDir + QLatin1String("/ib/assetcatalog"));
rmDirR(relativeBuildDir());
@@ -578,14 +582,16 @@ void TestBlackboxApple::deploymentTarget_data()
QTest::addColumn<QString>("cflags");
QTest::addColumn<QString>("lflags");
- QTest::newRow("macos x86") << "macosx" << macos << "x86"
- << "-triple i386-apple-macosx10.4"
- << "-macosx_version_min 10.4";
+ const auto xcodeVersion = findXcodeVersion();
+ if (xcodeVersion < qbs::Version(10)) {
+ QTest::newRow("macos x86") << "macosx" << macos << "x86"
+ << "-triple i386-apple-macosx10.6"
+ << "-macosx_version_min 10.6";
+ }
QTest::newRow("macos x86_64") << "macosx" << macos << "x86_64"
- << "-triple x86_64-apple-macosx10.4"
- << "-macosx_version_min 10.4";
+ << "-triple x86_64-apple-macosx10.6"
+ << "-macosx_version_min 10.6";
- const auto xcodeVersion = findXcodeVersion();
if (xcodeVersion >= qbs::Version(6))
QTest::newRow("macos x86_64h") << "macosx" << macos << "x86_64h"
<< "-triple x86_64h-apple-macosx10.12"
diff --git a/tests/auto/language/testdata/inherited-properties-items/imports/DebugName.qbs b/tests/auto/language/testdata/inherited-properties-items/imports/DebugName.qbs
new file mode 100644
index 000000000..5ac15658c
--- /dev/null
+++ b/tests/auto/language/testdata/inherited-properties-items/imports/DebugName.qbs
@@ -0,0 +1,6 @@
+import qbs
+
+Properties {
+ condition: qbs.buildVariant === "debug"
+ name: "product_debug"
+}
diff --git a/tests/auto/language/testdata/inherited-properties-items/imports/ReleaseName.qbs b/tests/auto/language/testdata/inherited-properties-items/imports/ReleaseName.qbs
new file mode 100644
index 000000000..e33c5652b
--- /dev/null
+++ b/tests/auto/language/testdata/inherited-properties-items/imports/ReleaseName.qbs
@@ -0,0 +1,6 @@
+import qbs
+
+Properties {
+ condition: qbs.buildVariant === "release"
+ name: "product_release"
+}
diff --git a/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items-product.qbs b/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items-product.qbs
new file mode 100644
index 000000000..c20f045c8
--- /dev/null
+++ b/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items-product.qbs
@@ -0,0 +1,7 @@
+import qbs
+
+Product {
+ name: "product_default"
+ DebugName {}
+ ReleaseName {}
+}
diff --git a/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items.qbs b/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items.qbs
new file mode 100644
index 000000000..40d41c2fb
--- /dev/null
+++ b/tests/auto/language/testdata/inherited-properties-items/inherited-properties-items.qbs
@@ -0,0 +1,6 @@
+import qbs
+
+Project {
+ qbsSearchPaths: sourceDirectory
+ references: "inherited-properties-items-product.qbs"
+}
diff --git a/tests/auto/language/tst_language.cpp b/tests/auto/language/tst_language.cpp
index fce799a0f..da8f1d7a8 100644
--- a/tests/auto/language/tst_language.cpp
+++ b/tests/auto/language/tst_language.cpp
@@ -1360,6 +1360,37 @@ void TestLanguage::importCollection()
QVERIFY(!exceptionCaught);
}
+void TestLanguage::inheritedPropertiesItems_data()
+{
+ QTest::addColumn<QString>("buildVariant");
+ QTest::addColumn<QString>("productName");
+ QTest::newRow("debug build") << "debug" << "product_debug";
+ QTest::newRow("release build") << "release" << "product_release";
+}
+
+void TestLanguage::inheritedPropertiesItems()
+{
+ bool exceptionCaught = false;
+ try {
+ SetupProjectParameters params = defaultParameters;
+ QFETCH(QString, buildVariant);
+ QFETCH(QString, productName);
+ params.setProjectFilePath
+ (testProject("inherited-properties-items/inherited-properties-items.qbs"));
+ params.setOverriddenValues(QVariantMap{std::make_pair("qbs.buildVariant", buildVariant)});
+ TopLevelProjectPtr project = loader->loadProject(params);
+ QVERIFY(!!project);
+ QHash<QString, ResolvedProductPtr> products = productsFromProject(project);
+ QCOMPARE(products.size(), 1);
+ QVERIFY(!!products.value(productName));
+ }
+ catch (const ErrorInfo &e) {
+ exceptionCaught = true;
+ qDebug() << e.toString();
+ }
+ QVERIFY(!exceptionCaught);
+}
+
void TestLanguage::invalidBindingInDisabledItem()
{
bool exceptionCaught = false;
diff --git a/tests/auto/language/tst_language.h b/tests/auto/language/tst_language.h
index 18027ab45..d724e5fc6 100644
--- a/tests/auto/language/tst_language.h
+++ b/tests/auto/language/tst_language.h
@@ -113,6 +113,8 @@ private slots:
void idUsage();
void idUniqueness();
void importCollection();
+ void inheritedPropertiesItems_data();
+ void inheritedPropertiesItems();
void invalidBindingInDisabledItem();
void invalidOverrides();
void invalidOverrides_data();