Skip to content

Fix the Qt multibuild

Heiko Becker requested to merge work/fix-qt-multibuild into master

If built with -DPHONON_BUILD_QT5:BOOL=TRUE -DPHONON_BUILD_QT6:BOOL=TRUE the backends where both installed to Qt5's plugin dir, e.g.

/lib/qt5/plugins/phonon4qt5_backend and /lib/qt5/plugins/phonon4qt6_backend

(asterisks just for accentuation).

Obviously the Qt6 one doesn't not load from this location. I'm not entirely sure about the why, but I suppose KDEInstallDirs leaves traces around/sets variables, which affect the next loop.

We can easily avoid this by moving it into a function, which creates a new scope. Also use the versioned target with ecm_create_qm_loader for a bit of extra safety (needs ECM >= 5.83.0 but we already depend on 5.90.0).

Merge request reports