diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2017-10-05 17:28:04 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2017-10-05 17:28:04 +0200 |
commit | 7e5c48457edf7973ea7c59ab2f351c80f6e7a301 (patch) | |
tree | 0585dce0c52e01b6df0c19aaa838f367c8b91d59 | |
parent | 631b1a1732e9837ae7eeaa5113c4b6c451bae569 (diff) | |
parent | f47a71fe70312646a8bf155c7edce761f4be1204 (diff) |
Merge 1.9 into master
This is intended to be the last merge from 1.9.
Change-Id: I7b9dec70a50726f4ed2d54152eab472f2c6b74ec
-rw-r--r-- | changelogs/changes-1.9.1.md | 4 | ||||
-rw-r--r-- | examples/cocoa-touch-application/CocoaTouchApplication.qbs | 2 | ||||
-rw-r--r-- | examples/cocoa-touch-application/CocoaTouchApplication.xcodeproj/project.pbxproj | 4 | ||||
-rw-r--r-- | src/lib/corelib/language/evaluatorscriptclass.cpp | 13 | ||||
-rw-r--r-- | src/lib/corelib/language/value.cpp | 5 | ||||
-rw-r--r-- | src/lib/corelib/language/value.h | 2 | ||||
-rw-r--r-- | tests/auto/language/testdata/propertiesblocks.qbs | 20 | ||||
-rw-r--r-- | tests/auto/language/tst_language.cpp | 8 |
8 files changed, 47 insertions, 11 deletions
diff --git a/changelogs/changes-1.9.1.md b/changelogs/changes-1.9.1.md new file mode 100644 index 000000000..59fc69089 --- /dev/null +++ b/changelogs/changes-1.9.1.md @@ -0,0 +1,4 @@ +# Important bugfixes +* Lower the response file threshold on Windows to fix build failures with mingw (QBS-1201). +* Fix explicitly specified build variant being ignored for Darwin targets (QBS-1202). +* Fix building for the AVR architecture (QBS-1203). diff --git a/examples/cocoa-touch-application/CocoaTouchApplication.qbs b/examples/cocoa-touch-application/CocoaTouchApplication.qbs index 9a1046611..f1c7f3238 100644 --- a/examples/cocoa-touch-application/CocoaTouchApplication.qbs +++ b/examples/cocoa-touch-application/CocoaTouchApplication.qbs @@ -57,7 +57,7 @@ CppApplication { name: "Cocoa Touch Application" cpp.useObjcPrecompiledHeader: true - cpp.minimumIosVersion: "6.1" + cpp.minimumIosVersion: "8.0" cpp.frameworks: [ "UIKit", "Foundation", "CoreGraphics" ] Group { diff --git a/examples/cocoa-touch-application/CocoaTouchApplication.xcodeproj/project.pbxproj b/examples/cocoa-touch-application/CocoaTouchApplication.xcodeproj/project.pbxproj index 4dc8a6d4c..07f3a1a46 100644 --- a/examples/cocoa-touch-application/CocoaTouchApplication.xcodeproj/project.pbxproj +++ b/examples/cocoa-touch-application/CocoaTouchApplication.xcodeproj/project.pbxproj @@ -267,7 +267,7 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 6.1; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; @@ -291,7 +291,7 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 6.1; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/src/lib/corelib/language/evaluatorscriptclass.cpp b/src/lib/corelib/language/evaluatorscriptclass.cpp index 4c4a521a5..6e131fdec 100644 --- a/src/lib/corelib/language/evaluatorscriptclass.cpp +++ b/src/lib/corelib/language/evaluatorscriptclass.cpp @@ -213,14 +213,11 @@ private: // condition is true, let's use the value of this alternative if (alternative.value->sourceUsesOuter() && !outerItem) { // Clone value but without alternatives. - JSSourceValuePtr outerValue = JSSourceValue::create(); - outerValue->setFile(value->file()); - outerValue->setHasFunctionForm(value->hasFunctionForm()); - outerValue->setSourceCode(value->sourceCode()); - outerValue->setBaseValue(value->baseValue()); - if (value->sourceUsesBase()) - outerValue->setSourceUsesBaseFlag(); - outerValue->setLocation(value->line(), value->column()); + JSSourceValuePtr outerValue = + std::static_pointer_cast<JSSourceValue>(value->clone()); + outerValue->setNext(ValuePtr()); + outerValue->clearCreatedByPropertiesBlock(); + outerValue->clearAlternatives(); outerItem = Item::create(data->item->pool(), ItemType::Outer); outerItem->setProperty(propertyName->toString(), outerValue); } diff --git a/src/lib/corelib/language/value.cpp b/src/lib/corelib/language/value.cpp index f72cb248c..8c3dea32c 100644 --- a/src/lib/corelib/language/value.cpp +++ b/src/lib/corelib/language/value.cpp @@ -153,6 +153,11 @@ void JSSourceValue::setHasFunctionForm(bool b) m_flags &= ~HasFunctionForm; } +void JSSourceValue::clearAlternatives() +{ + m_alternatives.clear(); +} + void JSSourceValue::setDefiningItem(Item *item) { Value::setDefiningItem(item); diff --git a/src/lib/corelib/language/value.h b/src/lib/corelib/language/value.h index 6dcefc602..756638727 100644 --- a/src/lib/corelib/language/value.h +++ b/src/lib/corelib/language/value.h @@ -78,6 +78,7 @@ public: bool createdByPropertiesBlock() const { return m_createdByPropertiesBlock; } void setCreatedByPropertiesBlock(bool b) { m_createdByPropertiesBlock = b; } + void clearCreatedByPropertiesBlock() { m_createdByPropertiesBlock = false; } private: Type m_type; @@ -160,6 +161,7 @@ public: const std::vector<Alternative> &alternatives() const { return m_alternatives; } void addAlternative(const Alternative &alternative) { m_alternatives.push_back(alternative); } + void clearAlternatives(); void setDefiningItem(Item *item); diff --git a/tests/auto/language/testdata/propertiesblocks.qbs b/tests/auto/language/testdata/propertiesblocks.qbs index 48a801bd8..8566166d9 100644 --- a/tests/auto/language/testdata/propertiesblocks.qbs +++ b/tests/auto/language/testdata/propertiesblocks.qbs @@ -37,6 +37,26 @@ Project { } } Product { + name: "property_append_to_indirect_outer" + Depends { name: "dummy" } + property stringList myDefines: ["ONE"] + dummy.defines: myDefines + Properties { + condition: true + dummy.defines: outer.concat(["TWO"]) + } + } + Product { + name: "property_append_to_indirect_merged_outer" + Depends { name: "dummy" } + property string justOne: "ONE" + dummy.rpaths: [justOne] + Properties { + condition: true + dummy.rpaths: outer.concat(["TWO"]) + } + } + Product { name: "multiple_exclusive_properties" Depends { name: "dummy" } dummy.defines: ["SOMETHING"] diff --git a/tests/auto/language/tst_language.cpp b/tests/auto/language/tst_language.cpp index 416634654..0c6e1f48d 100644 --- a/tests/auto/language/tst_language.cpp +++ b/tests/auto/language/tst_language.cpp @@ -2092,6 +2092,14 @@ void TestLanguage::propertiesBlocks_data() << QString("dummy.defines") << (QStringList() << QString("ONE") << QString("TWO")) << QString(); + QTest::newRow("property_append_to_indirect_outer") + << QString("dummy.defines") + << (QStringList() << QString("ONE") << QString("TWO")) + << QString(); + QTest::newRow("property_append_to_indirect_merged_outer") + << QString("dummy.rpaths") + << (QStringList() << QString("ONE") << QString("TWO") << QString("$ORIGIN")) + << QString(); QTest::newRow("multiple_exclusive_properties") << QString("dummy.defines") |