qt5base-lts/mkspecs
Morten Johan Sørvig ecb92aacab wasm: add new event dispatcher implementation
Add QEventDispatcherWasm to QtCore. The event dispatcher
supports managing event queue wakeups and timers, both
for the main thread or for secondary threads.

Blocking in processEvents() (using QEventLoop::WaitForMoreEvents)
is supported when running on a secondary thread, or
on the main thread when Qt is built with Emscripten’s
asyncify support.

Code is shared for all both modes as far as possible,
with breakout functions which handle main and secondary
thread as well as asyncify specifics,. Some functions
like wakeUp() can be called from any thread, and needs
to take the calling thread into consideration as well.

The current asyncify implementation in Emscripten is
restricted to one level of suspend, and this restriction
carries over to Qt as well. In practice this means we
support one level of exec()-like API.

Note that this commit does not _enable_ use of the
new event dispatcher. This will be done in separate
commits.

Task-number: QTBUG-76007
Task-number: QTBUG-64020
Change-Id: I77dc9ba34bcff59ef05dd23a46dbf1873cbe6780
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-08-27 15:45:25 +02:00
..
aix-g++ Updated license headers 2016-01-15 12:25:24 +00:00
aix-g++-64 Updated license headers 2016-01-15 12:25:24 +00:00
android-clang Change android target SDK version to 29 2020-11-26 20:05:41 +01:00
common qmake: Add support for C17/C18 2021-08-26 18:32:44 +02:00
cygwin-g++ Updated license headers 2016-01-15 12:25:24 +00:00
darwin-g++ Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
devices Check QMake support for building apps on INTEGRITY 2021-08-26 19:32:44 +03:00
dummy move all target spec handling to qmake-based configure system 2016-12-13 18:56:34 +00:00
features qmake: Add support for C17/C18 2021-08-26 18:32:44 +02:00
freebsd-clang make mkspecs not mess up library and include search paths 2017-05-31 12:57:09 +00:00
freebsd-g++ make mkspecs not mess up library and include search paths 2017-05-31 12:57:09 +00:00
haiku-g++ Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
hpuxi-g++-64 Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
hurd-g++ Add <features.h> include to hurd-g++ mkspec 2019-02-14 14:24:56 +00:00
integrity-armv7 integrity: don't mess with QTPLUGIN.platforms 2018-11-21 23:08:10 +00:00
integrity-armv7-imx6 integrity: don't mess with QTPLUGIN.platforms 2018-11-21 23:08:10 +00:00
integrity-armv8-rcar integrity: don't mess with QTPLUGIN.platforms 2018-11-21 23:08:10 +00:00
integrity-x86 integrity: don't mess with QTPLUGIN.platforms 2018-11-21 23:08:10 +00:00
linux-aarch64-gnu-g++ Add new mkspec for cross-compiling Qt5 for AArch64 2017-03-31 00:34:48 +00:00
linux-arm-gnueabi-g++ Updated license headers 2016-01-15 12:25:24 +00:00
linux-clang Remove checks for glibc < 2 from qplatformdefs.h files 2020-04-23 06:41:32 +02:00
linux-clang-32 add mkspecs for linux clang 32 2018-08-31 05:34:46 +00:00
linux-clang-libc++ Updated license headers 2016-01-15 12:25:24 +00:00
linux-clang-libc++-32 add mkspecs for linux clang 32 2018-08-31 05:34:46 +00:00
linux-g++ Remove checks for glibc < 2 from qplatformdefs.h files 2020-04-23 06:41:32 +02:00
linux-g++-32 Updated license headers 2016-01-15 12:25:24 +00:00
linux-g++-64 Updated license headers 2016-01-15 12:25:24 +00:00
linux-icc qmake: Stop using -isystem flag 2020-06-06 09:53:59 +00:00
linux-icc-32 Updated license headers 2016-01-15 12:25:24 +00:00
linux-icc-64 Updated license headers 2016-01-15 12:25:24 +00:00
linux-icc-k1om linux-icc-k1om build 2017-02-21 14:27:16 +00:00
linux-llvm Remove checks for glibc < 2 from qplatformdefs.h files 2020-04-23 06:41:32 +02:00
linux-lsb-g++ Remove checks for glibc < 2 from qplatformdefs.h files 2020-04-23 06:41:32 +02:00
lynxos-g++ Remove checks for glibc < 2 from qplatformdefs.h files 2020-04-23 06:41:32 +02:00
macx-clang Remove -qt-xcb, -system-xcb from README and comments 2020-05-19 06:42:35 +00:00
macx-g++ Remove CFBundleGetInfoString from Info.plist templates 2019-10-04 13:09:34 +00:00
macx-icc Remove CFBundleGetInfoString from Info.plist templates 2019-10-04 13:09:34 +00:00
macx-ios-clang Bump Apple platform minimum versions 2021-03-10 23:39:45 +01:00
macx-tvos-clang Bump Apple platform minimum versions 2021-03-10 23:39:45 +01:00
macx-watchos-clang Bump Apple platform minimum versions 2021-03-10 23:39:45 +01:00
macx-xcode qmake: Switch to using Xcode's new build system 2021-06-08 17:28:47 +02:00
modules Adjust wiki links to the new redirect 2015-03-04 15:36:12 +00:00
netbsd-g++ make mkspecs not mess up library and include search paths 2017-05-31 12:57:09 +00:00
openbsd-g++ make mkspecs not mess up library and include search paths 2017-05-31 12:57:09 +00:00
qnx-aarch64le-qcc Enable stack-protector-strong for QNX 7.0.0 2017-06-13 14:01:24 +00:00
qnx-armle-v7-qcc Convert the old feature system 2016-09-15 08:24:10 +00:00
qnx-x86-64-qcc Enable stack-protector-strong for QNX 7.0.0 2017-06-13 14:01:24 +00:00
qnx-x86-qcc Convert the old feature system 2016-09-15 08:24:10 +00:00
solaris-cc Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
solaris-cc-64 Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
solaris-cc-64-stlport Updated license headers 2016-01-15 12:25:24 +00:00
solaris-cc-stlport Updated license headers 2016-01-15 12:25:24 +00:00
solaris-g++ Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
solaris-g++-64 Stop including net/if.h from qplatformdefs.h 2017-10-08 06:41:24 +00:00
unsupported Cleanup leftover QWS 2021-04-14 13:00:12 +09:00
wasm-emscripten wasm: add new event dispatcher implementation 2021-08-27 15:45:25 +02:00
win32-arm64-msvc rename win32-arm64-msvc2017 to win32-arm64-msvc 2020-10-09 08:06:29 +02:00
win32-clang-g++ Clang: use -Oz instead of -O1 to optimize for size 2019-03-21 23:46:32 +00:00
win32-clang-msvc QRandom: add support for RDSEED 2019-10-09 07:31:28 -07:00
win32-g++ qmake: Do not pass -mthreads to Clang 2020-08-28 12:58:04 +03:00
win32-icc Add new AVX512 extensions found in Intel CLX, ICL and ICX processors 2020-02-03 11:31:49 -07:00
win32-icc-k1om linux-icc-k1om build 2017-02-21 14:27:16 +00:00
win32-msvc unify windows mkspecs: define c++ flags explicitly 2018-02-22 18:45:15 +00:00