Skip to content

Draft: KDECompilerSettings: set QT_NO_CONTEXTLESS_CONNECT for level >= 6.2

[[Drafted while seeing related commits and offering for discussion, not yet closer tested.]]

It seems QT_NO_CONTEXTLESS_CONNECT would be a recommended default. In that case it should be part of the KDE default settings.

As new defaults can only introduced at the level of the current release (as older ECM would not be able to guess what a newer level implies), QT_NO_CONTEXTLESS_CONNECT will be only added for levels >= 6.2, as the next ECM release.

So any ECM consumers requiring only ECM < 6.2 will still need to continue explicitly adding that definition, but in some future, when they will bump the min required version for other needs, they can then clean up the explicit defaults. Like we did before with other defaults :)

As the release procedure of KDE Frameworks only bumps the min required version close to the release tagging and thus only then enables access to the new default flag, some custom code is added to the Frameworks compiler settings as intermediate central setup. During KF5 development similar case also got some more early bumping of the required ECM version in the KF modules, we might want to do this again for this.

Update (April 15th):

The following KF modules (perhaps more) need update to build with this:

  • attica
  • baloo
  • bluez-qt
  • frameworkintegration
  • kconfigwidgets
  • kcompletion
  • kconfig
  • kglobalaccel
  • kio
  • kirigami
  • kitemmodels
  • knewstuff
  • kpackage
  • kpeople
  • ktexteditor
  • ktextwidgets
  • kunitconversion
  • kuserfeedback
  • kwallet
  • kwidgetsaddons
  • kwindowsystem
  • kxmlgui
  • purpose
  • syntax-highlighting
Edited by Friedrich W. H. Kossebau

Merge request reports