Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts: tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp Change-Id: Ib6dd965a7eb6f59103e276b3407739147ecd37b2
This commit is contained in:
commit
24fba6744c
@ -157,10 +157,10 @@ rem Determine host spec
|
||||
if "%PLATFORM%" == "" (
|
||||
if not "%icl.exe%" == "" (
|
||||
set PLATFORM=win32-icc
|
||||
) else if not "%clang-cl.exe%" == "" (
|
||||
set PLATFORM=win32-clang-msvc
|
||||
) else if not "%cl.exe%" == "" (
|
||||
set PLATFORM=win32-msvc
|
||||
) else if not "%clang-cl.exe%" == "" (
|
||||
set PLATFORM=win32-clang-msvc
|
||||
) else if not "%g++.exe%" == "" (
|
||||
set PLATFORM=win32-g++
|
||||
) else (
|
||||
|
@ -54,3 +54,7 @@ macx-xcode:qtConfig(static): \
|
||||
# feature, which allows Xcode to choose the Qt libraries to link to
|
||||
# at build time, depending on the current Xcode SDK and configuration.
|
||||
QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX
|
||||
|
||||
xcode_copy_phase_strip_setting.name = COPY_PHASE_STRIP
|
||||
xcode_copy_phase_strip_setting.value = NO
|
||||
QMAKE_MAC_XCODE_SETTINGS += xcode_copy_phase_strip_setting
|
||||
|
@ -279,7 +279,6 @@ ProjectBuilderMakefileGenerator::writeSubDirs(QTextStream &t)
|
||||
QString configName = (as_release ? "Release" : "Debug");
|
||||
|
||||
QMap<QString, QString> settings;
|
||||
settings.insert("COPY_PHASE_STRIP", (as_release ? "YES" : "NO"));
|
||||
if(project->isActiveConfig("sdk") && !project->isEmpty("QMAKE_MAC_SDK"))
|
||||
settings.insert("SDKROOT", project->first("QMAKE_MAC_SDK").toQString());
|
||||
{
|
||||
@ -1493,7 +1492,6 @@ ProjectBuilderMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
settings.insert("PROVISIONING_PROFILE_SPECIFIER", project->first("QMAKE_PROVISIONING_PROFILE").toQString());
|
||||
}
|
||||
|
||||
settings.insert("COPY_PHASE_STRIP", (as_release ? "YES" : "NO"));
|
||||
settings.insert("APPLICATION_EXTENSION_API_ONLY", project->isActiveConfig("app_extension_api_only") ? "YES" : "NO");
|
||||
// required for tvOS (and watchos), optional on iOS (deployment target >= iOS 6.0)
|
||||
settings.insert("ENABLE_BITCODE", project->isActiveConfig("bitcode") ? "YES" : "NO");
|
||||
|
@ -155,6 +155,20 @@ UnixMakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::
|
||||
}
|
||||
}
|
||||
|
||||
static QString rfc1034Identifier(const QString &str)
|
||||
{
|
||||
QString s = str;
|
||||
for (QChar &ch : s) {
|
||||
const char c = ch.toLatin1();
|
||||
|
||||
const bool okChar = (c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z')
|
||||
|| (c >= 'a' && c <= 'z') || c == '-' || c == '.';
|
||||
if (!okChar)
|
||||
ch = QChar::fromLatin1('-');
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
void
|
||||
UnixMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
{
|
||||
@ -835,7 +849,7 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
if (bundleIdentifier.endsWith(".framework"))
|
||||
bundleIdentifier.chop(10);
|
||||
// replace invalid bundle id characters
|
||||
bundleIdentifier.replace('_', '-');
|
||||
bundleIdentifier = rfc1034Identifier(bundleIdentifier);
|
||||
commonSedArgs << "-e \"s,@BUNDLEIDENTIFIER@," << bundleIdentifier << ",g\" ";
|
||||
commonSedArgs << "-e \"s,\\$${PRODUCT_BUNDLE_IDENTIFIER}," << bundleIdentifier << ",g\" ";
|
||||
|
||||
|
@ -324,7 +324,8 @@ void MingwMakefileGenerator::writeBuildRulesPart(QTextStream &t)
|
||||
t << "\n\t" <<var("QMAKE_PRE_LINK");
|
||||
if(project->isActiveConfig("staticlib") && project->first("TEMPLATE") == "lib") {
|
||||
t << "\n\t-$(DEL_FILE) $(DESTDIR_TARGET) 2>" << var("QMAKE_SHELL_NULL_DEVICE");
|
||||
if (project->values("OBJECTS").count() < var("QMAKE_LINK_OBJECT_MAX").toInt()) {
|
||||
const ProString &objmax = project->first("QMAKE_LINK_OBJECT_MAX");
|
||||
if (objmax.isEmpty() || project->values("OBJECTS").count() < objmax.toInt()) {
|
||||
t << "\n\t$(LIB) $(DESTDIR_TARGET) " << objectsLinkLine << " " ;
|
||||
} else {
|
||||
t << "\n\t" << objectsLinkLine << " " ;
|
||||
|
@ -1203,7 +1203,7 @@ void QWindowsNativeFileDialogBase::onSelectionChange()
|
||||
{
|
||||
const QList<QUrl> current = selectedFiles();
|
||||
m_data.setSelectedFiles(current);
|
||||
qDebug() << __FUNCTION__ << current << current.size();
|
||||
qCDebug(lcQpaDialogs) << __FUNCTION__ << current << current.size();
|
||||
|
||||
if (current.size() == 1)
|
||||
emit currentChanged(current.front());
|
||||
|
@ -295,11 +295,15 @@ private:
|
||||
|
||||
bool develMode = false;
|
||||
bool debugWait = false;
|
||||
for (const char *arg : args) {
|
||||
if (strcmp(arg, "-qdevel") == 0)
|
||||
for (int i = args.count() - 1; i >= 0; --i) {
|
||||
const char *arg = args.at(i);
|
||||
if (strcmp(arg, "-qdevel") == 0) {
|
||||
develMode = true;
|
||||
if (strcmp(arg, "-qdebug") == 0)
|
||||
args.remove(i);
|
||||
} else if (strcmp(arg, "-qdebug") == 0) {
|
||||
debugWait = true;
|
||||
args.remove(i);
|
||||
}
|
||||
}
|
||||
if (develMode) {
|
||||
// Write a PID file to help runner
|
||||
|
@ -18,12 +18,9 @@ osx
|
||||
osx
|
||||
[broadcasting]
|
||||
osx
|
||||
ubuntu-16.04
|
||||
[zeroLengthDatagram]
|
||||
osx
|
||||
[linkLocalIPv6]
|
||||
redhatenterpriselinuxworkstation-6.6
|
||||
[pendingDatagramSize]
|
||||
ubuntu-16.04
|
||||
[readyReadForEmptyDatagram]
|
||||
ubuntu-16.04
|
||||
|
@ -126,12 +126,14 @@ protected slots:
|
||||
|
||||
private:
|
||||
bool shouldSkipIpv6TestsForBrokenSetsockopt();
|
||||
bool shouldWorkaroundLinuxKernelBug();
|
||||
#ifdef SHOULD_CHECK_SYSCALL_SUPPORT
|
||||
bool ipv6SetsockoptionMissing(int level, int optname);
|
||||
#endif
|
||||
QNetworkInterface interfaceForGroup(const QHostAddress &multicastGroup);
|
||||
|
||||
bool m_skipUnsupportedIPv6Tests;
|
||||
bool m_workaroundLinuxKernelBug;
|
||||
QList<QHostAddress> allAddresses;
|
||||
QHostAddress multicastGroup4, multicastGroup6;
|
||||
QVector<QHostAddress> linklocalMulticastGroups;
|
||||
@ -207,6 +209,16 @@ QNetworkInterface tst_QUdpSocket::interfaceForGroup(const QHostAddress &multicas
|
||||
return ipv6if;
|
||||
}
|
||||
|
||||
bool tst_QUdpSocket::shouldWorkaroundLinuxKernelBug()
|
||||
{
|
||||
#ifdef Q_OS_LINUX
|
||||
const QVersionNumber version = QVersionNumber::fromString(QSysInfo::kernelVersion());
|
||||
return version.majorVersion() == 4 && version.minorVersion() >= 6 && version.minorVersion() < 13;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
static QHostAddress makeNonAny(const QHostAddress &address, QHostAddress::SpecialAddress preferForAny = QHostAddress::LocalHost)
|
||||
{
|
||||
if (address == QHostAddress::Any)
|
||||
@ -276,6 +288,7 @@ void tst_QUdpSocket::initTestCase()
|
||||
|
||||
qDebug() << "Will use multicast groups" << multicastGroup4 << multicastGroup6 << linklocalMulticastGroups;
|
||||
|
||||
m_workaroundLinuxKernelBug = shouldWorkaroundLinuxKernelBug();
|
||||
if (EmulationDetector::isRunningArmOnX86())
|
||||
QSKIP("This test is unreliable due to QEMU emulation shortcomings.");
|
||||
}
|
||||
@ -360,6 +373,9 @@ void tst_QUdpSocket::unconnectedServerAndClientTest()
|
||||
|
||||
void tst_QUdpSocket::broadcasting()
|
||||
{
|
||||
if (m_workaroundLinuxKernelBug)
|
||||
QSKIP("This test can fail due to linux kernel bug");
|
||||
|
||||
QFETCH_GLOBAL(bool, setProxy);
|
||||
if (setProxy) {
|
||||
#ifndef QT_NO_NETWORKPROXY
|
||||
@ -805,6 +821,9 @@ void tst_QUdpSocket::bindAndConnectToHost()
|
||||
|
||||
void tst_QUdpSocket::pendingDatagramSize()
|
||||
{
|
||||
if (m_workaroundLinuxKernelBug)
|
||||
QSKIP("This test can fail due to linux kernel bug");
|
||||
|
||||
QUdpSocket server;
|
||||
QVERIFY2(server.bind(), server.errorString().toLatin1().constData());
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user