From 515e9a14276bc524ec1b7ab53dad874de3fabc48 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 16 Sep 2019 13:18:23 +0200 Subject: [PATCH 1/3] Ignore non-existent .ui file dependencies Commit 80dea664 broke .ui files with global includes that are not part of the project, because we blindly added every file path that falls out of 'uic -d' as dependency. Introduce the extra compiler CONFIG flag dep_existing_only to bring back the old behavior that ignores non-existent dependencies and set it for uic. Change-Id: I6eaa82817c932a98ebac6d08115a9815d4b9dd21 Fixes: QTBUG-78144 Reviewed-by: Kai Koehne (cherry picked from commit 90779d96adfa51a3fc00b6c0d93168b4bbfcf983) Reviewed-by: Edward Welbourne --- mkspecs/features/uic.prf | 2 +- qmake/doc/src/qmake-manual.qdoc | 5 +++++ qmake/generators/makefile.cpp | 5 +++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/mkspecs/features/uic.prf b/mkspecs/features/uic.prf index 1cedce5ae7a..a5df0c7e8d4 100644 --- a/mkspecs/features/uic.prf +++ b/mkspecs/features/uic.prf @@ -9,7 +9,7 @@ uic.depend_command = $$QMAKE_UIC_DEP -d ${QMAKE_FILE_IN} uic.output = $$UI_DIR/$${QMAKE_MOD_UIC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)} uic.input = FORMS uic.variable_out = GENERATED_FILES -uic.CONFIG += no_link target_predeps dep_lines +uic.CONFIG += no_link target_predeps dep_lines dep_existing_only uic.name = UIC ${QMAKE_FILE_IN} silent:uic.commands = @echo uic ${QMAKE_FILE_IN} && $$uic.commands QMAKE_EXTRA_COMPILERS += uic diff --git a/qmake/doc/src/qmake-manual.qdoc b/qmake/doc/src/qmake-manual.qdoc index 2e2962f86c4..9358892ad79 100644 --- a/qmake/doc/src/qmake-manual.qdoc +++ b/qmake/doc/src/qmake-manual.qdoc @@ -4728,6 +4728,11 @@ \li explicit_dependencies \li The dependencies for the output only get generated from the depends member and from nowhere else. + \row + \li dep_existing_only + \li Every dependency that is a result of .depend_command is checked for + existence. Non-existing dependencies are ignored. + This value was introduced in Qt 5.12.6. \row \li dep_lines \li The output from the .depend_command is interpreted to be one file diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 11623cd147f..fcd0ccd43e3 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -1984,6 +1984,7 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) } t << endl; } + const bool existingDepsOnly = config.contains("dep_existing_only"); QStringList tmp_dep = project->values(ProKey(*it + ".depends")).toQStringList(); if (config.indexOf("combine") != -1) { if (tmp_out.contains(QRegExp("(^|[^$])\\$\\{QMAKE_(?!VAR_)"))) { @@ -2025,6 +2026,8 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) warn_msg(WarnDeprecated, ".depend_command for extra compiler %s" " prints paths relative to source directory", (*it).toLatin1().constData()); + else if (existingDepsOnly) + file.clear(); else file = absFile; // fallback for generated resources } else { @@ -2110,6 +2113,8 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) warn_msg(WarnDeprecated, ".depend_command for extra compiler %s" " prints paths relative to source directory", (*it).toLatin1().constData()); + else if (existingDepsOnly) + file.clear(); else file = absFile; // fallback for generated resources } else { From f73cd386c31aaa2f8a3386dd5fea00f654b209eb Mon Sep 17 00:00:00 2001 From: Antti Kokko Date: Thu, 31 Oct 2019 13:26:54 +0200 Subject: [PATCH 2/3] Add changes file for Qt 5.12.6 Change-Id: Iff5f92f9d947a8b557aab87a36b3a91e335d1a4b Reviewed-by: Eirik Aavitsland Reviewed-by: Edward Welbourne --- dist/changes-5.12.6 | 53 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 dist/changes-5.12.6 diff --git a/dist/changes-5.12.6 b/dist/changes-5.12.6 new file mode 100644 index 00000000000..e6712635701 --- /dev/null +++ b/dist/changes-5.12.6 @@ -0,0 +1,53 @@ +Qt 5.12.6 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.12.0 through 5.12.5. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + +https://doc.qt.io/qt-5/index.html + +The Qt version 5.12 series is binary compatible with the 5.11.x series. +Applications compiled for 5.11 will continue to run with 5.12. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + +https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* QtCore * +**************************************************************************** + + - QLocale: + * The system locale's UI languages list now includes, as for that of an + ordinary locale, the results of adding likely sub-tags from each + locale name, and of removing some, where this doesn't change which + locale is specified. This gives searches for translation files a + better chance of finding a suitable file. + +**************************************************************************** +* Windows * +**************************************************************************** + + - Text: + * [QTBUG-57180] Removed confusing DirectWrite warning when loading + bitmap fonts. + +**************************************************************************** +* Android * +**************************************************************************** + + - Fixed regression that made it impossible for an application to use the + tap-and-hold gesture. + +**************************************************************************** +* Third-Party Code * +**************************************************************************** + + - libjpeg-turbo was updated to version 2.0.3 + + - QtSQL + * Updated sqlite to v3.29.0 From f0b93f7a4b4281c5470280eb36b7c0ef5948a921 Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Thu, 24 Oct 2019 08:34:46 +0200 Subject: [PATCH 3/3] iOS: Account for UITextInteraction when building against 12.x or lower MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In iOS 13.0 we can handle UITextInteraction as normal, but in lower versions it is not available to utilize at compile time. So we have to check for the other types instead and return if it is not one of those. Change-Id: Icbc5558e677ed40c03f30a174e2d79b87f489f68 Reviewed-by: Tor Arne Vestbø (cherry picked from commit 3916b8a28bc9c55e10f4de611ed76e17017494aa) --- src/plugins/platforms/ios/quiview.mm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/plugins/platforms/ios/quiview.mm b/src/plugins/platforms/ios/quiview.mm index 962b1d929f3..91a186baced 100644 --- a/src/plugins/platforms/ios/quiview.mm +++ b/src/plugins/platforms/ios/quiview.mm @@ -630,10 +630,8 @@ Q_LOGGING_CATEGORY(lcQpaTablet, "qt.qpa.input.tablet") - (void)addInteraction:(id)interaction { - if (__builtin_available(iOS 13.0, *)) { - if ([interaction isKindOfClass:UITextInteraction.class]) - return; // Prevent iOS from adding UITextInteraction - } + if ([NSStringFromClass(interaction.class) isEqualToString:@"UITextInteraction"]) + return; [super addInteraction:interaction]; }