Commit Graph

58531 Commits

Author SHA1 Message Date
Mårten Nordheim
4f17a64f35 tst_QTcpServer: convert QSKIP to blacklist
So we can gather statistics on whether it is still failing

Pick-to: 6.4 6.2
Change-Id: I1f4080f4d96f31ce2b689cda175af3a35563e232
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2022-10-10 19:22:32 +02:00
Doris Verria
2acd212acc QGuiApp: Set QStyleHints's appearance based on platform theme
QStyleHintsPrivate::setAppearance was only called when the theme
changes, and up until then the reported QStyleHints::appearance()
was Unknown. To fix, the QGuiApplication should set the
appearance once the platform theme is created.

Change-Id: I5353031628d1f1a8b1e23bed0b2fb0bc0622cbe8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2022-10-10 15:48:28 +02:00
Doris Verria
abbd9c91f5 QIOSTheme: Set appearance based on UIScreen if no windows created yet
Set the theme's appearance based on the UIScreen's, which follows the
app's or system's configuration, if no UIWindows are created yet.

The UIWindow and UIScreen will have the same appearance (the
traitCollection change is propagated hierarchically from screen to
window) unless UIWindow's overrideUserStyleInterface is explicitly
set to differ from that of the screen. In that case,
traitCollectionDidChange will be called for the window (but not the
screen) and when we update the palette calling the UIColor API, the
colors will be resolved based on
UITraitCollection.currentTraitCollection property, which follows the
window's appearance. That is why we need to set the theme's appearance
based on the window's.

Change-Id: I43207f351559fb82efc2f281eafb3cd1c96bbf75
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-10-10 15:48:16 +02:00
Mårten Nordheim
9e7f91781d WindowsKeyMapper: Fix unsigned/signed mismatch error
error C2220: the following warning is treated as an error
warning C4018: '>': signed/unsigned mismatch

Pick-to: 6.2 6.4
Change-Id: I4ba59f3aa6bbd7b37fe469e6271df207a7d11c99
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2022-10-10 13:06:37 +02:00
Mikolaj Boc
bbbc952d01 Use the target output name for test targets on WASM
Since all tests can now be run by the batched test runner, rename the
main resource to a more suitable {_target_output_name}.html

Change-Id: Icda80ce95ac9ae51851d52ebb4b1ce668c528324
Reviewed-by: David Skoland <david.skoland@qt.io>
2022-10-10 13:06:37 +02:00
Thiago Macieira
8c1776ee07 qpoll: disallow file descriptors bigger than FD_SETSIZE
I don't know which platforms qpoll.cpp is still used and if in those
there's even a way to increase the file descriptor limit above
FD_SETSIZE's. But this is an easy change and protects against buffer
overruns.

Pick-to: 6.4
Change-Id: I810d70e579eb4e2c8e45fffd1718ca1aac8e6bef
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-10-10 04:06:37 -07:00
Yuhang Zhao
f003e25258 QtRhi: make two plain arrays inline and constexpr
In the current case they can be inline and constexpr.

Pick-to: 6.4
Task-number: QTBUG-100485
Change-Id: I8c200c0a756edbff914c4be8ba08fe6afbd61114
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2022-10-10 18:46:38 +08:00
Fushan Wen
2093d65a80 [Linux] Remove workaround for glibc to actually unload a library
The workaround was added to fix a bug in glibc prior to 2.25, which was
released on 2017-02-05. Since the supported platforms of Qt6 at least
have glibc 2.26 (SUSE Linux Enterprise Server 15 SP2), it's time to
remove the workaround.

See also: http://sourceware.org/bugzilla/show_bug.cgi?id=11941

Pick-to: 6.4
Change-Id: Ia2aab5b0a512c44d4a4312877a0177b6b5df6428
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-10-10 09:49:23 +00:00
Ivan Solovev
30b881b394 qforeach.h: do not include qglobal.h
The qforeach.h header was extracted in
ffcf4f4001, so this is not a new header.
Still, it does not have any usages in Qt itself (except for the include
in qglobal.h), and the influence of the user code should also be
minimal, considering that Qt is built with QT_NO_FOREACH by default.

[ChangeLog][QForeach][Potentially Source-Incompatible Changes] The
qforeach.h header no longer includes qglobal.h. If you relied on the
transitive include, you may have to include qglobal.h explicitly.

Task-number: QTBUG-107046
Change-Id: I2588b2e774c456d926b6a63d0377e0a7991bf973
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2022-10-10 10:25:13 +02:00
Fushan Wen
c9758d76c7 Send string to Atspi DBus interface on name/description changed
Orca only accepts string or list type for
object:property-change:accessible-name and
object:property-change:accessible-description events. This fixes
NameChanged and DescriptionChanged not being announced by Orca.

This also adds check for accessible interface and will ignore events
from invalid interfaces on name/description changed.

See also: https://gitlab.gnome.org/GNOME/orca/-/issues/255

Pick-to: 6.4 6.2
Change-Id: Iaaa50678e7223951e0f3af99c5e04aa7458e4d0d
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-10-10 08:23:20 +00:00
Pino Toscano
ac17a394a5 Add M68k detection
- detect the M68k architecture (Motorola 68000) and define
  Q_PROCESSOR_M68K
- set the right machine type in QElfParser for M68k ELF files

Change-Id: Ie5694abbe1ae2bfeb5692defba0ca6062c1d60ac
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-09 21:57:53 +02:00
Ahmad Samir
394b4c9e49 QDBusMarshaller: ignore false-positive -Wformat-overflow gcc warning
Change-Id: Icd5d21ec7ebd16476a1070a18ac618b87575d5f6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 16:51:14 +02:00
Marc Mutz
3cd9536b7f [docs] QMap: fix missing toStdMap()&& overload docs
Amends 14090760a8.

I tried to find a linkable definition of valid-but-unspecified on
en.cppreference.com, but failed, so I'm using partially-formed like
everywhere else in Qt docs.

Ideally, we'd have the discussion of partially-formed (and
valid-but-unspecified) in some extra page and simply link to
it. Created QTBUG-106251 to track the issue.

Pick-to: 6.4 6.3 6.2
Change-Id: I04c60cf903b2617c89467d1d040d5aebb7eccd53
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 13:12:28 +00:00
Marc Mutz
9c1a00271b [docs] Adjust qExchange() docs for the present, where C++17 is required [2/2]: 6.3+
In C++17, std::exchange() is unconditionally available, so focus
attention on the missing constexpr and noexcept.

Pick-to: 6.4 6.3
Change-Id: I5eb466b784bd741a7313a1554d8b7b67711d2cbc
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 15:12:28 +02:00
Marc Mutz
8cb4ada2a4 [docs] Adjust qExchange() docs for the present, where C++17 is required [1/2]: 6.2
In C++17, std::exchange() is unconditionally available, so focus
attention on the missing constexpr.

Pick-to: 6.4 6.3 6.2
Change-Id: Ia09bf6da7bd62e5a41083cfc5253e30a0298099f
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 15:12:28 +02:00
Marc Mutz
9bd287335b QPluginMetaData: replace manual loop with q20::copy_n
Pick-to: 6.4
Change-Id: I7061b18efd2ff905cc36df41d680c0612a505a76
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 15:12:27 +02:00
Yuhang Zhao
67c835d201 QWindowsKeyMapper: simplify the code a bit (2/2)
The default menu item will appear in bold font, and calling
SetMenuDefaultItem() can do the job for us. Use it instead of
calling SetMenuItemInfo() to save some typings.

Change-Id: Ifa834adc45f3aafd67077c089fb4e7b5d3fd3e02
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-10-08 20:35:17 +08:00
Yuhang Zhao
0d7b8a0d9e QWindowsKeyMapper: replace legacy values with new one
Replace the legacy MF_ constants with the new MFS_ constants,
MFS_ENABLED is the same (0x0), and MFS_GRAYED is equal to
(MF_DISABLED | MF_GRAYED)

Change-Id: Ib0bf166d9c7f09d38026c9bf01d8bf05982f88c4
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-10-08 20:35:16 +08:00
Marc Mutz
35649760e5 forkfd: fix Clang 15 ATOMIC_VAR_INIT deprecation warning
Replace the macro use with the expansion of the macro as it appears in
both libc++ as well as libstdc++.

Fixes Clang 15 C++20 warning-turned-error:

  forkfd.c:157:39: error: macro 'ATOMIC_VAR_INIT' has been marked as deprecated [-Werror,-Wdeprecated-pragma]
  static ffd_atomic_int forkfd_status = FFD_ATOMIC_INIT(0);
                                        ^
  forkfd_c11.h:51:37: note: expanded from macro 'FFD_ATOMIC_INIT'
  #define FFD_ATOMIC_INIT(val)        ATOMIC_VAR_INIT(val)
                                      ^
  /d/llvm/15/bin/../include/c++/v1/atomic:2671:43: note: macro marked 'deprecated' here
  #  pragma clang deprecated(ATOMIC_VAR_INIT)
                                            ^

Matching OpenDCDiag pull request:
https://github.com/opendcdiag/opendcdiag/pull/159

Pick-to: 6.4 6.3 6.2 5.15
Change-Id: I0204f7fcd6039624ed75d414daf9b6a771bfd9d0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-08 08:06:42 +00:00
Thiago Macieira
71f32653cb QWaitCondition/Doc: add a simple explanation of the time units
Pick-to: 6.4
Fixes: QTBUG-107174
Change-Id: Id8d5e3999fe94b03acc1fffd171ae572957e15bc
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-10-08 01:06:42 -07:00
Marc Mutz
6fdd986bd9 QPdfEngine: port from raw zlib to qCompress()
Hotfix for disappearing zlib symbols caused by QTBUG-104972
and QTBUG-106542 fixes, to be merged later on.

Pick-to: 6.4 6.3 6.2
Change-Id: I21e0bf13c866fa7bb45c7587c81e7fddddad90f9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2022-10-08 08:06:41 +00:00
Pino Toscano
e81cba0cd3 Add HPPA detection
- detect the HPPA architecture (PA-RISC) and define Q_PROCESSOR_HPPA
- set the right machine type in QElfParser for HPPA ELF files

Change-Id: I5214ce64ef1fdd0ecca3d6c1694c5db9b2852a22
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-07 23:01:01 +02:00
Alexandru Croitor
f7a34630a1 CMake: Use unix paths in android xml files
We aim to allow building Qt for Android on one host, and make it
usable on any host.

Previously when built on a Windows host, we embedded windows style
paths into the android -dependencies.xml files, which caused
androideployqt to fail deployment when building a project on a unix
host.

In Qt 5, the dependencies xml files for Windows Android packages had
unix style paths. Thus switch to always using unix styles paths on
all platforms.

Amends a9d2c5b6d7.

Fixes: QTBUG-107249
Change-Id: I851d3e0b08415b4c7f0d22baf43c10c715879ee7
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-10-07 18:18:23 +02:00
Marc Mutz
21991a1278 corelib/CMakeLists.txt: remove duplicate qxpfunctional.h
Amends 343e0ff485.

Pick-to: 6.4
Change-Id: Id7054f777d6ae1ec3d9c94f144e6b0c6db8f9352
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
2022-10-07 18:11:53 +02:00
Marc Mutz
dd562b3672 Replace qExchange with std::exchange
None of these users require C++20 constexpr or C++23 noexcept, the
only remaining difference between std::exchange and qExchange.

This leaves a single qExchange() user, in QScopedValueRollback, that
requires the constexpr version, only available from C++20, and thus
remains unported.

Task-number: QTBUG-99313
Change-Id: Iea46f6ed61d6bd8a5b2fd9d9ec4d70c980b443a2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-07 18:11:36 +02:00
Marc Mutz
e08fa9cc01 qcore_mac_p.h: compile-optimize inline swap functions
Instead of using the overly-generic qSwap() monster, use

- qt_ptr_swap() for swapping raw pointers
- member-swap for swapping smart pointers
- std::swap() for swapping scalars

In QtCore, this has proven to give a nice reduction in compile time
for Qt users, cf. b1b0c2970e.

Pick-to: 6.4 6.3 6.2
Task-number: QTBUG-97601
Change-Id: Iad8e6c11ebcc3ff822479c36f5faff88992b1165
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-10-07 18:11:18 +02:00
Marc Mutz
d4e62a9768 Short live q20::transform()!
It just adds constexpr to it (we're ignoring the range version).

Apply it to QOffsetStringArray, where it replaces the copyData()
function.

Pick-to: 6.4
Change-Id: I6caf3b5fd2e60f4fcb0b116684c3ad6a8043f38e
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-10-07 18:11:02 +02:00
Marc Mutz
d6250e2a0d Short live q20::copy{,_n,_if}!
All they do is add constexpr.

Use them in QOffsetStringArray where they replace a custom
implementation, except, as usual, the custom implementation does one
tiny thing more, so not all uses can be replaced.

Explicitly not use it in QStaticByteArrayMatcher to not cause
conflicts with the introduction of QStaticLatin1StringMatcher.

Pick-to: 6.4
Change-Id: I3c102a7e934a1d7d5fae4cbc629a4fabf2c47c92
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-10-07 18:10:56 +02:00
Timur Pocheptsov
e17372e723 QCocoaWindow::windowStyleMask: make popups non-resizable
Otherwise, context menu can be resized.

Pick-to: 6.4 6.2
Task-number: QTBUG-106925
Change-Id: I409d0113fd92ca89b14f068c391dd9c0ddb79ce7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-10-07 13:32:32 +02:00
Liang Qi
8b143f0aed tests: skip two tests in tst_QDockWidget on Wayland
This amends 9ff40b59da .

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: Ie66205c5402d4346ffb61619ccb6a955623f5984
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:24 +02:00
Liang Qi
e37baad7fc tests: skip tst_QAction::disableShortcutInMenuAction() on Wayland
QWindow::requestActivate() is not supported.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: Iacdcf4ad4f6da4a5a996f26d3b97fb507a4b116b
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:22 +02:00
Liang Qi
7d38320c4b tests: skip two tests in tst_QAbstractItemView on Wayland
QWindow::requestActivate() is not supported.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: I9080fbb0ae0a604ad4a7ffa55ba3243d1cf96be8
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:21 +02:00
Liang Qi
1dcd4d7171 tests: skip tst_QGraphicsView::embeddedViewsWithFocus() on Wayland
QWindow::requestActivate() is not supported.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: Ie9583e55d298fe392d8ab09e9a10d8fce5ce3fee
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:18 +02:00
Liang Qi
a247da320c tests: fix window activation usage in tst_QGraphicsWidget
- Skip tests that depend on programmatic window activation on platforms
  where this is not supported, such as Wayland.
- Change tests that don't rely on the window being activated to use
  qWaitForWindowExposed() instead.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: Ieb4280343a725a2cbdc46a8ac5c657beeb2e7e57
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:16 +02:00
Liang Qi
19dabbbc73 tests: skip two tests in tst_QGraphicsProxyWidget on Wayland
QWindow::requestActivate() is not supported.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: I41c0c24c73ea5add821109172470d37a9b6211a8
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:15 +02:00
Liang Qi
65d9b48a70 tests: skip tst_QDialog::showAsTool() on Wayland
QWindow::requestActivate() is not supported.

Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: Id8f9cc1d6a29b4d608a080f5b40a5369d7bd8da9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:13 +02:00
Liang Qi
f8898cae83 Revert "tests: XFAIL tst_QOpenGL::bufferMapRange() on Wayland"
This reverts commit e49d2daf19.

This doesn't fail on Wayland, perhaps a false alarm.

Fixes: QTBUG-100918
Pick-to: 6.4 6.2
Change-Id: I1415afdeaf1bff26dba3b3100b2aafcda00bcdd9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:12 +02:00
Liang Qi
dd608329b2 tests: skip tst_QApplication::activateDeactivateEvent() on Wayland
Task-number: QTBUG-107153
Pick-to: 6.4 6.2
Change-Id: I69bd4a0d4217b5e4c2cbee8b25c5bd69509e3329
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2022-10-07 13:20:10 +02:00
Liang Qi
5ddb015038 Revert "tests: XFAIL tst_QGuiApplication::genericPluginsAndWindowSystemEvents()"
This reverts commit ae1197fc56.

This doesn't fail on Wayland, perhaps a false alarm.

Fixes: QTBUG-100891
Pick-to: 6.4 6.2
Change-Id: I3e1d2488b090f186c64d63cb6c9f97dfaafc8fff
Reviewed-by: Liang Qi <liang.qi@qt.io>
2022-10-07 13:20:08 +02:00
Laszlo Agocs
194c92fa8b rhi: Add the wgsl enum value for shaders
There is no clear path to generating WGSL shaders, but that
should not prevent QShader from being able to contain such
shaders.

Change-Id: I819e1c67c38d675971907a3a80885ddec78da0f6
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2022-10-06 22:55:35 +02:00
Tor Arne Vestbø
b93fabddd4 syncqt: Mention full path and line number when emitting warning
Makes it easier to navigate to the offending file.

Change-Id: Ie2de5d6a0735952e72444b0ac8710fc44311eace
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2022-10-06 14:41:20 +02:00
Tor Arne Vestbø
affb87741e syncqt: Don't mention module name when printing errors/warnings
The module name is already clear from the build rule, e.g:

[17/451] Running syncqt.cpp for module: QtCore
WARNING: qtconfigmacros.h includes qconfig-bootstrapped.h when it should include QtCore/qconfig-bootstrapped.h

Change-Id: I9f306768e4f415dbdc20e58a93898cb7bdd83298
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2022-10-06 14:41:18 +02:00
Tor Arne Vestbø
3165bb8da2 Fix indentation in QSharedMemory docs
Change-Id: I99293a51bf001bbf3bf6a4afeee332a4bcca2a65
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:41:04 +02:00
Tor Arne Vestbø
3815389912 Document that QSharedMemory requires -feature-ipc_posix on Mac App Store
The QSharedMemory backend build system machinery does not currently
support multiple backends, so the choice has to be made at configure
time.

Pick-to: 6.4 6.2
Fixes: QTBUG-106910
Change-Id: I4b814ca1c131a2860467e96cc5a6dd7cd03fc8b7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:41:02 +02:00
Mårten Nordheim
87d12f7f21 Fix build with SPARC Solaris
Change-Id: I8969d7950f7c5b6164f87ab37f1089b7bc8cae8b
Done-by: Petr Šumbera
Pick-to: 6.4
Fixes: QTBUG-107178
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:29:59 +02:00
Eric Lemanissier
539165dae9 fix fontconfig detection
the "official" variable name is Fontconfig_FOUND
cf https://cmake.org/cmake/help/latest/module/FindFontconfig.html

Pick-to: 6.4 6.3 6.2
Change-Id: I40ec178a18baabe47d8d66845ff03add9efc0e51
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2022-10-06 12:27:19 +00:00
Ievgenii Meshcheriakov
df6ba4bc16 tst_qurluts46: Support \u escapes in the test data
These escapes were documented but not used until the version 15.0.0
of Unicode.

Task-number: QTBUG-106810
Change-Id: If48dcd80acf32989e3f47676ca3d41848a325c0e
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:26:25 +02:00
Ivan Solovev
9d1e928512 Do not include qglobal.h into the new headers
Several new headers were extracted from qglobal.h in scope of
QTBUG-99313. This commit makes sure that none of them actually includes
qglobal.h.
As those files are new, it should be safe to introduce this change, as
it shouldn't have any impact on the user code.

This patch also modifies the autogenerated module exports header to
include qglobal.h before the include guard. This is needed to prevent
circular dependencies which result in Q_<MODULE>_EXPORT being
undefined.

Task-number: QTBUG-107046
Change-Id: I8d998792fd8129173d9ec811557e7d7604282813
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:26:25 +02:00
Ivan Solovev
f03f830e71 Bootstrap: explicitly include stdlib.h to check for __GLIBC_PREREQ
Previously the code was relying on the includes in qglobal.h, but now
when we try to get rid of qglobal.h we can end up in a situation when
qconfig-bootstrap.h was first included before qglobal.h (__GLIBC_PREREQ
not defined), and also included once again after qglobal.h
(__GLIBC_PREREQ defined, at least on linux). This resulted in
redefenition of Qt features dependent on __GLIBC_PREREQ.

This patch fixes it by explicitly including the stdlib.h header which
will provide __GLIBC_PREREQ definition when it is available.

Task-number: QTBUG-107046
Change-Id: Idbf7a11151c5f81723131daf25c06ef454ff5cbb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2022-10-06 14:26:25 +02:00
Sona Kurazyan
91b85ec868 QtGlobal: update the description section
Don't mention the macros, functions and types that are moved to other
headers. Descriptions for most of these were moved to docs of
corresponding headers. Update the <QtGlobal> docs to only mention what
is currently there.

Task-number: QTBUG-106154
Change-Id: I693b7665c75d9b7c129e0646a4202e6d3e4e8499
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2022-10-06 14:26:25 +02:00