@@ -1236,6 +1236,28 @@ void deployPlugins(const AppDirInfo &appDirInfo, const QString &pluginSourcePath
12361236 if (containsHowOften (deploymentInfo.deployedLibraries , " libQt5Gui" )) {
12371237 LogDebug () << " libQt5Gui detected" ;
12381238 pluginList.append (" platforms/libqxcb.so" );
1239+
1240+ // Platform wayland support
1241+ QStringList platformWaylandPlugins = QDir (pluginSourcePath + QStringLiteral (" /platforms" )).entryList (QStringList () << QStringLiteral (" libqwayland-*.so" ));
1242+ foreach (const QString &plugin, platformWaylandPlugins) {
1243+ pluginList.append (QStringLiteral (" platforms/" ) + plugin);
1244+ }
1245+
1246+ // Always bundle wayland-* plugins
1247+ // pluginList.append("wayland-*");
1248+ QStringList waylandPluginDirs = QDir (pluginSourcePath).entryList (QStringList () << QStringLiteral (" wayland-*" ), QDir::NoDot | QDir::NoDotDot | QDir::Dirs);
1249+ foreach (const QString &plugin, waylandPluginDirs) {
1250+ QDir pluginDirectory (pluginSourcePath + " /" + plugin);
1251+ if (pluginDirectory.exists ()) {
1252+ // If it is a plugin directory we will deploy the entire directory
1253+ QStringList plugins = pluginDirectory.entryList (QStringList () << QStringLiteral (" *.so" ));
1254+ foreach (const QString &pluginFile, plugins) {
1255+ pluginList.append (plugin + " /" + pluginFile);
1256+ LogDebug () << plugin + " /" + pluginFile << " appended" ;
1257+ }
1258+ }
1259+ }
1260+
12391261 // Platform plugin contexts - apparently needed to enter special characters
12401262 QStringList platformPluginContexts = QDir (pluginSourcePath + QStringLiteral (" /platforminputcontexts" )).entryList (QStringList () << QStringLiteral (" *.so" ));
12411263 foreach (const QString &plugin, platformPluginContexts) {
0 commit comments