Commit 462278b0 authored by Tommi Asp's avatar Tommi Asp Committed by Oswald Buddenhagen

Custom targets can set QtVersion to support id and set abis

QtVersion targetIds and abis set are forced
updateAbiAndMkspec() wont reset them
(cherry picked from commit 1c86ab05a73838e8127984f1cc0220d4de90eea5)

Change-Id: I1c86ab05a73838e8127984f1cc0220d4de90eea5x
Merge-request: 2193
Reviewed-on: http://codereview.qt.nokia.com/396Reviewed-by: default avatarQt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: default avatarhjk <qthjk@ovi.com>
parent 3f44219a
......@@ -1413,21 +1413,39 @@ QString QtVersion::systemRoot() const
bool QtVersion::supportsTargetId(const QString &id) const
{
updateAbiAndMkspec();
if (!m_forcedTargetIds.isEmpty())
return m_forcedTargetIds.contains(id);
return m_targetIds.contains(id);
}
QSet<QString> QtVersion::supportedTargetIds() const
{
updateAbiAndMkspec();
if (!m_forcedTargetIds.isEmpty())
return m_forcedTargetIds;
return m_targetIds;
}
QList<ProjectExplorer::Abi> QtVersion::qtAbis() const
{
updateAbiAndMkspec();
if (!m_forcedAbis.isEmpty())
return m_forcedAbis;
return m_abis;
}
void QtVersion::setForcedTargetIds(const QSet<QString> &ids)
{
updateAbiAndMkspec();
m_forcedTargetIds = ids;
}
void QtVersion::setForcedQtAbis(const QList<ProjectExplorer::Abi> &abis)
{
updateAbiAndMkspec();
m_forcedAbis = abis;
}
// if none, then it's INVALID everywhere this function is called
void QtVersion::updateAbiAndMkspec() const
{
......
......@@ -118,6 +118,9 @@ public:
QList<ProjectExplorer::Abi> qtAbis() const;
void setForcedTargetIds(const QSet<QString> &ids);
void setForcedQtAbis(const QList<ProjectExplorer::Abi> &abis);
/// @returns the name of the mkspec, which is generally not enough
/// to pass to qmake.
QString mkspec() const;
......@@ -221,6 +224,7 @@ private:
mutable QString m_mkspec; // updated lazily
mutable QString m_mkspecFullPath;
mutable QList<ProjectExplorer::Abi> m_abis;
mutable QList<ProjectExplorer::Abi> m_forcedAbis;
mutable bool m_versionInfoUpToDate;
mutable QHash<QString,QString> m_versionInfo; // updated lazily
......@@ -238,6 +242,7 @@ private:
mutable QString m_linguistCommand;
mutable QString m_qmlviewerCommand;
mutable QSet<QString> m_targetIds;
mutable QSet<QString> m_forcedTargetIds;
mutable bool m_isBuildUsingSbsV2;
mutable bool m_qmakeIsExecutable;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment