Change the build system to enable building with Qt 6
This was built with:
-DQT_MAJOR_VERSION=6
-DEXCLUDE_DEPRECATED_BEFORE_AND_AT=5.90.0
-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x055a00
A QGlobalStatic(QMutex, foo) can't be used to directly construct a Q6MutexLocker (the latter is a function template in Qt6), instead use GlobalStatic::operator() to get a pointer to the underlying QMutex. This works in Qt5 and Qt6.
QChar implicit conversion from an int isn't allowed in Qt6.
Edited by Ahmad Samir