diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 45aef0b5a0dee594eeda2b68fb068d6459c30c3b..46da3405b8c99fc1025b250b9f9ae4f94576d180 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -458,7 +458,7 @@ static QToolButton *toolButton(QAction *action) static Abi anyAbiOfBinary(const QString &fileName) { - QList<Abi> abis = Abi::abisOfBinary(fileName); + QList<Abi> abis = Abi::abisOfBinary(Utils::FileName::fromString(fileName)); if (abis.isEmpty()) return Abi(); return abis.at(0); @@ -1726,7 +1726,7 @@ void DebuggerPluginPrivate::gdbServerStarted(const QString &channel, return; } - QList<Abi> abis = Abi::abisOfBinary(localExecutable); + QList<Abi> abis = Abi::abisOfBinary(Utils::FileName::fromString(localExecutable)); if (abis.isEmpty()) { QMessageBox::warning(mainWindow(), tr("Warning"), tr("Cannot find ABI for remote process \"%1\".") diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp index 2fee8f9d1745c210c24feb8464e48f925528b31e..d12f0be68317ac3f3c16628666f28c04553bc14a 100644 --- a/src/plugins/debugger/debuggerrunner.cpp +++ b/src/plugins/debugger/debuggerrunner.cpp @@ -731,7 +731,7 @@ static DebuggerStartParameters localStartParameters(RunConfiguration *runConfigu sp.processArgs = rc->commandLineArguments(); sp.toolChainAbi = rc->abi(); if (!sp.toolChainAbi.isValid()) { - QList<Abi> abis = Abi::abisOfBinary(sp.executable); + QList<Abi> abis = Abi::abisOfBinary(Utils::FileName::fromString(sp.executable)); if (!abis.isEmpty()) sp.toolChainAbi = abis.at(0); } diff --git a/src/plugins/projectexplorer/abi.cpp b/src/plugins/projectexplorer/abi.cpp index c61b47977a8b15c33a79a51f93e407ce87e32ba8..1d7a4e623e8f86ccdfe42e4224d025ba5a2c262c 100644 --- a/src/plugins/projectexplorer/abi.cpp +++ b/src/plugins/projectexplorer/abi.cpp @@ -669,13 +669,13 @@ Abi Abi::hostAbi() return Abi(arch, os, subos, format, QSysInfo::WordSize); } -QList<Abi> Abi::abisOfBinary(const QString &path) +QList<Abi> Abi::abisOfBinary(const Utils::FileName &path) { QList<Abi> tmp; if (path.isEmpty()) return tmp; - QFile f(path); + QFile f(path.toString()); if (!f.exists()) return tmp; @@ -692,7 +692,7 @@ QList<Abi> Abi::abisOfBinary(const QString &path) while (!data.isEmpty()) { if ((getUint8(data, 58) != 0x60 || getUint8(data, 59) != 0x0a)) { - qWarning() << path << ": Thought it was an ar-file, but it is not!"; + qWarning() << path.toString() << ": Thought it was an ar-file, but it is not!"; break; } @@ -857,7 +857,7 @@ void ProjectExplorer::ProjectExplorerPlugin::testAbiOfBinary() QFETCH(QString, file); QFETCH(QStringList, abis); - QList<ProjectExplorer::Abi> result = Abi::abisOfBinary(file); + QList<ProjectExplorer::Abi> result = Abi::abisOfBinary(Utils::FileName::fromString(file)); QCOMPARE(result.count(), abis.count()); for (int i = 0; i < abis.count(); ++i) QCOMPARE(result.at(i).toString(), abis.at(i)); diff --git a/src/plugins/projectexplorer/abi.h b/src/plugins/projectexplorer/abi.h index e49559b979f1243d0fbebd2a02dcc5c8952ae9a3..9e79461313bc931f5aa32f02fdd3d22b464a8de8 100644 --- a/src/plugins/projectexplorer/abi.h +++ b/src/plugins/projectexplorer/abi.h @@ -35,6 +35,8 @@ #include "projectexplorer_export.h" +#include <utils/fileutils.h> + #include <QtCore/QList> namespace ProjectExplorer { @@ -140,7 +142,7 @@ public: static QList<OSFlavor> flavorsForOs(const OS &o); static Abi hostAbi(); - static QList<Abi> abisOfBinary(const QString &path); + static QList<Abi> abisOfBinary(const Utils::FileName &path); private: Architecture m_architecture; diff --git a/src/plugins/projectexplorer/gcctoolchain.cpp b/src/plugins/projectexplorer/gcctoolchain.cpp index 7111f540648d1d979c498d82408bf88e320eb03e..e54a093e28a135865f35dead13313c20456a8a64 100644 --- a/src/plugins/projectexplorer/gcctoolchain.cpp +++ b/src/plugins/projectexplorer/gcctoolchain.cpp @@ -411,7 +411,7 @@ Utils::FileName GccToolChain::mkspec() const return Utils::FileName::fromString(QLatin1String("macx-g++")); } - QList<Abi> gccAbiList = Abi::abisOfBinary(m_compilerPath); + QList<Abi> gccAbiList = Abi::abisOfBinary(Utils::FileName::fromString(m_compilerPath)); Abi gccAbi; if (!gccAbiList.isEmpty()) gccAbi = gccAbiList.first(); diff --git a/src/plugins/projectexplorer/msvctoolchain.cpp b/src/plugins/projectexplorer/msvctoolchain.cpp index 033f7bcb8badc7b9d03aaf0e733d0247af2c0c9f..805117b18e702fccf20e177a0da444a6bfd9e029 100644 --- a/src/plugins/projectexplorer/msvctoolchain.cpp +++ b/src/plugins/projectexplorer/msvctoolchain.cpp @@ -633,7 +633,7 @@ QPair<QString, QString> MsvcToolChain::autoDetectCdbDebugger() } foreach (const QString &cdb, cdbs) { - QList<ProjectExplorer::Abi> abis = ProjectExplorer::Abi::abisOfBinary(cdb); + QList<ProjectExplorer::Abi> abis = ProjectExplorer::Abi::abisOfBinary(Utils::FileName::fromString(cdb)); if (abis.isEmpty()) continue; if (abis.first().wordWidth() == 32) diff --git a/src/plugins/qtsupport/baseqtversion.cpp b/src/plugins/qtsupport/baseqtversion.cpp index 43c95a15baf3d6c55fc124d1dbefbc8f17f0c6c5..679316be962b21e4923bcf93576e033ae2d02bba 100644 --- a/src/plugins/qtsupport/baseqtversion.cpp +++ b/src/plugins/qtsupport/baseqtversion.cpp @@ -1179,7 +1179,7 @@ Utils::FileName BaseQtVersion::mkspecFromVersionInfo(const QHash<QString, QStrin return mkspecFullPath; } -QString BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString) +Utils::FileName BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString) { QStringList dirs; dirs << versionInfo.value(QLatin1String("QT_INSTALL_LIBS")) @@ -1197,8 +1197,9 @@ QString BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, con && file.startsWith(QLatin1String("QtCore")) && file.endsWith(QLatin1String(".framework"))) { // handle Framework - const QString libName = file.left(file.lastIndexOf(QLatin1Char('.'))); - return info.absoluteFilePath() + QLatin1Char('/') + libName; + Utils::FileName lib(info); + lib.appendPath(file.left(file.lastIndexOf(QLatin1Char('.')))); + return lib; } if (info.isReadable()) { if (file.startsWith(QLatin1String("libQtCore")) @@ -1209,18 +1210,18 @@ QString BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, con else if (file.endsWith(QLatin1String(".dll")) || file.endsWith(QString::fromLatin1(".so.") + versionString) || file.endsWith(QLatin1Char('.') + versionString + QLatin1String(".dylib"))) - return info.absoluteFilePath(); + return Utils::FileName(info); } } } } // Return path to first static library found: if (!staticLibs.isEmpty()) - return staticLibs.at(0).absoluteFilePath(); - return QString(); + return Utils::FileName(staticLibs.at(0)); + return Utils::FileName(); } -QList<ProjectExplorer::Abi> BaseQtVersion::qtAbisFromLibrary(const QString &coreLibrary) +QList<ProjectExplorer::Abi> BaseQtVersion::qtAbisFromLibrary(const Utils::FileName &coreLibrary) { return ProjectExplorer::Abi::abisOfBinary(coreLibrary); } diff --git a/src/plugins/qtsupport/baseqtversion.h b/src/plugins/qtsupport/baseqtversion.h index ddad59ec6b7ec4242c8bb070a119bfdec7c62554..91bc7b24a74bed1f29aa8350179d3046fdcbdd37 100644 --- a/src/plugins/qtsupport/baseqtversion.h +++ b/src/plugins/qtsupport/baseqtversion.h @@ -221,8 +221,8 @@ protected: virtual QList<ProjectExplorer::Task> reportIssuesImpl(const QString &proFile, const QString &buildDir); // helper function for desktop and simulator to figure out the supported abis based on the libraries - static QString qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString); - static QList<ProjectExplorer::Abi> qtAbisFromLibrary(const QString &coreLibrary); + static Utils::FileName qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString); + static QList<ProjectExplorer::Abi> qtAbisFromLibrary(const Utils::FileName &coreLibrary); void ensureMkSpecParsed() const; virtual void parseMkSpec(ProFileEvaluator *) const;