forked from qt-creator/qt-creator
ProjectExplorer: Use an alias for QList<Abi>
Change-Id: I69231c5974620ae30296bfc4e0ab41c900d95a3c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -951,7 +951,7 @@ static QVariant findOrRegisterDebugger(ToolChain *tc)
|
||||
// check if the debugger is already registered, but ignoring the display name
|
||||
const Debugger::DebuggerItem *existing = Debugger::DebuggerItemManager::findByCommand(command);
|
||||
if (existing && existing->engineType() == Debugger::GdbEngineType && existing->isAutoDetected()
|
||||
&& existing->abis() == QList<Abi>{tc->targetAbi()})
|
||||
&& existing->abis() == Abis{tc->targetAbi()})
|
||||
return existing->id();
|
||||
// debugger not found, register a new one
|
||||
Debugger::DebuggerItem debugger;
|
||||
@@ -997,7 +997,7 @@ void AndroidConfigurations::updateAutomaticKitList()
|
||||
return v->type() == Constants::ANDROIDQT;
|
||||
});
|
||||
for (const QtSupport::BaseQtVersion *qtVersion : qtVersions) {
|
||||
const QList<Abi> qtAbis = qtVersion->qtAbis();
|
||||
const Abis qtAbis = qtVersion->qtAbis();
|
||||
if (qtAbis.empty())
|
||||
continue;
|
||||
qtVersionsForArch[qtAbis.first()].append(qtVersion);
|
||||
|
||||
@@ -69,9 +69,9 @@ QString AndroidQtVersion::invalidReason() const
|
||||
return tmp;
|
||||
}
|
||||
|
||||
QList<Abi> AndroidQtVersion::detectQtAbis() const
|
||||
Abis AndroidQtVersion::detectQtAbis() const
|
||||
{
|
||||
QList<Abi> abis = BaseQtVersion::detectQtAbis();
|
||||
Abis abis = BaseQtVersion::detectQtAbis();
|
||||
for (int i = 0; i < abis.count(); ++i) {
|
||||
abis[i] = Abi(abis.at(i).architecture(),
|
||||
abis.at(i).os(),
|
||||
|
||||
@@ -43,7 +43,7 @@ public:
|
||||
bool isValid() const override;
|
||||
QString invalidReason() const override;
|
||||
|
||||
QList<ProjectExplorer::Abi> detectQtAbis() const override;
|
||||
ProjectExplorer::Abis detectQtAbis() const override;
|
||||
|
||||
void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const override;
|
||||
Utils::Environment qmakeRunEnvironment() const override;
|
||||
|
||||
@@ -343,7 +343,7 @@ void DebuggerItem::setVersion(const QString &version)
|
||||
m_version = version;
|
||||
}
|
||||
|
||||
void DebuggerItem::setAbis(const QList<Abi> &abis)
|
||||
void DebuggerItem::setAbis(const Abis &abis)
|
||||
{
|
||||
m_abis = abis;
|
||||
}
|
||||
|
||||
@@ -81,8 +81,8 @@ public:
|
||||
QString version() const;
|
||||
void setVersion(const QString &version);
|
||||
|
||||
const QList<ProjectExplorer::Abi> &abis() const { return m_abis; }
|
||||
void setAbis(const QList<ProjectExplorer::Abi> &abis);
|
||||
const ProjectExplorer::Abis &abis() const { return m_abis; }
|
||||
void setAbis(const ProjectExplorer::Abis &abis);
|
||||
void setAbi(const ProjectExplorer::Abi &abi);
|
||||
|
||||
enum MatchLevel { DoesNotMatch, MatchesSomewhat, MatchesWell, MatchesPerfectly, MatchesPerfectlyInPath };
|
||||
@@ -113,7 +113,7 @@ private:
|
||||
Utils::FileName m_workingDirectory;
|
||||
bool m_isAutoDetected = false;
|
||||
QString m_version;
|
||||
QList<ProjectExplorer::Abi> m_abis;
|
||||
ProjectExplorer::Abis m_abis;
|
||||
QDateTime m_lastModified;
|
||||
|
||||
friend class Internal::DebuggerConfigWidget;
|
||||
|
||||
@@ -350,7 +350,7 @@ DebuggerItem DebuggerItemConfigWidget::item() const
|
||||
item.setCommand(m_binaryChooser->fileName());
|
||||
item.setWorkingDirectory(m_workingDirectoryChooser->fileName());
|
||||
item.setAutoDetected(m_autodetected);
|
||||
QList<ProjectExplorer::Abi> abiList;
|
||||
ProjectExplorer::Abis abiList;
|
||||
foreach (const QString &a, m_abis->text().split(QRegExp("[^A-Za-z0-9-_]+"))) {
|
||||
if (a.isNull())
|
||||
continue;
|
||||
|
||||
@@ -807,7 +807,7 @@ static QString msgParameterMissing(const QString &a)
|
||||
return DebuggerPlugin::tr("Option \"%1\" is missing the parameter.").arg(a);
|
||||
}
|
||||
|
||||
static Kit *guessKitFromAbis(const QList<Abi> &abis)
|
||||
static Kit *guessKitFromAbis(const Abis &abis)
|
||||
{
|
||||
Kit *kit = nullptr;
|
||||
|
||||
@@ -2620,8 +2620,8 @@ void DebuggerUnitTests::testDebuggerMatching()
|
||||
|
||||
auto expectedLevel = static_cast<DebuggerItem::MatchLevel>(result);
|
||||
|
||||
QList<Abi> debuggerAbis;
|
||||
foreach (const QString &abi, debugger)
|
||||
Abis debuggerAbis;
|
||||
for (const QString &abi : qAsConst(debugger))
|
||||
debuggerAbis << Abi::fromString(abi);
|
||||
|
||||
DebuggerItem item;
|
||||
|
||||
@@ -59,9 +59,9 @@ QString IosQtVersion::invalidReason() const
|
||||
return tmp;
|
||||
}
|
||||
|
||||
QList<Abi> IosQtVersion::detectQtAbis() const
|
||||
Abis IosQtVersion::detectQtAbis() const
|
||||
{
|
||||
QList<Abi> abis = BaseQtVersion::detectQtAbis();
|
||||
Abis abis = BaseQtVersion::detectQtAbis();
|
||||
for (int i = 0; i < abis.count(); ++i) {
|
||||
abis[i] = Abi(abis.at(i).architecture(),
|
||||
abis.at(i).os(),
|
||||
|
||||
@@ -43,7 +43,7 @@ public:
|
||||
bool isValid() const override;
|
||||
QString invalidReason() const override;
|
||||
|
||||
QList<ProjectExplorer::Abi> detectQtAbis() const override;
|
||||
ProjectExplorer::Abis detectQtAbis() const override;
|
||||
|
||||
void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const override;
|
||||
|
||||
|
||||
@@ -219,9 +219,9 @@ static Abi macAbiForCpu(quint32 type) {
|
||||
}
|
||||
}
|
||||
|
||||
static QList<Abi> parseCoffHeader(const QByteArray &data)
|
||||
static Abis parseCoffHeader(const QByteArray &data)
|
||||
{
|
||||
QList<Abi> result;
|
||||
Abis result;
|
||||
if (data.size() < 20)
|
||||
return result;
|
||||
|
||||
@@ -305,9 +305,9 @@ static QList<Abi> parseCoffHeader(const QByteArray &data)
|
||||
return result;
|
||||
}
|
||||
|
||||
static QList<Abi> abiOf(const QByteArray &data)
|
||||
static Abis abiOf(const QByteArray &data)
|
||||
{
|
||||
QList<Abi> result;
|
||||
Abis result;
|
||||
if (data.size() <= 8)
|
||||
return result;
|
||||
|
||||
@@ -983,9 +983,9 @@ Abi Abi::hostAbi()
|
||||
}
|
||||
|
||||
//! Extract available ABIs from a binary using heuristics.
|
||||
QList<Abi> Abi::abisOfBinary(const Utils::FileName &path)
|
||||
Abis Abi::abisOfBinary(const Utils::FileName &path)
|
||||
{
|
||||
QList<Abi> tmp;
|
||||
Abis tmp;
|
||||
if (path.isEmpty())
|
||||
return tmp;
|
||||
|
||||
@@ -1038,8 +1038,8 @@ QList<Abi> Abi::abisOfBinary(const Utils::FileName &path)
|
||||
f.close();
|
||||
|
||||
// Remove duplicates:
|
||||
QList<Abi> result;
|
||||
foreach (const Abi &a, tmp) {
|
||||
Abis result;
|
||||
for (const Abi &a : qAsConst(tmp)) {
|
||||
if (!result.contains(a))
|
||||
result.append(a);
|
||||
}
|
||||
@@ -1233,7 +1233,7 @@ void ProjectExplorer::ProjectExplorerPlugin::testAbiOfBinary()
|
||||
QFETCH(QString, file);
|
||||
QFETCH(QStringList, abis);
|
||||
|
||||
QList<Abi> result = Abi::abisOfBinary(Utils::FileName::fromString(file));
|
||||
const Abis 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));
|
||||
|
||||
@@ -42,6 +42,9 @@ namespace ProjectExplorer {
|
||||
// ABI (documentation inside)
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
class Abi;
|
||||
using Abis = QList<Abi>;
|
||||
|
||||
class PROJECTEXPLORER_EXPORT Abi
|
||||
{
|
||||
public:
|
||||
@@ -157,7 +160,7 @@ public:
|
||||
|
||||
static Abi fromString(const QString &abiString);
|
||||
static Abi hostAbi();
|
||||
static QList<Abi> abisOfBinary(const Utils::FileName &path);
|
||||
static Abis abisOfBinary(const Utils::FileName &path);
|
||||
|
||||
|
||||
private:
|
||||
|
||||
@@ -151,12 +151,12 @@ AbiWidget::AbiWidget(QWidget *parent) : QWidget(parent),
|
||||
|
||||
layout->setStretchFactor(d->m_abi, 1);
|
||||
|
||||
setAbis(QList<Abi>(), Abi::hostAbi());
|
||||
setAbis(Abis(), Abi::hostAbi());
|
||||
}
|
||||
|
||||
AbiWidget::~AbiWidget() = default;
|
||||
|
||||
static Abi selectAbi(const Abi ¤t, const QList<Abi> &abiList)
|
||||
static Abi selectAbi(const Abi ¤t, const Abis &abiList)
|
||||
{
|
||||
if (!current.isNull())
|
||||
return current;
|
||||
@@ -165,7 +165,7 @@ static Abi selectAbi(const Abi ¤t, const QList<Abi> &abiList)
|
||||
return Abi::hostAbi();
|
||||
}
|
||||
|
||||
void AbiWidget::setAbis(const QList<Abi> &abiList, const Abi ¤tAbi)
|
||||
void AbiWidget::setAbis(const Abis &abiList, const Abi ¤tAbi)
|
||||
{
|
||||
const Abi defaultAbi = selectAbi(currentAbi, abiList);
|
||||
{
|
||||
@@ -191,9 +191,9 @@ void AbiWidget::setAbis(const QList<Abi> &abiList, const Abi ¤tAbi)
|
||||
emitAbiChanged(defaultAbi);
|
||||
}
|
||||
|
||||
QList<Abi> AbiWidget::supportedAbis() const
|
||||
Abis AbiWidget::supportedAbis() const
|
||||
{
|
||||
QList<Abi> result;
|
||||
Abis result;
|
||||
result.reserve(d->m_abi->count());
|
||||
for (int i = 1; i < d->m_abi->count(); ++i)
|
||||
result << Abi::fromString(d->m_abi->itemData(i).toString());
|
||||
|
||||
@@ -27,12 +27,13 @@
|
||||
|
||||
#include "projectexplorer_export.h"
|
||||
|
||||
#include "abi.h"
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
#include <memory>
|
||||
|
||||
namespace ProjectExplorer {
|
||||
class Abi;
|
||||
|
||||
namespace Internal { class AbiWidgetPrivate; }
|
||||
|
||||
@@ -48,9 +49,9 @@ public:
|
||||
AbiWidget(QWidget *parent = nullptr);
|
||||
~AbiWidget() override;
|
||||
|
||||
void setAbis(const QList<Abi> &, const Abi ¤tAbi);
|
||||
void setAbis(const ProjectExplorer::Abis &, const Abi ¤tAbi);
|
||||
|
||||
QList<Abi> supportedAbis() const;
|
||||
Abis supportedAbis() const;
|
||||
bool isCustomAbi() const;
|
||||
Abi currentAbi() const;
|
||||
|
||||
|
||||
@@ -598,7 +598,7 @@ void CustomToolChainConfigWidget::setFromToolchain()
|
||||
auto tc = static_cast<CustomToolChain *>(toolChain());
|
||||
m_compilerCommand->setFileName(tc->compilerCommand());
|
||||
m_makeCommand->setFileName(tc->makeCommand(Environment()));
|
||||
m_abiWidget->setAbis(QList<Abi>(), tc->targetAbi());
|
||||
m_abiWidget->setAbis(Abis(), tc->targetAbi());
|
||||
const QStringList macroLines = Utils::transform<QList>(tc->rawPredefinedMacros(), [](const Macro &m) {
|
||||
return QString::fromUtf8(m.toKeyValue(QByteArray()));
|
||||
});
|
||||
|
||||
@@ -167,9 +167,9 @@ HeaderPaths GccToolChain::gccHeaderPaths(const FileName &gcc, const QStringList
|
||||
return builtInHeaderPaths;
|
||||
}
|
||||
|
||||
static QList<Abi> guessGccAbi(const QString &m, const ProjectExplorer::Macros ¯os)
|
||||
static Abis guessGccAbi(const QString &m, const ProjectExplorer::Macros ¯os)
|
||||
{
|
||||
QList<Abi> abiList;
|
||||
Abis abiList;
|
||||
|
||||
Abi guessed = Abi::abiFromTargetTriplet(m);
|
||||
if (guessed.isNull())
|
||||
@@ -249,12 +249,12 @@ void GccToolChain::setCompilerCommand(const FileName &path)
|
||||
toolChainUpdated();
|
||||
}
|
||||
|
||||
void GccToolChain::setSupportedAbis(const QList<Abi> &m_abis)
|
||||
void GccToolChain::setSupportedAbis(const Abis &abis)
|
||||
{
|
||||
if (m_supportedAbis == m_abis)
|
||||
if (m_supportedAbis == abis)
|
||||
return;
|
||||
|
||||
m_supportedAbis = m_abis;
|
||||
m_supportedAbis = abis;
|
||||
toolChainUpdated();
|
||||
}
|
||||
|
||||
@@ -322,7 +322,7 @@ void GccToolChain::setTargetAbi(const Abi &abi)
|
||||
toolChainUpdated();
|
||||
}
|
||||
|
||||
QList<Abi> GccToolChain::supportedAbis() const
|
||||
Abis GccToolChain::supportedAbis() const
|
||||
{
|
||||
return m_supportedAbis;
|
||||
}
|
||||
@@ -1151,7 +1151,7 @@ void GccToolChainConfigWidget::handleCompilerCommandChange()
|
||||
Abi currentAbi = m_abiWidget->currentAbi();
|
||||
bool customAbi = m_abiWidget->isCustomAbi() && m_abiWidget->isEnabled();
|
||||
FileName path = m_compilerCommand->fileName();
|
||||
QList<Abi> abiList;
|
||||
Abis abiList;
|
||||
|
||||
if (!path.isEmpty()) {
|
||||
QFileInfo fi(path.toFileInfo());
|
||||
@@ -1941,7 +1941,7 @@ void ProjectExplorerPlugin::testGccAbiGuessing()
|
||||
QFETCH(QByteArray, macros);
|
||||
QFETCH(QStringList, abiList);
|
||||
|
||||
QList<Abi> al = guessGccAbi(input, ProjectExplorer::Macro::toMacros(macros));
|
||||
const Abis al = guessGccAbi(input, ProjectExplorer::Macro::toMacros(macros));
|
||||
QCOMPARE(al.count(), abiList.count());
|
||||
for (int i = 0; i < al.count(); ++i)
|
||||
QCOMPARE(al.at(i).toString(), abiList.at(i));
|
||||
|
||||
@@ -72,7 +72,7 @@ public:
|
||||
Abi targetAbi() const override;
|
||||
QString originalTargetTriple() const override;
|
||||
QString version() const;
|
||||
QList<Abi> supportedAbis() const override;
|
||||
Abis supportedAbis() const override;
|
||||
void setTargetAbi(const Abi &);
|
||||
|
||||
bool isValid() const override;
|
||||
@@ -112,13 +112,12 @@ public:
|
||||
class DetectedAbisResult {
|
||||
public:
|
||||
DetectedAbisResult() = default;
|
||||
DetectedAbisResult(const QList<Abi> &supportedAbis,
|
||||
const QString &originalTargetTriple = QString()) :
|
||||
DetectedAbisResult(const Abis &supportedAbis, const QString &originalTargetTriple = {}) :
|
||||
supportedAbis(supportedAbis),
|
||||
originalTargetTriple(originalTargetTriple)
|
||||
{ }
|
||||
|
||||
QList<Abi> supportedAbis;
|
||||
Abis supportedAbis;
|
||||
QString originalTargetTriple;
|
||||
};
|
||||
|
||||
@@ -127,7 +126,7 @@ protected:
|
||||
using GccCache = QVector<CacheItem>;
|
||||
|
||||
void setCompilerCommand(const Utils::FileName &path);
|
||||
void setSupportedAbis(const QList<Abi> &m_abis);
|
||||
void setSupportedAbis(const Abis &abis);
|
||||
void setOriginalTargetTriple(const QString &targetTriple);
|
||||
void setMacroCache(const QStringList &allCxxflags, const Macros ¯oCache) const;
|
||||
Macros macroCache(const QStringList &allCxxflags) const;
|
||||
@@ -194,7 +193,7 @@ protected:
|
||||
|
||||
private:
|
||||
Abi m_targetAbi;
|
||||
mutable QList<Abi> m_supportedAbis;
|
||||
mutable Abis m_supportedAbis;
|
||||
mutable QString m_originalTargetTriple;
|
||||
mutable HeaderPaths m_headerPaths;
|
||||
mutable QString m_version;
|
||||
|
||||
@@ -776,7 +776,7 @@ void MsvcToolChain::updateEnvironmentModifications(QList<Utils::EnvironmentItem>
|
||||
|
||||
void MsvcToolChain::detectInstalledAbis()
|
||||
{
|
||||
static QMap<QString, QList<Abi>> abiCache;
|
||||
static QMap<QString, Abis> abiCache;
|
||||
const QString vcVarsBase
|
||||
= QDir::fromNativeSeparators(m_vcvarsBat).left(m_vcvarsBat.lastIndexOf('/'));
|
||||
if (abiCache.contains(vcVarsBase)) {
|
||||
@@ -913,7 +913,7 @@ Abi MsvcToolChain::targetAbi() const
|
||||
return m_abi;
|
||||
}
|
||||
|
||||
QList<Abi> MsvcToolChain::supportedAbis() const
|
||||
Abis MsvcToolChain::supportedAbis() const
|
||||
{
|
||||
return m_supportedAbis;
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
~MsvcToolChain() override;
|
||||
|
||||
Abi targetAbi() const override;
|
||||
QList<Abi> supportedAbis() const override;
|
||||
Abis supportedAbis() const override;
|
||||
void setTargetAbi(const Abi &abi);
|
||||
|
||||
bool isValid() const override;
|
||||
@@ -168,7 +168,7 @@ private:
|
||||
|
||||
protected:
|
||||
Abi m_abi;
|
||||
QList<Abi> m_supportedAbis;
|
||||
Abis m_supportedAbis;
|
||||
|
||||
QString m_vcvarsBat;
|
||||
QString m_varsBatArg; // Argument
|
||||
|
||||
@@ -179,7 +179,7 @@ Core::Id ToolChain::typeId() const
|
||||
return d->m_typeId;
|
||||
}
|
||||
|
||||
QList<Abi> ToolChain::supportedAbis() const
|
||||
Abis ToolChain::supportedAbis() const
|
||||
{
|
||||
return {targetAbi()};
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "projectexplorer_export.h"
|
||||
#include "projectexplorer_global.h"
|
||||
|
||||
#include "abi.h"
|
||||
#include "headerpath.h"
|
||||
#include "projectmacro.h"
|
||||
#include "toolchaincache.h"
|
||||
@@ -104,7 +105,7 @@ public:
|
||||
Core::Id typeId() const;
|
||||
virtual QString typeDisplayName() const = 0;
|
||||
virtual Abi targetAbi() const = 0;
|
||||
virtual QList<Abi> supportedAbis() const;
|
||||
virtual ProjectExplorer::Abis supportedAbis() const;
|
||||
virtual QString originalTargetTriple() const { return QString(); }
|
||||
virtual QStringList extraCodeModelFlags() const { return QStringList(); }
|
||||
|
||||
|
||||
@@ -164,7 +164,7 @@ QList<void *> QmakeProjectImporter::examineDirectory(const FileName &importPath)
|
||||
}
|
||||
|
||||
if (version->type() == QtSupport::Constants::DESKTOPQT) {
|
||||
const QList<ProjectExplorer::Abi> abis = version->qtAbis();
|
||||
const ProjectExplorer::Abis abis = version->qtAbis();
|
||||
if (!abis.isEmpty()) {
|
||||
ProjectExplorer::Abi abi = abis.first();
|
||||
if (abi.os() == ProjectExplorer::Abi::DarwinOS) {
|
||||
@@ -271,7 +271,7 @@ static const QList<ToolChain *> preferredToolChains(BaseQtVersion *qtVersion, co
|
||||
const FileName spec = ms.isEmpty() ? qtVersion->mkspec() : ms;
|
||||
|
||||
const QList<ToolChain *> toolchains = ToolChainManager::toolChains();
|
||||
QList<Abi> qtAbis = qtVersion->qtAbis();
|
||||
const Abis qtAbis = qtVersion->qtAbis();
|
||||
const auto matcher = [&](const ToolChain *tc) {
|
||||
return qtAbis.contains(tc->targetAbi())
|
||||
&& tc->suggestedMkspecList().contains(spec)
|
||||
|
||||
@@ -118,7 +118,7 @@ void QnxQtVersion::fromMap(const QVariantMap &map)
|
||||
setSdpPath(QDir::fromNativeSeparators(map.value(QLatin1String(SDP_PATH_KEY)).toString()));
|
||||
}
|
||||
|
||||
QList<ProjectExplorer::Abi> QnxQtVersion::detectQtAbis() const
|
||||
ProjectExplorer::Abis QnxQtVersion::detectQtAbis() const
|
||||
{
|
||||
ensureMkSpecParsed();
|
||||
return QnxUtils::convertAbis(BaseQtVersion::detectQtAbis());
|
||||
|
||||
@@ -54,7 +54,7 @@ public:
|
||||
QVariantMap toMap() const override;
|
||||
void fromMap(const QVariantMap &map) override;
|
||||
|
||||
QList<ProjectExplorer::Abi> detectQtAbis() const override;
|
||||
ProjectExplorer::Abis detectQtAbis() const override;
|
||||
|
||||
void addToEnvironment(const ProjectExplorer::Kit *k, Utils::Environment &env) const override;
|
||||
Utils::Environment qmakeRunEnvironment() const override;
|
||||
|
||||
@@ -44,9 +44,9 @@ namespace Internal {
|
||||
static const char CompilerSdpPath[] = "Qnx.QnxToolChain.NDKPath";
|
||||
static const char CpuDirKey[] = "Qnx.QnxToolChain.CpuDir";
|
||||
|
||||
static QList<Abi> detectTargetAbis(const FileName &sdpPath)
|
||||
static Abis detectTargetAbis(const FileName &sdpPath)
|
||||
{
|
||||
QList<Abi> result;
|
||||
Abis result;
|
||||
FileName qnxTarget;
|
||||
|
||||
if (!sdpPath.fileName().isEmpty()) {
|
||||
@@ -243,7 +243,7 @@ QnxToolChainConfigWidget::QnxToolChainConfigWidget(QnxToolChain *tc)
|
||||
m_sdpPath->setPath(tc->sdpPath());
|
||||
m_sdpPath->setEnabled(!tc->isAutoDetected());
|
||||
|
||||
QList<Abi> abiList = detectTargetAbis(m_sdpPath->fileName());
|
||||
const Abis abiList = detectTargetAbis(m_sdpPath->fileName());
|
||||
m_abiWidget->setAbis(abiList, tc->targetAbi());
|
||||
m_abiWidget->setEnabled(!tc->isAutoDetected() && !abiList.isEmpty());
|
||||
|
||||
@@ -295,9 +295,9 @@ bool QnxToolChainConfigWidget::isDirtyImpl() const
|
||||
|
||||
void QnxToolChainConfigWidget::handleSdpPathChange()
|
||||
{
|
||||
Abi currentAbi = m_abiWidget->currentAbi();
|
||||
bool customAbi = m_abiWidget->isCustomAbi();
|
||||
QList<Abi> abiList = detectTargetAbis(m_sdpPath->fileName());
|
||||
const Abi currentAbi = m_abiWidget->currentAbi();
|
||||
const bool customAbi = m_abiWidget->isCustomAbi();
|
||||
const Abis abiList = detectTargetAbis(m_sdpPath->fileName());
|
||||
|
||||
m_abiWidget->setEnabled(!abiList.isEmpty());
|
||||
|
||||
|
||||
@@ -251,7 +251,7 @@ Abi QnxUtils::convertAbi(const Abi &abi)
|
||||
return abi;
|
||||
}
|
||||
|
||||
QList<Abi> QnxUtils::convertAbis(const QList<Abi> &abis)
|
||||
Abis QnxUtils::convertAbis(const Abis &abis)
|
||||
{
|
||||
return Utils::transform(abis, &QnxUtils::convertAbi);
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
static QList<Utils::EnvironmentItem> qnxEnvironment(const QString &sdpPath);
|
||||
static QList<QnxTarget> findTargets(const Utils::FileName &basePath);
|
||||
static ProjectExplorer::Abi convertAbi(const ProjectExplorer::Abi &abi);
|
||||
static QList<ProjectExplorer::Abi> convertAbis(const QList<ProjectExplorer::Abi> &abis);
|
||||
static ProjectExplorer::Abis convertAbis(const ProjectExplorer::Abis &abis);
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -359,7 +359,7 @@ QList<Task> BaseQtVersion::validateKit(const Kit *k)
|
||||
BaseQtVersion *version = QtKitAspect::qtVersion(k);
|
||||
Q_ASSERT(version == this);
|
||||
|
||||
const QList<Abi> qtAbis = version->qtAbis();
|
||||
const Abis qtAbis = version->qtAbis();
|
||||
if (qtAbis.isEmpty()) // No need to test if Qt does not know anyway...
|
||||
return result;
|
||||
|
||||
@@ -379,7 +379,7 @@ QList<Task> BaseQtVersion::validateKit(const Kit *k)
|
||||
bool fullMatch = false;
|
||||
|
||||
QString qtAbiString;
|
||||
foreach (const Abi &qtAbi, qtAbis) {
|
||||
for (const Abi &qtAbi : qtAbis) {
|
||||
if (!qtAbiString.isEmpty())
|
||||
qtAbiString.append(' ');
|
||||
qtAbiString.append(qtAbi.toString());
|
||||
@@ -620,7 +620,7 @@ FileName BaseQtVersion::qmakeCommand() const
|
||||
return m_qmakeCommand;
|
||||
}
|
||||
|
||||
QList<Abi> BaseQtVersion::qtAbis() const
|
||||
Abis BaseQtVersion::qtAbis() const
|
||||
{
|
||||
if (!m_hasQtAbis) {
|
||||
m_qtAbis = detectQtAbis();
|
||||
@@ -629,7 +629,7 @@ QList<Abi> BaseQtVersion::qtAbis() const
|
||||
return m_qtAbis;
|
||||
}
|
||||
|
||||
QList<Abi> BaseQtVersion::detectQtAbis() const
|
||||
Abis BaseQtVersion::detectQtAbis() const
|
||||
{
|
||||
return qtAbisFromLibrary(qtCorePaths());
|
||||
}
|
||||
@@ -705,7 +705,7 @@ QString BaseQtVersion::toHtml(bool verbose) const
|
||||
} else {
|
||||
str << "<tr><td><b>" << QCoreApplication::translate("BaseQtVersion", "ABI:")
|
||||
<< "</b></td>";
|
||||
const QList<Abi> abis = qtAbis();
|
||||
const Abis abis = qtAbis();
|
||||
if (abis.isEmpty()) {
|
||||
str << "<td>" << Abi().toString() << "</td></tr>";
|
||||
} else {
|
||||
@@ -1558,7 +1558,7 @@ bool BaseQtVersion::queryQMakeVariables(const FileName &binary, const Environmen
|
||||
// Try running qmake with all kinds of tool chains set up in the environment.
|
||||
// This is required to make non-static qmakes work on windows where every tool chain
|
||||
// tries to be incompatible with any other.
|
||||
QList<Abi> abiList = Abi::abisOfBinary(binary);
|
||||
Abis abiList = Abi::abisOfBinary(binary);
|
||||
const QList<ToolChain *> tcList
|
||||
= ToolChainManager::toolChains([&abiList](const ToolChain *t) { return abiList.contains(t->targetAbi()); });
|
||||
for (ToolChain *tc : tcList) {
|
||||
@@ -2004,10 +2004,10 @@ static Abi scanQtBinaryForBuildStringAndRefineAbi(const FileName &library,
|
||||
return results.value(library);
|
||||
}
|
||||
|
||||
QList<Abi> BaseQtVersion::qtAbisFromLibrary(const FileNameList &coreLibraries)
|
||||
Abis BaseQtVersion::qtAbisFromLibrary(const FileNameList &coreLibraries)
|
||||
{
|
||||
QList<Abi> res;
|
||||
foreach (const FileName &library, coreLibraries) {
|
||||
Abis res;
|
||||
for (const FileName &library : coreLibraries) {
|
||||
for (Abi abi : Abi::abisOfBinary(library)) {
|
||||
Abi tmp = abi;
|
||||
if (abi.osFlavor() == Abi::UnknownFlavor)
|
||||
|
||||
@@ -137,8 +137,8 @@ public:
|
||||
virtual QString description() const = 0;
|
||||
virtual QString toHtml(bool verbose) const;
|
||||
|
||||
QList<ProjectExplorer::Abi> qtAbis() const;
|
||||
virtual QList<ProjectExplorer::Abi> detectQtAbis() const;
|
||||
ProjectExplorer::Abis qtAbis() const;
|
||||
virtual ProjectExplorer::Abis detectQtAbis() const;
|
||||
|
||||
enum PropertyVariant { PropertyVariantDev, PropertyVariantGet, PropertyVariantSrc };
|
||||
QString qmakeProperty(const QByteArray &name,
|
||||
@@ -265,7 +265,7 @@ protected:
|
||||
|
||||
// helper function for desktop and simulator to figure out the supported abis based on the libraries
|
||||
Utils::FileNameList qtCorePaths() const;
|
||||
static QList<ProjectExplorer::Abi> qtAbisFromLibrary(const Utils::FileNameList &coreLibraries);
|
||||
static ProjectExplorer::Abis qtAbisFromLibrary(const Utils::FileNameList &coreLibraries);
|
||||
|
||||
void ensureMkSpecParsed() const;
|
||||
virtual void parseMkSpec(ProFileEvaluator *) const;
|
||||
@@ -332,7 +332,7 @@ private:
|
||||
mutable QString m_linguistCommand;
|
||||
mutable QString m_qscxmlcCommand;
|
||||
|
||||
mutable QList<ProjectExplorer::Abi> m_qtAbis;
|
||||
mutable ProjectExplorer::Abis m_qtAbis;
|
||||
|
||||
MacroExpanderWrapper m_expander;
|
||||
};
|
||||
|
||||
@@ -341,7 +341,7 @@ void QtOptionsPageWidget::infoAnchorClicked(const QUrl &url)
|
||||
QDesktopServices::openUrl(url);
|
||||
}
|
||||
|
||||
static QString formatAbiHtmlList(const QList<Abi> &abis)
|
||||
static QString formatAbiHtmlList(const Abis &abis)
|
||||
{
|
||||
QString result = QStringLiteral("<ul><li>");
|
||||
for (int i = 0, count = abis.size(); i < count; ++i) {
|
||||
@@ -369,8 +369,8 @@ QtOptionsPageWidget::ValidityInfo QtOptionsPageWidget::validInformation(const Ba
|
||||
}
|
||||
|
||||
// Do we have tool chain issues?
|
||||
QList<Abi> missingToolChains;
|
||||
const QList<Abi> qtAbis = version->qtAbis();
|
||||
Abis missingToolChains;
|
||||
const Abis qtAbis = version->qtAbis();
|
||||
|
||||
for (const Abi &abi : qtAbis) {
|
||||
const auto abiCompatePred = [&abi] (const ToolChain *tc)
|
||||
|
||||
@@ -55,8 +55,8 @@ EmbeddedLinuxQtVersionFactory::EmbeddedLinuxQtVersionFactory()
|
||||
setPriority(10);
|
||||
|
||||
setRestrictionChecker([](const SetupData &) {
|
||||
EmbeddedLinuxQtVersion tempVersion;
|
||||
QList<ProjectExplorer::Abi> abis = tempVersion.qtAbis();
|
||||
const EmbeddedLinuxQtVersion tempVersion;
|
||||
const ProjectExplorer::Abis abis = tempVersion.qtAbis();
|
||||
|
||||
// Note: This fails for e.g. intel/meego cross builds on x86 linux machines.
|
||||
return abis.count() == 1
|
||||
|
||||
Reference in New Issue
Block a user