aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README4
-rw-r--r--doc/qbs.qdoc8
-rw-r--r--qbs-resources/imports/QbsProduct.qbs2
-rw-r--r--qbs.pro4
-rw-r--r--src/lib/corelib/jsextensions/propertylist.mm12
-rw-r--r--src/lib/corelib/jsextensions/propertylistutils.h45
-rw-r--r--src/lib/corelib/jsextensions/propertylistutils.mm12
-rw-r--r--src/lib/corelib/tools/qbsassert.h5
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp2
9 files changed, 18 insertions, 76 deletions
diff --git a/README b/README
index 1f7bee933..ad7bb77e6 100644
--- a/README
+++ b/README
@@ -10,12 +10,12 @@ Windows XP SP2 or later
OS X 10.6 or later
Linux (tested on Debian 6/7 and Ubuntu 13)
-Building the sources requires Qt 5.1.0 or later.
+Building the sources requires Qt 5.4.0 or later.
Build Instructions
==================
Prerequisites:
- * Qt 5.1.0 or later
+ * Qt 5.4.0 or later
* On Windows:
- MinGW or Visual Studio
* On OS X: Xcode
diff --git a/doc/qbs.qdoc b/doc/qbs.qdoc
index a2043f8f1..8d782823b 100644
--- a/doc/qbs.qdoc
+++ b/doc/qbs.qdoc
@@ -118,13 +118,7 @@
\title System Requirements
- To build \QBS from the source, you need the following:
-
- \list
-
- \li Qt >= 5.1.0
-
- \endlist
+ To build \QBS from the source, you need Qt 5.4.0, or later
*/
diff --git a/qbs-resources/imports/QbsProduct.qbs b/qbs-resources/imports/QbsProduct.qbs
index de5f7f12a..0bd43bf08 100644
--- a/qbs-resources/imports/QbsProduct.qbs
+++ b/qbs-resources/imports/QbsProduct.qbs
@@ -3,7 +3,7 @@ import QbsFunctions
Product {
Depends { name: "Qt.core" }
- property string minimumQtVersion: "5.1.0"
+ property string minimumQtVersion: "5.4.0"
cpp.defines: {
var res = ["QT_NO_CAST_FROM_ASCII", "QT_NO_PROCESS_COMBINED_ARGUMENT_START"];
if (qbs.toolchain.contains("msvc"))
diff --git a/qbs.pro b/qbs.pro
index 68d7aa5d9..1ff1e02eb 100644
--- a/qbs.pro
+++ b/qbs.pro
@@ -21,9 +21,9 @@ defineTest(minQtVersion) {
return(false)
}
-!minQtVersion(5, 1, 0) {
+!minQtVersion(5, 4, 0) {
message("Cannot build qbs with Qt version $${QT_VERSION}.")
- error("Use at least Qt 5.1.0.")
+ error("Use at least Qt 5.4.0.")
}
TEMPLATE = subdirs
diff --git a/src/lib/corelib/jsextensions/propertylist.mm b/src/lib/corelib/jsextensions/propertylist.mm
index dae241e5f..6c5a029cb 100644
--- a/src/lib/corelib/jsextensions/propertylist.mm
+++ b/src/lib/corelib/jsextensions/propertylist.mm
@@ -240,7 +240,7 @@ void PropertyListPrivate::readFromData(QScriptContext *context, QByteArray data)
respondsToSelector:@selector(propertyListWithData:options:format:error:)]) {
error = nil;
errorString = nil;
- plist = [NSPropertyListSerialization propertyListWithData:QByteArray_toNSData(data)
+ plist = [NSPropertyListSerialization propertyListWithData:data.toNSData()
options:0
format:&format error:&error];
if (Q_UNLIKELY(!plist)) {
@@ -251,7 +251,7 @@ void PropertyListPrivate::readFromData(QScriptContext *context, QByteArray data)
{
error = nil;
errorString = nil;
- plist = [NSPropertyListSerialization propertyListFromData:QByteArray_toNSData(data)
+ plist = [NSPropertyListSerialization propertyListFromData:data.toNSData()
mutabilityOption:NSPropertyListImmutable
format:&format
errorDescription:&errorString];
@@ -262,7 +262,7 @@ void PropertyListPrivate::readFromData(QScriptContext *context, QByteArray data)
if (!plist && NSClassFromString(@"NSJSONSerialization")) {
error = nil;
errorString = nil;
- plist = [NSJSONSerialization JSONObjectWithData:QByteArray_toNSData(data)
+ plist = [NSJSONSerialization JSONObjectWithData:data.toNSData()
options:0
error:&error];
if (Q_UNLIKELY(!plist)) {
@@ -274,7 +274,7 @@ void PropertyListPrivate::readFromData(QScriptContext *context, QByteArray data)
#endif
if (Q_UNLIKELY(!plist)) {
- context->throwError(QString_fromNSString(errorString));
+ context->throwError(QString::fromNSString(errorString));
} else {
QVariant obj = QPropertyListUtils::fromPropertyList(plist);
if (!obj.isNull()) {
@@ -351,10 +351,10 @@ QByteArray PropertyListPrivate::writeToData(QScriptContext *context, const QStri
}
if (Q_UNLIKELY(!data)) {
- context->throwError(QString_fromNSString(errorString));
+ context->throwError(QString::fromNSString(errorString));
}
- return QByteArray_fromNSData(data);
+ return QByteArray::fromNSData(data);
}
}
diff --git a/src/lib/corelib/jsextensions/propertylistutils.h b/src/lib/corelib/jsextensions/propertylistutils.h
index 453bdb9ea..8b8651a60 100644
--- a/src/lib/corelib/jsextensions/propertylistutils.h
+++ b/src/lib/corelib/jsextensions/propertylistutils.h
@@ -39,51 +39,6 @@
#error "This file must be included from Objective-C++"
#endif
-static inline QString QString_fromNSString(const NSString *string)
-{
-#if QT_VERSION >= QT_VERSION_CHECK(5, 2, 0)
- return QString::fromNSString(string);
-#else
- if (!string)
- return QString();
- QString qstring;
- qstring.resize([string length]);
- [string getCharacters:reinterpret_cast<unichar*>(qstring.data())
- range:NSMakeRange(0, [string length])];
- return qstring;
-#endif
-}
-
-static inline NSString *QString_toNSString(const QString &qstring)
-{
-#if QT_VERSION >= QT_VERSION_CHECK(5, 2, 0)
- return qstring.toNSString();
-#else
- return [NSString stringWithCharacters:reinterpret_cast<const UniChar*>(qstring.unicode())
- length:qstring.length()];
-#endif
-}
-
-static inline QByteArray QByteArray_fromNSData(const NSData *data)
-{
-#if QT_VERSION >= QT_VERSION_CHECK(5, 3, 0)
- return QByteArray::fromNSData(data);
-#else
- if (!data)
- return QByteArray();
- return QByteArray(reinterpret_cast<const char*>([data bytes]), [data length]);
-#endif
-}
-
-static inline NSData *QByteArray_toNSData(const QByteArray &qbytearray)
-{
-#if QT_VERSION >= QT_VERSION_CHECK(5, 3, 0)
- return qbytearray.toNSData();
-#else
- return [NSData dataWithBytes:qbytearray.constData() length:qbytearray.size()];
-#endif
-}
-
class QPropertyListUtils
{
Q_DISABLE_COPY(QPropertyListUtils)
diff --git a/src/lib/corelib/jsextensions/propertylistutils.mm b/src/lib/corelib/jsextensions/propertylistutils.mm
index a80a1a39e..a82bcac92 100644
--- a/src/lib/corelib/jsextensions/propertylistutils.mm
+++ b/src/lib/corelib/jsextensions/propertylistutils.mm
@@ -71,9 +71,9 @@ static QVariant fromObject(id obj)
} else if ([obj isKindOfClass:[NSArray class]]) {
value = fromArray(obj);
} else if ([obj isKindOfClass:[NSString class]]) {
- value = QString_fromNSString(obj);
+ value = QString::fromNSString(obj);
} else if ([obj isKindOfClass:[NSData class]]) {
- value = QByteArray_fromNSData(obj);
+ value = QByteArray::fromNSData(obj);
} else if ([obj isKindOfClass:[NSDate class]]) {
value = QDateTime_fromNSDate(obj);
} else if ([obj isKindOfClass:[NSNumber class]]) {
@@ -116,7 +116,7 @@ static QVariantMap fromDictionary(NSDictionary *dict)
{
QVariantMap map;
for (NSString *key in dict)
- map[QString_fromNSString(key)] = fromObject([dict objectForKey:key]);
+ map[QString::fromNSString(key)] = fromObject([dict objectForKey:key]);
return map;
}
@@ -146,9 +146,9 @@ static id toObject(const QVariant &variant)
} else if (variant.type() == QVariant::List) {
return toArray(variant.toList());
} else if (variant.type() == QVariant::String) {
- return QString_toNSString(variant.toString());
+ return variant.toString().toNSString();
} else if (variant.type() == QVariant::ByteArray) {
- return QByteArray_toNSData(variant.toByteArray());
+ return variant.toByteArray().toNSData();
} else if (variant.type() == QVariant::Date ||
variant.type() == QVariant::DateTime) {
return QDateTime_toNSDate(variant.toDateTime());
@@ -178,7 +178,7 @@ static NSDictionary *toDictionary(const QVariantMap &map)
QMapIterator<QString, QVariant> i(map);
while (i.hasNext()) {
i.next();
- [dict setObject:toObject(i.value()) forKey:QString_toNSString(i.key())];
+ [dict setObject:toObject(i.value()) forKey:i.key().toNSString()];
}
return [NSDictionary dictionaryWithDictionary:dict];
}
diff --git a/src/lib/corelib/tools/qbsassert.h b/src/lib/corelib/tools/qbsassert.h
index 173a6d66a..6c3f5342f 100644
--- a/src/lib/corelib/tools/qbsassert.h
+++ b/src/lib/corelib/tools/qbsassert.h
@@ -33,11 +33,6 @@
#include "qbs_export.h"
-// TODO: Remove once we require 5.3.
-#ifndef Q_NORETURN
-#define Q_NORETURN
-#endif
-
namespace qbs {
namespace Internal {
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp
index d148bfc5f..37449f867 100644
--- a/tests/auto/blackbox/tst_blackbox.cpp
+++ b/tests/auto/blackbox/tst_blackbox.cpp
@@ -2573,12 +2573,10 @@ void TestBlackbox::jsExtensionsPropertyList()
QByteArray file1Contents = file1.readAll();
QCOMPARE(file3.readAll(), file1Contents);
//QCOMPARE(file1Contents, file2.readAll()); // keys don't have guaranteed order
-#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
QJsonParseError err1, err2;
QCOMPARE(QJsonDocument::fromJson(file1Contents, &err1),
QJsonDocument::fromJson(file2.readAll(), &err2));
QVERIFY(err1.error == QJsonParseError::NoError && err2.error == QJsonParseError::NoError);
-#endif
QFile file4("test.openstep.plist");
QVERIFY(file4.exists());
QFile file5("test3.json");