qt6-bb10/tests/auto
Alexey Edelev b89d63515b Replace the syncqt.pl script with syncqt tool
syncqt.pl adds an extra dependency on perl when building Qt. Modern C++
provides the convenient cross-platform way to access a filesystem and
to use regular expressions, so we may replace the perl script with C++
application. The syncqt executable is built at configure time and
installed as QtCore tool. It's running at configure time to deliver the
required header files for IDE to build a consistent code model and at
the build time to keep tracking changes in header files and generate
the missing aliases without reconfiguring. 'syncqt' only parses header
files from a CMake build tree, so the resulting Qt installation only
contains interfacing headers that belong to the platform that Qt is
built for. 'sync.profile' files are not used as the 'source of truth'
for sync qt procedure anymore, all the necessary information is taken
from either CMake files at configure time or from the module header
files while parsing them.

syncqt.pl is still in place since it's required as fallback solution
for a smooth transition to the new syncqt implementation for all qt
repositories.

This patchset only enables the C++ based syncqt for 'qtbase'
repository.

From the performance perspective C++ version works faster then perl
script, also the configure time is reduced significally on subsequent
reconfigurations - up x2 times faster when re-configuring repository,
but it also takes time to compile the tool itself the first time.
Numbers for qtbase:
           syncqt.pl  syncqt.cpp
 initial:  0m16,035s  0m20,413s
 reconfig: 0m6,819s   0m3,725s

The syncing procedure can be run separately for each module using
<ModuleName>_sync_headers targets. The 'sync_headers' target can be
used to sync all the modules at once.

Task-number: QTBUG-87480
Task-number: QTBUG-103196
Change-Id: I8c938bcaf88a8713b39bbfd66d9e7ef12b2c3523
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2022-09-27 13:12:11 +02:00
..
bic/data Add BiC data for the new way to do BiC testing 2022-05-12 13:33:41 +03:00
cmake Replace the syncqt.pl script with syncqt tool 2022-09-27 13:12:11 +02:00
concurrent Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
corelib QDebug: Support standard strings and string views directly 2022-09-27 14:12:11 +03:00
dbus Port tests away from using q{Set}GlobalQHashSeed 2022-08-26 14:15:24 +02:00
gui Fix setScaledClipRect autotest for reading SVG format 2022-09-27 13:12:11 +02:00
guiapplauncher
network QNetworkReply: honor legacy behavior of setting Accept-Encoding 2022-09-22 15:34:51 +00:00
opengl
other tests: improve tst_gestures on GNOME 2022-09-19 14:39:28 +00:00
printsupport tests: Fix tst_qprinterinfo for CUPS printer instances 2022-08-24 14:20:14 +02:00
shared Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
sql Rest of QtBase tests: port away from deprecated methods 2022-08-30 22:46:35 +02:00
testlib Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
tools moc: Add basic support for nested inline namespaces 2022-09-26 21:14:39 +02:00
wasm Fix QWasmWindowStack::topWindow when the stack is empty 2022-09-12 20:09:03 +02:00
widgets Prevent dock widget from resizing upon unplugging from main window 2022-09-21 18:41:43 +00:00
xml tst_QDom: replace a final u"..."_qs (deprecated) with u"..."_s 2022-09-22 17:34:51 +02:00
CMakeLists.txt Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
network-settings.h Use SPDX license identifiers 2022-05-16 16:37:38 +02:00