Some repos/modules don't have configure.json files and thus no
qt_cmdline.cmake files. Make qt-configure-module check for the file's
existence. As drive-by fix, surround the configure.cmake's path by
double quotes.
Change-Id: If1a91a0bba0c2fd282cfa08fa6ff2bb20f0a15ba
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
We need to make sure to create a config.opt file, even if it's empty.
Change-Id: If1e41cea2f3b5f3ce67f30285b77c58f7376546a
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
For modules that have MODULE_INCLUDE_NAME set (for example ActiveQt) we
must use this name for the installation rules too.
Fixes: QTBUG-86484
Change-Id: I1b97cf534ea5e41655c7b3fdd0330b2f58356a3a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This reverts commit f51b690e91.
The commit made all animation tests in qtdeclarative on macOS
flaky.
Change-Id: I4ccaa879df7e2ba7e253657de01cbabc9b2c655f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
AFAICT with GSSAPI the normal workflow is to run kinit or similar and
authenticate before running programs relying on it. Therefore
we can try to get the credentials before we choose whether or not
to use Negotiate.
Pick-to: 5.15
Task-number: QTBUG-85123
Change-Id: If0478fdd45389b2939ad87c2f582776fe56959bb
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
-no-iconv configure parameter was removed and various changes to the
configure parameters.
Change-Id: I8716388b20846cdd1ba63a715308813a312dea65
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This is so that they are in line with the "value_type" usually found in
containers. Associative containers have "key_type" and "mapped_type" and
we will use those names for access to elements in QMetaAssociation.
Using "value" as name for sequential containers improves consistency.
Change-Id: I628b7e1446bb2d56843b843bca72d279a6b247e6
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Introduce a smart pointer that saves its constness, even if the
constness of the parent object changes. This allows us to implement the
const and mutable iterators in the same class.
Change-Id: I156e564c7fa2ecc8981c6d71861d796a5cbfec66
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
The GSSAPI thing is a bit noisy and not useful unless you're
debugging it specifically.
Pick-to: 5.15
Change-Id: I4a8c14159ec889776d06e0970ddf66083d788b63
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
In QAuthenticator "detach()" does not do what you expect.
First off it doesn't detach at all, and secondly it will reset the phase
that the authentication is in. This last part is intended, but it has
one issue: if setUser/setPassword is called with the same arguments
every time we ask for credentials then we never reach a fail-state since
it thinks we will have a new chance to authenticate.
Pick-to: 5.15
Change-Id: I02e2e42242220f3fced3572323e6492429cf173e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Our authentication code is race-y by design:
1. When two requests are fired off and queued at the same time in the
same QHttpNetworkConnection then if one of them encounters
"authentication required" then it will copy whatever credentials it got
to all the other channels in the connection. This is likely what the
first part of the test is testing.
2. If a later request is fired off and it includes credentials in the
url then the newly included credentials should be used instead of the
cached ones.
The race here can occurr when one socket either takes too long to
connect or the connected signal is not received early enough. Then the
first socket is used for both requests and then we can hit case #2 when
the url contains credentials.
Pick-to: 5.15
Change-Id: I646a5378d8c1256b2de98b51912953df29f68cb2
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
It's problematic if we have already used these credentials and it
failed. Since then we emit authenticationRequired only for QNAM to
intercept it and "helpfully" suggest we use the same credentials again.
By moving on we can check the cache or ask the user about the necessary
credentials.
Pick-to: 5.15
Change-Id: Idaac5ae71167462369b66194ab6b1f77113d636a
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Although this is more of a QNAM thing.
In some cases what we load from the cache might be credentials we have
already tried (and failed with, thus leading us to emit the
authenticationRequired signal). With this patch we will fall through
more often and ask the user for credentials.
Pick-to: 5.15
Change-Id: If2a556883c3ea5b0b225f4df273d38353b552b54
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
This configure switch sets the CMake variable
CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> per release config to ON.
The feature 'ltcg' is enabled if any of the variables
CMAKE_INTERPROCEDURAL_OPTIMIZATION,
CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> are ON.
In order to implement the check, configurejson2cmake had to be extended
to be able to write extra CMake code before and after the feature
definition. This extra code can be added to a feature mapping below the
keys "cmakePrelude" and "cmakeEpilogue".
Task-number: QTBUG-85373
Change-Id: Ia2eb907edcf087f137977a9b090705397f83eb05
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Fix superfluous space in qtgui.tracepoints and make tracegen more
lenient towards unknown types (the ETW implementation outright ignores
those).
Pick-to: 5.15
Fixes: QTBUG-86546
Change-Id: I71cc323afa1009dbaefe20e55818ecb6c0b09c59
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
This is added to Interbase in v7 and Firebird in v3 which has been
available for sometime now. This means the minimum supported for
Interbase is now v7.
[ChangeLog][QtSQL][Interbase] The minimum required version for Interbase
is now v7.
Fixes: QTBUG-83401
Change-Id: I9927fd962f25c935be8ed5d2b7c76c00fb88cd8c
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
In Android API level 23 or lower it will still be able to open the file
even if the permissions are not provided. If the system is not going to
allow it then it will prevent it later on. So we trust the system to
block access if need be.
Pick-to: 5.15
Change-Id: If663e3cf0a10818931577988abdc0fb8ec2650db
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This change shouldn't matter much to widgets, since style names
there are case insensitive. But for controls style names are
case sensitive, and in that case, "macOS" looks more correct.
Change-Id: Ia1d442bce465692ff58fecba1cc68ecbb2e52549
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This patch amends 19874d6a63. That patch caused a
crash to occur when running the auto test
tst_QQuickApplicationWindow::attachedProperties().
The crash can be traced back to QMetaType trying
to access fromType.metaObject(), which is null.
This patch will add a guard to ensure that we
don't try to call a function on an object that is null.
Fixes: QTBUG-86517
Change-Id: Idafd154a7b6a43e16126038fc5f9b30d7871f0d0
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Instead of doing string formating first and then using QTest::newRow,
we can do both at the same time using QTest::addRow
Change-Id: Ia5c90eb705a806e37b96a1fa174a6557f91bee6d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
To not have to bother with encodings, a few QStrings are changed
to QByteArrays. This way, a few calls to QString::fromLatin1 and
to QString::toLocal8Bit can be removed
Change-Id: Ia0cf27fc2a86f9842ed0f3ebe47b050bb8a3f4e6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Consumers of QtGui should link explicitly to xlib if needed.
Fixes: QTBUG-86421
Change-Id: Ibc94eb1c1ac405b53749b320c388b037bf693a08
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This was always a compile-only dependency and atspi includes are only
used in private headers. The atspi headers can never be a requirement
for consumers of QtGui.
In Qt5 this code was part of the QtLinuxAccessibilitySupport private
module, and for that module the atspi dependency was public. This only
affected users that explicitly instructed qmake to pull in the
linuxaccessibility_support-private module.
Task-number: QTBUG-86421
Change-Id: I23c6a1c466f86b2015dde13fca605fd26299c9db
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Add a convenience script to configure a Qt module separately.
This script reads and interprets the qt_cmdline.cmake files of the
Qt module to be configured and eventually calls qt-cmake-private.
Example usage:
<install-prefix>/bin/qt-configure-module <source-root>/qtdeclarative
-qml-network -- --trace-expand --trace-redirect=cmake.trace
Change-Id: I026f1a050cd3f4df740611c32ba8c03161bba7a3
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Make this file parsable by tools that are less lenient than github.
Triple-backquotes are for fenced code blocks. Inline code uses backticks
(or double backticks if you have code with backticks).
Change-Id: Ic49d946fbcaa6f7e97702eadf4a0b0c726fc3217
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
If '-make examples -no-compile-examples' was specified, sources of Qt's
examples would be installed, but the examples would not be built.
This switch has always been a source for confusion and is only
interesting for distributors, who can just package the examples
directory tree.
Change-Id: I0291d70e4951d98b553a4abf217db49d05316d3a
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Remove around 1000 compiler warnings about missing overrides
in our auto tests.
This significantly reduce the compiler warning noise in our auto
tests, so that one can actually better see the real problems
inbetween.
Change-Id: Id0c04dba43fcaf55d8cd2b5c6697358857c31bf9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Looks this is redundant in fact and unneeded. The check can never be
evaluated to true, since if so, it would mean it had failed in the
previous iteration, in which we already handled the exit from the loop.
Fixed also some comments.
Task-number: QTBUG-83419
Change-Id: I4fe56bfac39cd58b1166967f3ccb80cdff882748
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Windows only so far, need a similar patch for *nix, or an alternate
approach when there is no server set up.
Pick-to: 5.15
Task-number: QTBUG-85123
Change-Id: Iff7a6b1540a2f1984153a237eea07c7bb1970064
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
If we compiled without support for it then we shouldn't consider it an
option either.
Pick-to: 5.15
Change-Id: If6e0a6afa738f375e360bf3d439196b39e47bee8
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
It only contained two aliases that have been deprecated
since 2012.
Change-Id: I6f65aa5144aca2d8d99f8a6e586b805f685afad2
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
It has been in Qt for some years now and 6.0 marks a good point to
enable it by default. The exception is connectToHostEncrypted where we
still require the users to enable it explicitly since there's no logical
way to disable it.
[ChangeLog][QtNetwork][QNetworkAccessManager] HTTP/2 is now enabled by
default.
Fixes: QTBUG-85902
Change-Id: Ia029a045727cc593d77df9eb3a5888522ad19199
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
The main snippets project must be a subdirs project.
Move some files and update the affected documentation.
Task-number: QTBUG-86497
Pick-to: 5.15
Change-Id: I60073d1b8bd53aa09600eeccf06ba8457ac7c708
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
The include directive was incorrectly written.
This amends 5c092c2b40.
Change-Id: Ia72ca3a5d5e1486ade4d71a764550d36979640f6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
qt_create_tracepoints(Core) creates a dependency from Core to
Core_tracepoints_header, but the helper library Core_qobject also uses
qtcore_tracepoints_p.h and must therefore depend on
Core_tracepoints_header too.
This amends 5c092c2b40.
Change-Id: I0ed51f3ab9accea00f524c170cd319bb8af11df7
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
We need to use the imported host tracegen target to generate files, not
the one we're going to cross-build.
This amends 5c092c2b40.
Change-Id: Ib74dd2d87110383c31216872eb55bebf5d90df37
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
The removal of the QProcess::start(QString, OpenMode) leads to more
porting work than anticipated. A call like
QProcess p;
p.start(cmdline);
must be transformed in the following cumbersome way:
QProcess p;
QStringList args = QProcess::splitCommand(cmdline);
QString program = args.takeFirst();
p.start(program, args);
This patch revives QProcess::start(QString, OpenMode) and renames it to
QProcess::startCommand. This is still source-incompatible, but the
transformation is much simpler:
QProcess p;
p.startCommand(cmdline);
[ChangeLog][QtCore][QProcess] Added QProcess::startCommand(QString,
OpenMode) as replacement for the removed QProcess::start(QString,
OpenMode).
Change-Id: I5499bbb39a025e115042c43a4cc63affddae585c
Reviewed-by: hjk <hjk@qt.io>
Such expressions were translated to "foo NOT = 0" which is invalid code.
Change-Id: I8b485bfe1d1f553c08df3b5d59b0f39f2dcbd5c0
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
${QT6_HOST_INFO_BINDIR} is returning an empty string making
the tools paths unusable, and android apps building fails.
Partially revert 09ac1bdfc5.
Task-number: QTBUG-86557
Change-Id: I1522b3a4b45fbcb41894ea3bd7c714f7a79eb954
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Don't use evil hacks that make assumptions
about QString internals.
Change-Id: I663602d197f0fcf62886dbfb9a87547097cdab04
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Not forwarding the native virtual key code when sending key events
in the flagsChanged handler caused a number of problems, e.g. the
inability to determine which of the Alt or Shift keys were pressed.
Use handleExtendedKeyEvent to include the native virtual key code.
Patch inspired by Nyan Pasu.
Fixes: QTBUG-69608
Change-Id: I15e9ff1069528d4b50ee4638ab2d8a6fd279db0b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
It's not guaranteed that all curves we want to use are supported
by a specific build of OpenSSL library we have to link with. Filter
out files that contain EC, which is not among the curves, reported
by QSslConfiguration::supportedEllipticCurves.
Fixes: QTBUG-46203
Pick-to: 5.15
Change-Id: I70d7e6fcacb3d81f8c771e4a8d6cca06295e7474
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>