forked from qt-creator/qt-creator
QtSupport: (Windows/MinGW) Copy additional MinGW dlls in plugin tests
The QtSupport plugin tests copy qmake into a separate directory. If that qmake is from a MinGW Qt, the respective .dlls are missing, and the test interrupts/blocks. Fixes: QTCREATORBUG-27793 Change-Id: I1ac02c31b6b74cf382285b8a5246292f82f979e3 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -281,12 +281,15 @@ static QStringList additionalFilesToCopy(const QtVersion *qt)
|
||||
} else if (HostOsInfo::isWindowsHost()) {
|
||||
const QString release = QString("bin/Qt%1Core.dll").arg(major);
|
||||
const QString debug = QString("bin/Qt%1Cored.dll").arg(major);
|
||||
const QString mingwGcc("bin/libgcc_s_seh-1.dll");
|
||||
const QString mingwStd("bin/libstdc++-6.dll");
|
||||
const QString mingwPthread("bin/libwinpthread-1.dll");
|
||||
const FilePath base = qt->qmakeFilePath().parentDir().parentDir();
|
||||
if (base.pathAppended(release).exists())
|
||||
return {release};
|
||||
if (base.pathAppended(debug).exists())
|
||||
return {debug};
|
||||
return {release};
|
||||
const QStringList allFiles = {release, debug, mingwGcc, mingwStd, mingwPthread};
|
||||
const QStringList existingFiles = Utils::filtered(allFiles, [&base](const QString &f) {
|
||||
return base.pathAppended(f).exists();
|
||||
});
|
||||
return !existingFiles.empty() ? existingFiles : QStringList(release);
|
||||
} else if (HostOsInfo::isLinuxHost()) {
|
||||
const QString core = QString("lib/libQt%1Core.so.%1").arg(major);
|
||||
const QDir base(qt->qmakeFilePath().parentDir().parentDir().pathAppended("lib").toString());
|
||||
|
Reference in New Issue
Block a user